LDFLAGS in /etc/makepkg.conf

Will adding
export LDFLAGS="-Wl,-O1 -Wl,--sort-common -s
to /etc/makepkg.conf, enable compilation with those flags when makepkg is executed?

nightfrost wrote:
Will adding
export LDFLAGS="-Wl,-O1 -Wl,--sort-common -s
to /etc/makepkg.conf, enable compilation with those flags when makepkg is executed?
not all the time... it will in most though...
however, some Makefiles don't pickup external CFLAGS/LDFLAGS, so you will see some sed usage to insert the CFLAGS... you'd have to do the same for LDFLAGS there too...
I'd also add the --as-needed flag to those if you're recompiling something like KDE/gnome

Similar Messages

  • Override CFLAGS and CXFLAGS from /etc/makepkg.conf [solved]

    This might be a stupid question, but here goes: if I redefine variables such as CFLAGS and CXXFLAGS from within a PKGBUILD, any subsequent make would use the new ones rather than the ones defined in /etc/makepkg.conf ...right?  I'm assuming that makepkg reads them once when the user invokes it.
    Thanks.
    Last edited by graysky (2011-01-15 11:58:58)

    Thanks.  I looked at /usr/bin/makepkg and I believe this is the case, but I don't know of a way to check after I compile them.  Is there some place I can look within the final NAME.tar.xz to see which CFLAGS were used?  (Again, I think the answer here is "no").

  • USE_COLOR In /etc/makepkg.conf

    OK, I'll bite. What file provides the controlling ANSI color sequences to the output once someone has set USE_COLOR to (y) in /etc/makepkg.conf and runs makepkg? I've looked around a bit in the /etc directory for logical suspects but can't find anything that makes sense.
    jlowell

    Just so anyone can know the answer to the question I raised here about USE_COLOR in makepkg, the governing file for the ANSI sequences is /usr/bin/makepkg.
    jlowell

  • Can I set CFLAGS="-march=broadwell" optimizations in /etc/makepkg.conf

    Hi
    does the Arch Build System allow the new compiler optimizations
    -march=broadwell
    to be set as CFLAGS and CXXFLAGS in /etc/makepkg.conf?
    I recently installed Arch on a machine having this processor (an Intel Broadwell NUC) and I was wondering if I should change CFLAGS from the generic "x86-64" to the more specific broadwell setting. As far as I understood gcc > 4.9 does support this.
    What else needs to be adjusted in Arch in order to use this optimizations?
    Thanks
    gen2arch

    Thanks everyone for your input!
    graysky: actually the linux kernel is exactly the package in view of which I was looking into the Arch Build System; having come over from gentoo, I thought it would be a good idea to streamline the generic arch kernel and, in the process, apply processor specific optimizations. So your point that precisely the kernel doesn't honor these settings is indeed very helpful!
    Against which sources do I have to apply your patch: actually, where can I download the source package of Arch linux' own kernel build?
    Thanks again
    gen2arch

  • [SOLVED] (...) which CFLAGS to choose for /etc/makepkg.conf

    Hello all. I read about certain CFLAGS you can set in /etc/makepkf.conf, so I checked out if there was anything i could do to make the packages built on my system more optimized. However, as the title states, I'm not sure what to set. The sticker on my Thinkpad T61 says "Intel® Centrino® vPro™ inside™"
    Which CPU type from the Intel list on that page applies to me? Thanks
    Last edited by robrene (2009-09-14 10:37:45)

    This Gentoo wiki page looks legit. You may want to do a bit of background research before you dig into compile flags, as there's quite a lot that gcc can break when you tell it to crunch down your programs. Also, gcc's man page is pretty exhaustive; but if you're just looking for your -march flag, it's pentium-m.
    Big 'AFAIK' here, but ignore the 'pro,' as Intel tends to arbitrarily tack that on products to up the price tag a smidgeon.

  • In /etc/makepkg.conf, what is SRCEXT

    I understand PKGEXT can change the type of compression used on the final generated package from the aur/makepkg, but what does SRCEXT do? When would you ever make a source package rather than a compiled package?
    Last edited by boogerlad (2015-02-21 04:00:23)

    You make a source package to submit to the AUR.

  • Problems with Yaourt and makepkg.conf

    Hi all,
    So, I've recently switched all the way over to Arch Linux after playing around with it for some time.  And it's been great!  I am very glad I did it. 
    I've been using yaourt to install all of my humble indie bundle games, and it's been going well until I tried to install mark of the ninja. 
    Every time I try to install ANYTHING on yaourt now, I get these types of error messages:
    [nicholas@nicholas ~]$ yaourt -s markoftheninja-hib
    1 aur/markoftheninja-hib 1.38+h20131002-1 (4)
        Mark of the Ninja, a side-scrolling stealth game (Humble Bundle version)
    ==> Enter n° of packages to be installed (ex: 1 2 3 or 1-3)
    ==> -------------------------------------------------------
    ==> 1
    /etc/makepkg.conf: line 89: for: command not found
    ==> Downloading markoftheninja-hib PKGBUILD from AUR...
    x markoftheninja-hib.desktop
    x PKGBUILD
    markoftheninja-hib 1.38+h20131002-1  (Wed Sep 11 20:25:29 EDT 2013)
    ( Unsupported package: Potentially dangerous ! )
    ==> Edit PKGBUILD ? [Y/n] ("A" to abort)
    ==> ------------------------------------
    ==> n
    /etc/makepkg.conf: line 89: for: command not found
    ==> WARNING: Running makepkg as an unprivileged user will result in non-root
    ownership of the packaged files. Try using the fakeroot environment by
    placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
    ==> markoftheninja-hib dependencies:
    - sdl (already installed)
    - libgl (already installed)
    - gcc-libs (already installed)
    - xdg-utils (already installed)
    ==> Continue building markoftheninja-hib ? [Y/n]
    ==> --------------------------------------------
    ==>
    ==> Building and installing package
    /etc/makepkg.conf: line 89: for: command not found
    ==> WARNING: Running makepkg as an unprivileged user will result in non-root
    ownership of the packaged files. Try using the fakeroot environment by
    placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
    ==> ERROR: markoftheninja-hib is not available for the '' architecture.
        Note that many packages may need a line added to their PKGBUILD
        such as arch=('').
    ==> ERROR: Makepkg was unable to build markoftheninja-hib.
    ==> Restart building markoftheninja-hib ? [y/N]
    ==> -------------------------------------------
    ==>
    [nicholas@nicholas ~]$ sudo gedit /etc/makepkg.conf
    So, I already have fakeroot properly activated IN makepkg.conf.  This is my makepkg.conf setup:
    # /etc/makepkg.conf
    # SOURCE ACQUISITION
    #-- The download utilities that makepkg should use to acquire sources
    #  Format: 'protocol::agent'
    DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
              'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
              'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
              'rsync::/usr/bin/rsync --no-motd -z %u %o'
              'scp::/usr/bin/scp -C %u %o'
              'hib::/usr/bin/find /home/nicholas/Downloads -name $(echo %u | cut -c 7-) -exec ln -s \{\} %o \; -quit')'
    # Other common tools:
    # /usr/bin/snarf
    # /usr/bin/lftpget -c
    # /usr/bin/wget
    # ARCHITECTURE, COMPILE FLAGS
    CARCH="x86_64"
    CHOST="x86_64-unknown-linux-gnu"
    #-- Compiler and Linker Flags
    # -march (or -mcpu) builds exclusively for an architecture
    # -mtune optimizes for an architecture, but builds for whole processor family
    CPPFLAGS="-D_FORTIFY_SOURCE=2"
    CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
    CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
    LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
    #-- Make Flags: change this for DistCC/SMP systems
    #MAKEFLAGS="-j2"
    #-- Debugging flags
    DEBUG_CFLAGS="-g -fvar-tracking-assignments"
    DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
    # BUILD ENVIRONMENT
    # Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign)
    #  A negated environment option will do the opposite of the comments below.
    #-- fakeroot: Allow building packages as a non-root user
    #-- distcc:   Use the Distributed C/C++/ObjC compiler
    #-- color:    Colorize output messages
    #-- ccache:   Use ccache to cache compilation
    #-- check:    Run the check() function if present in the PKGBUILD
    #-- sign:     Generate PGP signature file
    BUILDENV=(fakeroot !distcc color !ccache check !sign)
    #-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
    #-- specify a space-delimited list of hosts running in the DistCC cluster.
    #DISTCC_HOSTS=""
    #-- Specify a directory for package building.
    #BUILDDIR=/tmp/makepkg
    # GLOBAL PACKAGE OPTIONS
    #   These are default values for the options=() settings
    # Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    #  A negated option will do the opposite of the comments below.
    #-- strip:      Strip symbols from binaries/libraries
    #-- docs:       Save doc directories specified by DOC_DIRS
    #-- libtool:    Leave libtool (.la) files in packages
    #-- staticlibs: Leave static library (.a) files in packages
    #-- emptydirs:  Leave empty directories in packages
    #-- zipman:     Compress manual (man and info) pages in MAN_DIRS with gzip
    #-- purge:      Remove files specified by PURGE_TARGETS
    #-- upx:        Compress binary executable files using UPX
    #-- debug:      Add debugging flags as specified in DEBUG_* variables
    OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
    INTEGRITY_CHECK=(md5)
    #-- Options to be used when stripping binaries. See `man strip' for details.
    STRIP_BINARIES="--strip-all"
    #-- Options to be used when stripping shared libraries. See `man strip' for details.
    STRIP_SHARED="--strip-unneeded"
    #-- Options to be used when stripping static libraries. See `man strip' for details.
    STRIP_STATIC="--strip-debug"
    #-- Manual (man and info) directories to compress (if zipman is specified)
    MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
    #-- Doc directories to remove (if !docs is specified)
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
    #-- Files to be removed from all packages (if purge is specified)
    PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
    # PACKAGE OUTPUT
    # Default: put built package and cached source in build directory
    #-- Destination: specify a fixed directory where all packages will be placed
    #PKGDEST=/home/packages
    #-- Source cache: specify a fixed directory where source files will be cached
    #SRCDEST=/home/sources
    #-- Source packages: specify a fixed directory where all src packages will be placed
    #SRCPKGDEST=/home/srcpackages
    #-- Log files: specify a fixed directory where all log files will be placed
    #LOGDEST=/home/makepkglogs
    #-- Packager: name/email of the person or organization building packages
    #PACKAGER="John Doe <[email protected]>"
    #-- Specify a key to use for package signing
    #GPGKEY=""
    # COMPRESSION DEFAULTS
    COMPRESSGZ=(gzip -c -f -n)
    COMPRESSBZ2=(bzip2 -c -f)
    COMPRESSXZ=(xz -c -z -)
    COMPRESSLRZ=(lrzip -q)
    COMPRESSLZO=(lzop -q)
    COMPRESSZ=(compress -c -f)
    # EXTENSION DEFAULTS
    # WARNING: Do NOT modify these variables unless you know what you are
    #          doing.
    PKGEXT='.pkg.tar.xz'
    SRCEXT='.src.tar.gz'
    # vim: set ft=sh ts=2 sw=2 et:
    Here is line 89, which is the one that yaourt flags:
    - Options to be used when stripping binaries. See `man strip' for 
    It's almost as if it is treating "for" as a command.  This is very strange. 
    Also, I do have the architecture specified in the makepkg.  It doesn't matter which package I try to install: it does the same thing. 
    Does anyone have any ideas?  I'd really appreciate your help.
    Thank you.
    Sincerely,
    Corey Goettsch

    Karol,
    Thank you for the suggestion.  Here are the code outputs
    [nicholas@nicholas ~]$ yaourt -S markoftheninja-hib
    /etc/makepkg.conf: line 89: for: command not found
    ==> Downloading markoftheninja-hib PKGBUILD from AUR...
    x markoftheninja-hib.desktop
    x PKGBUILD
    markoftheninja-hib 1.38+h20131002-1 (Wed Sep 11 20:25:29 EDT 2013)
    ( Unsupported package: Potentially dangerous ! )
    ==> Edit PKGBUILD ? [Y/n] ("A" to abort)
    ==> ------------------------------------
    ==> n
    /etc/makepkg.conf: line 89: for: command not found
    ==> WARNING: Running makepkg as an unprivileged user will result in non-root
    ownership of the packaged files. Try using the fakeroot environment by
    placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
    ==> markoftheninja-hib dependencies:
    - sdl (already installed)
    - libgl (already installed)
    - gcc-libs (already installed)
    - xdg-utils (already installed)
    ==> Continue building markoftheninja-hib ? [Y/n]
    ==> --------------------------------------------
    ==>
    ==> Building and installing package
    /etc/makepkg.conf: line 89: for: command not found
    ==> WARNING: Running makepkg as an unprivileged user will result in non-root
    ownership of the packaged files. Try using the fakeroot environment by
    placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
    ==> ERROR: markoftheninja-hib is not available for the '' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('').
    ==> ERROR: Makepkg was unable to build markoftheninja-hib.
    ==> Restart building markoftheninja-hib ? [y/N]
    ==> -------------------------------------------
    ==>
    [nicholas@nicholas ~]$ sudo gedit /etc/makepkg.conf
    [sudo] password for nicholas:
    (gedit:2211): Gtk-WARNING **: Theme parsing error: notebook.css:6:13: Theming engine 'unico' not found
    (gedit:2211): Gtk-WARNING **: Theme parsing error: nemo.css:90:13: Theming engine 'unico' not found
    And this is my makepkg.conf:
    # /etc/makepkg.conf
    # SOURCE ACQUISITION
    #-- The download utilities that makepkg should use to acquire sources
    # Format: 'protocol::agent'
    DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
    'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
    'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
    'rsync::/usr/bin/rsync --no-motd -z %u %o'
    'scp::/usr/bin/scp -C %u %o'
    'hib::/usr/bin/find /home/nicholas/Downloads -name $(echo %u | cut -c 7-) -exec ln -s \{\} %o \; -quit')'
    # Other common tools:
    # /usr/bin/snarf
    # /usr/bin/lftpget -c
    # /usr/bin/wget
    # ARCHITECTURE, COMPILE FLAGS
    CARCH="x86_64"
    CHOST="x86_64-unknown-linux-gnu"
    #-- Compiler and Linker Flags
    # -march (or -mcpu) builds exclusively for an architecture
    # -mtune optimizes for an architecture, but builds for whole processor family
    CPPFLAGS="-D_FORTIFY_SOURCE=2"
    CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
    CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
    LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
    #-- Make Flags: change this for DistCC/SMP systems
    #MAKEFLAGS="-j2"
    #-- Debugging flags
    DEBUG_CFLAGS="-g -fvar-tracking-assignments"
    DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
    # BUILD ENVIRONMENT
    # Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign)
    # A negated environment option will do the opposite of the comments below.
    #-- fakeroot: Allow building packages as a non-root user
    #-- distcc: Use the Distributed C/C++/ObjC compiler
    #-- color: Colorize output messages
    #-- ccache: Use ccache to cache compilation
    #-- check: Run the check() function if present in the PKGBUILD
    #-- sign: Generate PGP signature file
    BUILDENV=(fakeroot !distcc color !ccache check !sign)
    #-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
    #-- specify a space-delimited list of hosts running in the DistCC cluster.
    #DISTCC_HOSTS=""
    #-- Specify a directory for package building.
    #BUILDDIR=/tmp/makepkg
    # GLOBAL PACKAGE OPTIONS
    # These are default values for the options=() settings
    # Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    # A negated option will do the opposite of the comments below.
    #-- strip: Strip symbols from binaries/libraries
    #-- docs: Save doc directories specified by DOC_DIRS
    #-- libtool: Leave libtool (.la) files in packages
    #-- staticlibs: Leave static library (.a) files in packages
    #-- emptydirs: Leave empty directories in packages
    #-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
    #-- purge: Remove files specified by PURGE_TARGETS
    #-- upx: Compress binary executable files using UPX
    #-- debug: Add debugging flags as specified in DEBUG_* variables
    OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
    INTEGRITY_CHECK=(md5)
    #-- Options to be used when stripping binaries. See `man strip' for details.
    STRIP_BINARIES="--strip-all"
    #-- Options to be used when stripping shared libraries. See `man strip' for details.
    STRIP_SHARED="--strip-unneeded"
    #-- Options to be used when stripping static libraries. See `man strip' for details.
    STRIP_STATIC="--strip-debug"
    #-- Manual (man and info) directories to compress (if zipman is specified)
    MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
    #-- Doc directories to remove (if !docs is specified)
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
    #-- Files to be removed from all packages (if purge is specified)
    PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
    # PACKAGE OUTPUT
    # Default: put built package and cached source in build directory
    #-- Destination: specify a fixed directory where all packages will be placed
    #PKGDEST=/home/packages
    #-- Source cache: specify a fixed directory where source files will be cached
    #SRCDEST=/home/sources
    #-- Source packages: specify a fixed directory where all src packages will be placed
    #SRCPKGDEST=/home/srcpackages
    #-- Log files: specify a fixed directory where all log files will be placed
    #LOGDEST=/home/makepkglogs
    #-- Packager: name/email of the person or organization building packages
    #PACKAGER="John Doe <[email protected]>"
    #-- Specify a key to use for package signing
    #GPGKEY=""
    # COMPRESSION DEFAULTS
    COMPRESSGZ=(gzip -c -f -n)
    COMPRESSBZ2=(bzip2 -c -f)
    COMPRESSXZ=(xz -c -z -)
    COMPRESSLRZ=(lrzip -q)
    COMPRESSLZO=(lzop -q)
    COMPRESSZ=(compress -c -f)
    # EXTENSION DEFAULTS
    # WARNING: Do NOT modify these variables unless you know what you are
    # doing.
    PKGEXT='.pkg.tar.xz'
    SRCEXT='.src.tar.gz'
    # vim: set ft=sh ts=2 sw=2 et:
    And, last, here is the output from line 89:
    #-- Options to be used when stripping binaries. See `man strip' for details.
    So, the problem is that "for" in line 89 is being treated like a command.  Which is very strange.  Also, I already have fakeroot set up in makepkg.conf.  And, last, I also have the architecture specified in the PKGBUILD.  So, I'm a bit at a loss here.  I would really appreciate any help.

  • Enabling -fstack-protector-strong in makepkg.conf?

    A little more than a year ago Google submitted a patch which added a -fstack-protector-strong option which was intended to strike a balance between -fstack-protector (used in Arch) and -fstack-protector-all which was considered too computationally expensive for google's chromiumos.  All of these options introduce measures to protect compiled programs against stack overflow attacks to varying degrees of security and performance.
    This google doc sums up what the new flag introduces: https://docs.google.com/document/d/1xXB … t?hl=en_US
    My recently installed default /etc/makepkg.conf shows -fstack-protector (not -strong) in CFLAGS.  Is there a specific reason that it has not yet been implemented in Arch, or has it simply just "not happened" yet? 
    Fedora 20 is now using -fstack-protector-strong.  After some searching I couldn't find anything here or on the arch bugtracker which discusses the new option.  I should add that I am by no means well-versed in security and this is something I would like to know more about.
    Last edited by oboenerd (2013-12-08 03:13:19)

    This is something that should be brought up in the bug tracker I think.  Though, interestingly this is not documented in the gcc man page nor the gcc info page.
    Edit: I didn't follow your links, but I do remember reading about this.  It would seem that this functionality has not been merged, as trying to use -fstack-protector-strong fails with:
    gcc: error: unrecognized command line option '-fstack-protector-strong'
    Last edited by WonderWoofy (2013-12-08 03:54:56)

  • Not all PKGBUILDS use makepkg.conf

    When bulding some packages (smplayer-svn, arora-git, qtscriptgenerator-git, qmpdclient - that's what i notticed) makepkg.conf doesn't influence.
    For example for smplayer-svn I have:
    g++ -c -m64 -pipe -march=x86-64 -mtune=generic -O2 -pipe -Wall -W -D_REENTRANT -DDOWNLOAD_SUBS -DDATA_PATH=\"/usr/share/smplayer\" -DDOC_PATH=\"/usr/share/doc/packages/smplayer\" -DTRANSLATION_PATH=\"/usr/share/smplayer/translations\" -DTHEMES_PATH=\"/usr/share/smplayer/themes\" -DSHORTCUTS_PATH=\"/usr/share/smplayer/shortcuts\" -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++-64 -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -Ifindsubtitles -Ivideopreview -Impcgui -Ifindsubtitles/filedownloader -Ifindsubtitles/quazip -I.moc -I.ui -o .obj/prefinterface.o prefinterface.cpp
    while in makepgs.conf:
    me$ cat /etc/makepkg.conf | grep -A 1 CFLAGS
    CFLAGS="-march=amdfam10 -O2 -pipe"
    CXXFLAGS="-march=amdfam10 -O2 -pipe"
    where is the trick? Arch x86_64 with testing repo enabled.
    P.S. maybe I'm wrong but they all use qmake for makefiles generation.
    Last edited by vit (2009-05-19 19:26:45)

    AUR pks mainteners often disables some makeflags to maintain compatibility look for options=('!makeflags') line - "!" sign before makeflags disables user-set makepkg.conf makeflags.

  • I'm missing makepkg.conf

    Well, I accidentally deleted /etc/makepkg.conf, and I don't find a sample anywhere. How do I generate a new one?

    You can also grab https://projects.archlinux.org/svntogit … ges/pacman but I think you have to edit
    CARCH="@CARCH@"
    CHOST="@CHOST@"
    etc. to e.g.
    CARCH="i686"
    CHOST="i686-pc-linux-gnu"
    by hand.

  • Alternate makepkg.conf?

    Is it possible to force makepkg to use an alternative makepkg.conf file, which would have different flags?

    I'm guessing you can override /etc/makepkg.conf with options in ~/.makepkg.conf since both are listed in the manpage:
    /usr/local/etc/makepkg.conf, ~/.makepkg.conf

  • Error after editing makepkg.conf

    As the topic, I have edited my makepkg.conf in order to build via abs according to my cpu. When I try to run makpkg -csi on a pkgbuild i get this error:
    ==> ERROR: openbox is not available for the '' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('').
    (there is nothing wrong with the pkgbuid in question).
    My modified makepkg.conf looks like this:
    # /etc/makepkg.conf
    # SOURCE ACQUISITION
    #-- The download utilities that makepkg should use to acquire sources
    # Format: 'protocol::agent'
    DLAGENTS=('ftp::/usr/bin/wget -c --passive-ftp -t 3 --waitretry=3'
    'http::/usr/bin/wget -c -t 3 --waitretry=3'
    'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate'
    'rsync::/usr/bin/rsync -z'
    'scp::/usr/bin/scp -C')
    # Other common tools:
    # /usr/bin/snarf
    # /usr/bin/lftpget -c
    # /usr/bin/curl
    # ARCHITECTURE, COMPILE FLAGS
    CHOST="x86_64-pc-linux-gnu"
    CFLAGS="-march=athlon64 -O2 -pipe"
    CXXFLAGS="${CFLAGS}"
    MAKEFLAGS="-j3"
    #-- Exclusive: will only run on -march=x86-64
    # -march (or -mcpu) builds exclusively for an architecture
    # -mtune optimizes for an architecture, but builds for whole processor family
    #-- Make Flags: change this for DistCC/SMP systems
    #MAKEFLAGS="-j2"
    # BUILD ENVIRONMENT
    # Defaults: BUILDENV=(fakeroot !distcc color !ccache !xdelta)
    # A negated environment option will do the opposite of the comments below.
    #-- fakeroot: Allow building packages as a non-root user
    #-- distcc: Use the Distributed C/C++/ObjC compiler
    #-- color: Colorize output messages
    #-- ccache: Use ccache to cache compilation
    #-- xdelta: Generate delta patch from previous to current package
    BUILDENV=(fakeroot !distcc color !ccache !xdelta)
    #-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
    #-- specify a space-delimited list of hosts running in the DistCC cluster.
    #DISTCC_HOSTS=""
    # GLOBAL PACKAGE OPTIONS
    # These are default values for the options=() settings
    # Default: OPTIONS=(strip !docs libtool emptydirs)
    # A negated option will do the opposite of the comments below.
    #-- strip: Strip symbols from binaries/libraries
    #-- docs: Save doc and info directories
    #-- libtool: Leave libtool (.la) files in packages
    #-- emptydirs: Leave empty directories in packages
    OPTIONS=(strip !docs libtool emptydirs)
    #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
    INTEGRITY_CHECK=(md5)
    #-- Info and doc directories to remove (if option set correctly above)
    DOC_DIRS=(usr/{,share/}{info,doc,gtk-doc} opt/*/{info,doc,gtk-doc})
    # PACKAGE OUTPUT
    # Default: put built package and cached source in build directory
    #-- Destination: specify a fixed directory where all packages will be placed
    #PKGDEST=/home/packages
    #-- Source cache: specify a fixed directory where source files will be cached
    #SRCDEST=/home/sources
    #-- Source root: specify location where PKGBUILDs are located for '--builddeps'
    #SRCROOT=/home/pkgbuilds
    #-- Packager: name/email of the person or organization building packages
    #PACKAGER="John Doe <[email protected]>"
    # BUILDSCRIPT/EXTENSION DEFAULTS
    # WARNING: Do NOT modify these variables unless you know what you are
    # doing.
    BUILDSCRIPT='PKGBUILD'
    PKGEXT='.pkg.tar.gz'
    SRCEXT='.src.tar.gz'
    DB_COMPRESSION='gz'
    DB_CHECKSUMS=(md5)
    # vim: set ft=sh ts=2 sw=2 et:
    ps. I have an amd athlon 64 x2.

    You are missing the CARCH- field(?). Add
    CARCH="x86_64"
    into your makepkg.conf (it's above CHOST by default).

  • Makepkg.conf: Stripping /usr/local Docs Out Of Builds?

    Trying to strip out '/usr/local/gtk-doc/html' out of builds without resorting to 'without-html-dir'. Tried the following individually within makepkg.conf with no effect:
    OPTIONS=(!docs)
    DOC_DIRS=({usr{,/local}{,/share},opt/*}/{doc,gtk-doc}
    DOC_DIRS=({usr{,/local}{,/share},opt/*}/{doc,gtk-doc{,/html}}
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc{,/html}} opt/*/{doc,gtk-doc{,/html}})
    All fo the above appear to echo properly. No options=() within any PKGBUILD files I am testing. How to strip '/usr/local/gtk-doc/html'  out of builds using makepkg.conf (would rather not add an 'rm' statement to each and every PKGBUILD)?
    Last edited by adamlau (2009-03-29 21:43:48)

    Correct. This is my /etc/makepkg-git.conf (makepkg.conf backed up and removed from /etc):
    DLAGENTS=('ftp::/usr/bin/wget -c --passive-ftp -t 3 --waitretry=3 -O %o %u'
    'http::/usr/bin/wget -c -t 3 --waitretry=3 -O %o %u'
    'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate -O %o %u'
    'rsync::/usr/bin/rsync -z %u %o'
    'scp::/usr/bin/scp -C %u %o')
    CARCH="i686"
    CHOST="i686-pc-linux-gnu"
    CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
    CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
    LDFLAGS="-Wl,-O1,--as-needed,--hash-style=gnu"
    #MAKEFLAGS="-j2"
    BUILDENV=(fakeroot !distcc color !ccache !xdelta)
    OPTIONS=(strip !docs !libtool !emptydirs zipman purge)
    INTEGRITY_CHECK=(md5)
    MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
    STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,sbin})
    PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
    PKGEXT='.pkg.tar.gz'
    SRCEXT='.src.tar.gz'

  • Silly makepkg.conf question

    Does makepkg.conf dictate "make" behavior as well as "makepkg" behavior ?
    For instance if I use MAKEFLAGS="-j3" will I be able to benefit from it using regular "make" ?

    Cerebral wrote:
    Well, if you want default CFLAGS and CXXFLAGS you can just set them before the alias:
    export CFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer"
    export CXXFLAGS=${CFLAGS}
    alias make='make -j3'
    That would work as well.
    Ah, brilliant, thank you. There's what I was looking for. I am assuming that this should work whether I put it in /etc/profile or ~/.bashrc. (I only have 1 user and root.)

  • NEEDED? makepkg.conf.pacnew and/or yaourt-git: WARNING: Unable to copy

    Hi....
    ISSUE:  when I try to install CERTAIN things via yaourt on my up to date system.
    At the end of the yaourt process I will sometimes get  the:
    ==> WARNING: Unable to copy WHATEVER PACKAGE to /tmp/ directory
    I'm pretty sure I deleted  makepkg.conf.pacnew.
    I am certain to have gone through the big 3.2 pacman upgrade a while back.
    I assumed the pacnew was a pacsave ...I guess.... can't assume of course.
    The only post I could find was this one...
    http://bbs.archlinux.org/viewtopic.php?id=53040
    As I very likely threw out the    makepkg.conf.pacnew
    and missed the merge thing.... could someone post it... or tell me the fix....
    OTHER FIX/ISSUE I READ ABOUT:
    yaourt-git needed instead of the release version ????
    I'm not at all sure if I need yaourt-git and the doing of the recommended MERGE with the   makepkg.conf.pacnew and the old one.
    After this gets resolved I will hopefully add t omy knowledge of AUR usage... and add the other install techniques!!  great!
    thanks!!!!!!!!
    Last edited by yvonney (2009-01-24 08:50:36)

    anonymous_user wrote:Pacman is 4.1 is not released yet. The wiki is just telling you about the new feature in the next pacman.
    I see, but I do not understand why I already encounter PKGBUILDs written with the aforementioned "style".
    For instance, giving a look to pacman-git, I find:
    source=(git://projects.archlinux.org/pacman.git)
    sha1sums=('SKIP')
    pkgver() {
    cd pacman
    git describe | sed 's/^v//;s/-/./g'
    build() {
    cd "pacman"
    ./autogen.sh
    ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --enable-doc \
    --enable-git-version \
    --enable-debug \
    --with-scriptlet-shell=/usr/bin/bash \
    --with-ldconfig=/usr/bin/ldconfig
    make
    make -C contrib
    As I said, my makepkg cannot handle that source and there is not an official way to fix it, apparently.

Maybe you are looking for

  • Reg Core Dump

    We are getting bad address core dump while using Coherence lib . Please find the dbx stack trace below in . @null (l@9) terminated by signal SEGV (no mapping at the fault address) 0xffffffffffffffff: <bad address 0xffffffffffffffff> (dbx) where [1] 0

  • "DDL statement failed" in Database load faze

    Hello, I have an problem when installing DB2 on Solaris platform. During the installation, in Database load Faze, i get the error: MSC-01015  Process finished with error(s), check log file /tmp/sapinst_instdir/R3E47X2/SYSTEM/ABAP/DB6/NUC/DB/SAPVIEW.l

  • Exporting to Powerpoint from Acrobat XI Pro

    Acrobat XI Pro - How do you keep the original fonts when exporting to editable Word or Powerpoint?  Trouble with Symbol and Helvetica; these get changed to Arial.

  • Form displays modeless despite being called using ShowDialog() when called in a separate thread

    I have a java application which loads a C++ dll in order to launch VB components. Recently the VB activex components were upgraded to C# .NET.But some of the activex components referenced within the C# dlls had to be retained as is. There were issues

  • Copy items to the iPhoto Library option doesn't seem to work

    Hi, I'm using 7.1.1 and if I: 1. De-select the create "Copy items to the iPhoto Library" option in Preferences/Advanced 2. Create a new library It doesn't seem to work. The images are still being copied into the library -- that is, if I show the pack