-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmake.conf
87 lines (76 loc) · 3.94 KB
/
make.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# This file is used by Portage to customise your packages.
# Check the manual page for make.conf or the gentoo wiki for more flags.
# These flags are used by your PC's C, C++, and Fortran compilers.
# In this file, all these compilers will use the same flags.
# --march=native will compile all packages for your PC's architecture,
# ensuring nothing is ever cross-compiled.
# -O2 means our compiler will try and optimise code during compilation.
# It's not recommended to go to -O3 for all packages, so we'll go
# with the -O2.
# -pipe dictates how different stages of compilation communicate.
# -pipe means use pipes instead of temporary files.
COMMON_FLAGS="-march=native -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"
# Defines additional software licenses for us to use.
# I am trying to use more FOSS software, so I only want to packages that Gentoo considers free software.
# The '-*' means 'only use the following licenses'
# Even if this causes problems, I can add exceptions for problematic packages.
ACCEPT_LICENSE="-* @FREE"
# Recent packages are on 'testing' branches. This variable sets the testing branch we'll use for packages.
ACCEPT_KEYWORDS="~amd64"
# Changes Portage's default behaviour
# * fail-clean: Clean temporary directories after a build failure
FEATURES="fail-clean"
# Stores where ebuild logs are kept.
PORTAGE_LOGDIR="/var/log/ebuild-logs"
# MAKEOPTS determines how many parallel compilations should occur when
# installing a package. It's usually not worth making this higher than the
# number of available CPUs.
# For example, I am using an AMD 7950X, which has 16 cores and 2 threads per core, for a toral of 32 available processes.
# -j is the number of processes to run in parallel.
# -l is the maximum allowed load average, which should be about j*0.9
MAKEOPTS="-j32 -l28.8"
# Similar story with this one
EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --jobs=32 --load-average=28.8"
# This is used to tell Portage what graphics card you are using (if any).
# Your choices are:
# * 'amdgpu radeonsi' for newer open-source amd drivers
# * 'intel' for intel graphics drivers
# * 'nouveau' for the open-source nvidia drivers
# * 'nvidia' for the proprietary nvidia drivers
# * 'radeon radeonsi' for older open-source amd drivers
VIDEO_CARDS="amdgpu radeonsi"
# This is used to tell Portage what we use to control our PC.
# libinput is for mice and keyboards.
INPUT_DEVICES="libinput"
# Tells the system which version of GRUB to install.
GRUB_PLATFORMS="efi-64"
# Sets the language of the build output to English
LC_MESSAGES=C
# Portage uses the USE variable to determine the default way to build
# a package. You can add/remove flags using the USE variable in this file.
# NOTE: This does not overwrite the value of USE that Portage uses, it only
# appends to it! It also applies to ALL packages you build, so only
# put a flag here if you want it to apply system-wide!
# alsa: Add support for the advanced linux sound architecture.
# elogind: Build packages that normally require logind from systemd.
# examples: Download code examples where applicable.
# ffmpeg: Enable certain kinds of audio/video codec support.
# ipv6 : Add support for ipv6.
# multilib: Allow compilation of 32-bit binaries.
# opengl: Add support for openGL graphics.
# pulseaudio: Add support for PulseAudio.
# xinerama: Add support for querying multi-monitor screen geometry.
# udev: Enable virtual/udev integration.
# vulkan: Build in Vulkan driver support.
# wayland: Add support for Wayland.
# X: Add support for X11.
# -emacs: Don't add support for emacs.
# -gnome: Don't add GNOME support.
# -kde: Don't use KDE software.
# -systemd: Don't use systemd-specific libraries.
# -wifi: Don't enable wifi functionality.
USE="alsa elogind examples ffmpeg ipv6 multilib opengl pulseaudio udev vulkan xinerama wayland X -emacs -gnome -kde -systemd -wifi"