# CPU flags # # mmx, mmxext: # sse, sse2, sse3, ssse3, sse4_1, sse4_2: Streaming SIMD Extensions # popcnt: count number of bits set to 1 (useful in encryption) CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3 sse4_1 sse4_2 popcnt" # LTO flags # # Source: https://wiki.gentoo.org/wiki/LTO#Enabling_LTO_System-wide WARNING_FLAGS="-Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" LTO_FLAGS="-flto ${WARNING_FLAGS}" USE="${USE} lto" # Common compilation flags # # -pipe: use pipes instead of temporary files to pass .s files to the assembler, # avoiding unnecessary I/O # -O2: O2 optimizations are safe enough in the majority of times COMMON_FLAGS="-march=x86-64-v3 -O2 -pipe ${LTO_FLAGS}" RUSTFLAGS="-C target-cpu=x86-64" CFLAGS="${COMMON_FLAGS}" CXXFLAGS="${COMMON_FLAGS}" FCFLAGS="${COMMON_FLAGS}" FFLAGS="${COMMON_FLAGS}" # Distro # # Enable: distribution kernel, prebuilt binaries USE="${USE} dist-kernel bindist" # Security # # Enable: process capabilities, file capabilities, access control lists # Disable: suid, single-use key USE="${USE} caps filecaps acl -suid -skey" # Desktop # # Enable: screencast support, fontconfig USE="${USE} screencast fontconfig" # Xorg # # Disable: X and its extensions # NOTES: enable them per-package USE="${USE} -X -xcomposite -xinerama -xscreensaver -xv" # GTK & QT # # Enable: introspection and gstreamer for GTK, qml for QT # Disable: gtk documentation and gtk2, gtk3, qt5, qt6 toolkits # NOTES: enable them per-package USE="${USE} introspection gstreamer -gtk2 -gtk3 -gtk-doc" USE="${USE} qml -qt5 -qt6" # GNOME & KDE # # Disable: disable gnome and kde services/features which are not strictly necessary to run a standalone desktop USE="${USE} -gnome -eds -gnome-online-accounts -sysprof" USE="${USE} -kde -plasma -kwallet -kaccounts" # Audio # # Enable: jack, pipewire USE="${USE} jack pipewire" # Graphics # # Enable: vaapi, vulkan USE="${USE} vaapi vulkan" # Misc # # Enable: fftw library for calculating fast fourier transformations USE="${USE} fftw" # Video cards # # Enable: framebuffer device (basic), amd related video card support VIDEO_CARDS="fbdev amdgpu radeon radeonsi zink" # Input devices # # Enable: evdev, libinput (manages most common inputs such as mouse, keyboard, touchpad etc) INPUT_DEVICES="evdev libinput" # Localization # # Enable: english, greek L10N="en en_GB el" # Licensing # # Enable: nothing except free and binary redistributables ACCEPT_LICENSE="-* @FREE @BINARY-REDISTRIBUTABLE"