cfg/portage/make.conf

75 lines
2.0 KiB
Plaintext

# Portage - make.conf
# Copyright 2022-2023 Inference
# SPDX-License-Identifier: BSD-3-Clause-Clear
# Version: 2.1.0.8
# System
## CHOST
CHOST="x86_64-gentoo-linux-musl"
## Directories
PORTDIR="/var/db/repos/gentoo/"
DISTDIR="/var/cache/distfile/"
PKGDIR="/var/cache/bin/"
## Language
LC_MESSAGES=C
## Gentoo mirrors
## ONLY IPV4 + IPV6 DUAL-STACK MIRRORS SHOULD BE USED! IPV4 IS BEING PHASED OUT!
## IF IPV6-ONLY IS SUPPORTED BY ISP, IPV6-ONLY MIRRORS SHOULD BE PREFERRED!
GENTOO_MIRRORS="rsync://mirror.bytemark.co.uk/gentoo/ rsync://rsync.mirrorservice.org/sites/distfiles.gentoo.org/ rsync://mirror.init7.net/gentoo/ rsync://ftp.iij.ad.jp/pub/linux/gentoo/ rsync://ftp.jaist.ac.jp/pub/Linux/gentoo/"
## Emerge
EMERGE_DEFAULT_OPTS="--ask --load-average 5 --verbose"
FEATURES="buildpkg"
MAKEOPTS="--jobs 4"
# Toolchain
AR="llvm-ar"
CC="clang"
CPP="clang-cpp"
CXX="clang++"
LD="ld.lld"
NM="llvm-nm"
OBJCOPY="llvm-objcopy"
OBJDUMP="llvm-objdump"
RANLIB="llvm-ranlib"
READELF="llvm-readelf"
STRINGS="llvm-strings"
STRIP="llvm-strip"
# Flags
## Hardening flags
C_SEC="-D_FORTIFY_SOURCE=2 -fPIC -fPIE -fstack-clash-protection -fstack-protector-all -ftrivial-auto-var-init=pattern -fwrapv"
LD_SEC="-Wl,-z,defs -Wl,-z,now -Wl,-pie -Wl,-z,relro -Wl,--strip-all"
## Compiler flags
CFLAGS="-march=znver3 -O2 -pipe -flto=thin -U__gnu_linux__ ${C_SEC}"
CXXFLAGS="-march=znver3 -O2 -pipe -flto=thin ${C_SEC}"
RUSTFLAGS="-Ctarget-cpu=znver3 -Copt-level=2 -Clto -Cembed-bitcode=y -Cdebuginfo=0"
## Linker flags
LDFLAGS="-fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -Wl,--thinlto-jobs=4 ${LD_SEC}"
## USE flags
USE="clang dbus libcxx libedit llvm-libunwind lto nftables pulseaudio system-av1 system-harfbuzz system-icu system-jpeg system-libvpx system-llvm system-png system-webp verify-sig wayland"
USE="${USE} -ipv6 -jit -systemd -X"
## CPU flags
CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3"
## Video card flags
VIDEO_CARDS="amdgpu radeonsi"
## ABI flags
ABI_X86="64"
## LLVM target flags
LLVM_TARGETS="X86"