~ A Clang-optimized Portage overlay ~
42 (2024-05-09 20:12 CEST)
Counted by:
ls -Fd */* | grep '/$' | grep -Ev '^(profiles|metadata)' | wc -l
Taken from a very cool overlay
This is a personal portage overlay, which was initially created with a goal in mind of adding patches to C/C++ programs which can't compile on Clang either with default CFLAGS, or with my more extreme ones (per features/stylize
).
Due to certain... reasons... IRL, after August of 2023 I haven't had any motivation to do anything, including modifying anything here. My motivation has been coming back as of writing, but I've shifted the goal. I don't think I could maintain what I had in mind by myself, and most things seem to build with my settings, or without using LTO.
Now this repo is primarily for packages related to gnome, such as video-trimmer or secrets, and Source Engine/SRCDS related tools. The rest is programs I haven't seen packaged in any other repo, that I use.
[!NOTE] I want to keep this repo relatively minimal for ease of maintenance. Before remaking this README, there were 72 ebuilds in total.
To enable this overlay, use eselect-repository.
eselect repository enable xira
emaint sync -r xira
Every ebuild I wrote here is licensed under the ISC License. Ebuilds I have copied from e.g. the main repository preserve their original GPLv2 header and authors.
[!IMPORTANT] I am not a legal expert. As far as I understand ISC is GPLv2 compatible, but if there are any issues, please make an issue or message me here.
llvm-desktop
profiles here. I personally use llvm-systemd-desktop-gnome on my systems.-march=x86-64-v3
, as of 2024-04-08.[!NOTE] Everything in this repository should compile using either LLVM/Clang or GCC.\ I only test using portage settings from
features/stylize
, i.e. ThinLTO, x86-64-v3, LLVM toolchain.\[!WARNING] The LLVM profiles from here use the main Gentoo ones as
parent
, but contain extra changes, throughfeatures/stylize
. Most notably, they set-flto=thin
and-fsplit-lto-unit
in C(XX)FLAGS.Due to
-fsplit-lto-unit
, ALL installed Qt dev-qt packages need to be rebuilt, if they don't use it. If you have any suggestions or think something's wrong with it, please make an issue or PR.
A directory structure and explanations are listed below.
xira
├── [ebuild categories]
├── metadata
├── profiles
│ ├── features
│ │ └── stylize
│ ├── llvm-desktop
│ ├── llvm-desktop-gnome
│ ├── llvm-systemd-desktop
│ └── llvm-systemd-desktop-gnome
└── metadata/sets
├── llvm-complete
├── mail-prequisites
└── openwrt-prequisites