Global USE flags

Flag Description Packages
debug Enables GCC's 'checking' (assertions) facility. For released GCCs: * USE=debug sets --enable-checking=yes,extra,rtl * USE=-debug sets --enable-checking=release For unreleased GCCs: * USE=debug sets --enable-checking=yes,extra,rtl * USE=-debug sets --enable-checking=yes,extra This adds checks to various compiler passes for integrity and input validation. This can help catch possible miscompilations early as well as latent bugs which could become real problems in future, but at the cost of slower compile times when using GCC. Unrelated to backtraces. 3
lto Build using Link Time Optimizations (LTO). Note that GCC is always built with support for building other programs with LTO. This USE flag is for whether GCC itself is built and optimized with LTO. 2
pgo Build binutils with Profile Guided Optimization (PGO) and LTO 3
plugins Enable plugin support in tools 2
static-libs 2
systemd Install systemd service units for managing the Waydroid container 2

Category USE flags

cross-x86_64-unknown-linux-musl

Flag Description Packages
cet Enable Intel Control-flow Enforcement Technology. 3
debuginfod Enable debuginfod support via <pkg>dev-libs/elfutils</pkg> libdebuginfod 2
multitarget Adds support to binutils for cross compiling (does not work with gas) 2
nls 2
test 2
vanilla 2
xxhash Use <pkg>dev-libs/xxhash</pkg> for --build-id=xx support 2
zstd 2

net-misc

Flag Description Packages
nxnode 2
nxplayer 2
nxrunner 2
nxserver 2

www-client

Flag Description Packages
selinux 2

Local USE flags

app-containers

waydroid

Flag Description
${PYTHON_REQUIRED_USE}
apparmor Enable AppArmor security profiles for the LXC container
clipboard Enable clipboard sharing between Android and Linux host (requires dev-python/pyclip with Wayland support)
nftables Use nftables for container networking (recommended). Disable to use legacy iptables instead.
openrc Install OpenRC init script for managing the Waydroid container

app-forensics

libewf

Flag Description
bfio
ewf
fuse
ssl
unicode
uuid
zlib

app-misc

alienfx

Flag Description
gtk Install the GTK-based graphical user interface (alienfx-gtk) in addition to the command-line interface

cross-x86_64-unknown-linux-musl

binutils

Flag Description
default-gold Set ld to point to ld.gold instead of ld.bfd
doc
gold Build ld.gold linker
gprofng Enable the next-generation gprofng profiler
hardened

gcc

Flag Description
ada Build the Ada language (GNAT) frontend
algol68 Build the Algol 68 frontend
cobol Enable support for the COBOL programming language
d Enable support for the D programming language
default-stack-clash-protection Build packages with stack clash protection on by default as a hardening measure. This enables -fstack-clash-protection by default which protects against large memory allocations allowing stack smashing. May cause slightly increased codesize, but modern compilers have been adapted to optimize well for this case, as this mitigation is now quite common. See https://developers.redhat.com/blog/2020/05/22/stack-clash-mitigation-in-gcc-part-3 and https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt.
default-znow Request full relocation on start from ld.so by default. This sets the -z,now (BIND_NOW) flag by default on all linker invocations. By resolving all dynamic symbols at application startup, parts of the program can be made read-only as a hardening measure. This is closely related to RELRO which is also separately enabled by default. In some applications with many unresolved symbols (heavily plugin based, for example), startup time may be impacted.
fixed-point Enable fixed-point arithmetic support for MIPS targets in gcc (Warning: significantly increases compile time!)
go Build the GCC Go language frontend.
graphite Add support for the framework for loop optimizations based on a polyhedral intermediate representation
ieee-long-double Use accelerated 128-bit IEEE long double ABI (ppc64le only)
jit Enable libgccjit so other applications can embed gcc for Just-In-Time compilation.
libgdiagnostics Provide libgdiagnostics (https://gcc.gnu.org/wiki/libgdiagnostics). This also installs the 'sarif-replay' tool.
libssp Build SSP support into a dedicated library rather than use the code in the C library (DO NOT ENABLE THIS IF YOU DON'T KNOW WHAT IT DOES)
modula2 Build the GCC Modula-2 language frontend.
objc Build support for the Objective C code language
objc++ Build support for the Objective C++ language
objc-gc Build support for the Objective C code language Garbage Collector
rust Build support for the Rust language, installs gccrs.
sanitize Build support for various sanitizer functions (ASAN/TSAN/etc...) to find runtime problems in applications.
ssp Build packages with stack smashing protection on by default
systemtap Enable enhanced debugging hooks/interface via SystemTap static probe points in libgcc and libstdc++. Note that this isn't exclusive to SystemTap, despite the name. This provides an interface which <pkg>dev-debug/gdb</pkg> optionally uses, see https://sourceware.org/gdb/wiki/LinkerInterface and https://sourceware.org/gdb/wiki/DistroAdvice#sys.2Fsdt.h_probes.
vtv Build support for virtual table verification (a C++ hardening feature). This does not control whether GCC defaults to using VTV> Note that actually using VTV breaks ABI and hence the whole system must be built with -fvtable-verify.

gdb

Flag Description
babeltrace Enable <pkg>dev-util/babeltrace</pkg> support
guile
lzma Support lzma compression in ELF debug info
python Enable support for the new internal scripting language, as well as extended pretty printers
rocm Enable support for AMD GPU debugging via <pkg>dev-libs/rocdbgapi</pkg>
server Install the "gdbserver" program (useful for embedded/remote targets)
sim Build gdb's simulators for various hardware platforms. See https://sourceware.org/gdb/wiki/Sim.
source-highlight Enable listing highlighting via <pkg>dev-util/source-highlight</pkg>
xml Support parsing XML data files needed (at least) for cpu features, memory maps, and syscall tracing

musl

Flag Description
crypt
headers-only
split-usr

sys-kernel

dkms

Flag Description
kernel-hooks

www-client

brave-bin

Flag Description
keyring Enable support for storing passwords in the system keyring (GNOME Keyring, KWallet, etc.) via app-crypt/libsecret

brave-browser

Flag Description
clang
component-build Enables component build mode, where each component is built as a shared library. This speeds up development builds but should not be used for production.
cpu_flags_arm_neon
cups Enable CUPS printing support
hangouts Enable support for Google Hangouts extension
js-optimize Optimize JavaScript and WebUI resources
kerberos Enable Kerberos authentication support
libcxx Use bundled libc++ instead of system libstdc++
official Build an official release (enables optimizations and branding)
pax-kernel Apply PaX kernel compatibility patches
proprietary-codecs Enable proprietary codecs like H.264, AAC, MP3
pulseaudio Enable PulseAudio support for audio
rewards Enable Brave Rewards, the Basic Attention Token (BAT) rewards system. Allows users to earn and tip BAT tokens for viewing privacy-respecting ads.
screencast Enable screen sharing via PipeWire
system-toolchain Use system toolchain instead of Clang/LLVM
tor Enable Tor integration for private browsing with Tor. Allows opening private windows with Tor for enhanced anonymity.
vaapi Enable VA-API hardware video acceleration
vpn Enable Brave VPN/Firewall support. Provides built-in VPN functionality (requires subscription).
wallet Enable Brave Wallet, a browser-native cryptocurrency wallet. Supports Ethereum, Solana, and other blockchain networks without extensions.
widevine Enable Widevine CDM for DRM content (Netflix, etc.)