Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:gentoo-spezifisch:make.conf

Dies ist eine alte Version des Dokuments!


make.conf

1. Einleitung

FIXME

2. USE-Flags

FIXME

3. CFLAGS

Wirklich sichere und empfohlene (nach Gentoo-Wiki) CFLAGS sind:

CFLAGS="-O2 -march=native -pipe"


Um das graphite-Framework zu nutzen muss zusätzlich USE="graphite" für den GCC-Compiler gesetzt sein:

CFLAGS="-floop-interchange -floop-strip-mine -floop-block"

Auf meinem ~amd64 mit GCC-4.6 kompiliert und läuft das graphite-Framework stabil, ohne Wertung der Leistung.


Für lto muss USE="lto" gesetzt sein (siehe auch LDFLAGS):

CFLAGS="-flto"


Abschließend CFLAGS auch als CXXFLAGS setzen:

CXXFLAGS="${CFLAGS}"

4. LDFLAGS

Laut Gentoo-Wiki ist es nicht nötig bzw. vollständig sichere LDFLAGS zu setzen. Sinnvolle LDFLAGS sind bereits in den entsprechenden Profilen gesetzt. Ich setze ohne feststellbare Probleme / Nachteile:

LDFLAGS="${LDFLAGS} -Wl,-z,now -Wl,--hash-style=gnu -Wl,--enable-new-dtags"

LTO ist mit GCC-4.5 experimentell und zumindest im 3Q-2010 nicht zu gebrauchen, "-fwhole-program" macht vielen Leuten im Forum zusätzlich Probleme. Bei der Nutzung von LTO muss unbestätigten Quellen nach mit sehr großen Binärdateien gerechnet werden, die oft sämtliche Vorteile (über-)kompensieren. Wahrscheinlich ist LTO daher nur selektiv für einzelne Programme sinnvoll.

LDFLAGS="${LDFLAGS} -flto -fwhole-program"

FIXME für lto benötigte CFLAGS?

5. Anhang

Meine make.conf

make.conf
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
###################################################################
## CFLAGS ########################################################
###################################################################
# really safe:
#CFLAGS="-O2 -march=native -pipe"

# AFAIK the short-and-sweet versions:
#add to USE "graphite", add to CFLAGS "-floop-interchange -floop-strip-mine -floop-block"

CFLAGS="-O2 -march=native -pipe
-floop-interchange -floop-strip-mine -floop-block
-ftree-vectorize -ftree-loop-linear"

CXXFLAGS="${CFLAGS}"

###################################################################
## LDFLAGS ########################################################
###################################################################
LDFLAGS="${LDFLAGS} -Wl,-z,now -Wl,--hash-style=gnu -Wl,--enable-new-dtags"
###################################################################
CHOST="x86_64-pc-linux-gnu"

# These are the USE flags that were used in addition to what is provided by the
# profile used for building.
USE="64bit X a52 ace acpi additions alsa bash-completion blksha1 cleartype \
     clutter consolekit corefonts css dbus device-mapper drm dvd exif \
     fastbuild fastcgi fat ffmpeg fuse gallium gd gdu gnome gphoto2 graphite \
     gstreamer gtk gtk3 id3tag introspection jpeg jpeg2k lame laptop libffi \
     libnotify lto matroska mdns-bundled mmx mp3 mpeg mpeg2 nautilus \
     networkmanager nntp nsplugin ntfs opengl optimized-qmake pdf pidgin png \
     policykit pulseaudio quicktime rar real scsi slideshow smp sse sse2 \
     sse3 svg symlink system-cxx-headers system-sqlite theora threads \
     truetype twolame type3 udev usb vcd video wicd wma wmf x264 xv xvid \
     -3dnow -3dnowext -abiword -accessibility -aim -avahi -bluetooth -bonobo \
     -debug -doc -eds -gecko-mediaplayer -gnome-keyring -guile -ieee1394 \
     -ipod -ipv6 -joystick -kde -lcms -lirc -mercurial -msn -oss -pm-utils \
     -qt-bundled -qt3support -qt4 -reiser4 -reiserfs -samba -tcl -totem -v4l \
     -v4l2 -webdav -webdav-neon -webdav-serf -webkit -xfs -xinerama"

###################################################################
MAKEOPTS="-j5"
EMERGE_DEFAULT_OPTS="--keep-going --jobs=5"

#GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo "
GENTOO_MIRRORS="ftp://de-mirror.org/distro/gentoo "
#GENTOO_MIRRORS="http://distfiles.gentoo.org "

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

PORTAGE_NICENESS=15

#FEATURES="parallel-fetch fail-clean"
FEATURES="sandbox parallel-fetch fail-clean buildpkg"
DISTDIR="/Daten/.distfiles"
#PORTAGE_TMPDIR="/Daten/.tmp"
PKGDIR="/Daten/.packages"

## Meine eigenen ebuilds
PORTDIR_OVERLAY="/Daten/.ebuilds/"
## Layman, muss hinter PORTDIR_OVERLAY stehen!
source /var/lib/layman/make.conf

INPUT_DEVICES="evdev synaptics"

# fglrx
VIDEO_CARDS="radeon r600 r800 evergreen"
ALSA_CARDS="hda-intel"

LINGUAS="de"

ACCEPT_KEYWORDS="~amd64"

ACCEPT_LICENSE="PUEL dlj-1.1 googleearth AdobeFlash-10.1"

I_PROMISE_TO_SUPPLY_PATCHES_WITH_BUGS=1

CLOCK="local"
linux/gentoo-spezifisch/make.conf.1313695040.txt.gz · Zuletzt geändert: 09.07.2013 21:32 (Externe Bearbeitung)