makepkg (makepkg.conf)
makepkg personalizado
Categoria: Miscelânea
Software: makepkg
[ Hits: 3.470 ]
Por: niquelnausea
**esta configuração torna obsoleta uma versão mais antiga que havia disponibilizado no vol em 2015 https://www.vivaolinux.com.br/etc/makepkgconf-1/
com as novas versões do gcc, novos recursos foram adicionados, sendo algumas opções com foco em desempenho, como sempre, faça backup do arquivo original e substitua o conteúdo do arquivo /etc/makepkg.conf .
este arquivo é o responsável pelas instruções e configurações para compilações realizadas através do sistema de pkgbuilds do arch, ou seja, pacotes do sistemas compilados manualmente e pacotes do aur, seja manualmente ou através de algum aur helper como o yay.
testado no arch e provavelmente também é compatível com o manjaro e outras distros baseadas no arch.
maiores informações na wiki https://wiki.archlinux.org/index.php/Makepkg ou man makepkg.
mudanças em relação ao arquivo original:
- em "CFLAGS" e "CXXFLAGS" o compilador ira usar instruções especificas para o processador em uso, independente do fabricante ou modelo;
- em "MAKEFLAGS" o compilador irá usar o numero total de núcleos do processador, independente de quantos sejam (acelerando a compilação);
- em "BUILDENV" esta habilitado o ccache https://wiki.archlinux.org/index.php/Ccache , obrigatório a instalação do mesmo;
- em "#PKGDEST=$HOME/pkg" retirando o comentário (#) desta linha é possível salvar os pacotes compilados em uma pasta "pkg" na /home do usuário (necessário criar a pasta manualmente);
- em "#SRCDEST=$HOME/sources" retirando o comentário (#) desta linha é possível salvar as fontes dos pacotes em uma pasta "sources" na /home do usuário (necessário criar a pasta manualmente), muito útil para arquivos disponibilizados por git;
- em "COMPRESSXZ" esta habilitado a compressão em xz usando quantos núcleos possíveis do processador;
- em "PKGEXT='.pkg.tar.xz''' retirando o ".xz" (ficando PKGEXT='.pkg.tar') é possível desabilitar a compressão de pacotes finais;
- em "#export CC=clang" e "#export CXX=clang++", retirando o comentário (#) é possível habilitar a compilação através do clang https://wiki.archlinux.org/index.php/Clang .
#!/hint/bash # # /etc/makepkg.conf # ######################################################################### # SOURCE ACQUISITION ######################################################################### # #-- The download utilities that makepkg should use to acquire sources # Format: 'protocol::agent' DLAGENTS=('file::/usr/bin/curl -gqC - -o %o %u' 'ftp::/usr/bin/curl -gqfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' 'http::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u' 'https::/usr/bin/curl -gqb "" -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') # Other common tools: # /usr/bin/snarf # /usr/bin/lftpget -c # /usr/bin/wget #-- The package required by makepkg to download VCS sources # Format: 'protocol::package' VCSCLIENTS=('bzr::bzr' 'git::git' 'hg::mercurial' 'svn::subversion') ######################################################################### # ARCHITECTURE, COMPILE FLAGS ######################################################################### # CARCH="x86_64" CHOST="x86_64-pc-linux-gnu" #-- Compiler and Linker Flags CPPFLAGS="-D_FORTIFY_SOURCE=2" CFLAGS="-march=native -O2 -pipe -fno-plt" CXXFLAGS="${CFLAGS}" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" #-- Make Flags: change this for DistCC/SMP systems MAKEFLAGS="-j$(nproc)" #-- Debugging flags DEBUG_CFLAGS="-g -fvar-tracking-assignments" DEBUG_CXXFLAGS="-g -fvar-tracking-assignments" ######################################################################### # BUILD ENVIRONMENT ######################################################################### # # Defaults: BUILDENV=(!distcc !color !ccache check !sign) # A negated environment option will do the opposite of the comments below. # #-- 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=(!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 !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 #-- debug: Add debugging flags as specified in DEBUG_* variables # OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !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) #-- Directory to store source code in for debug packages DBGSRCDIR="/usr/src/debug" ######################################################################### # 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/pkg #-- 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 <john@doe.com>" #-- Specify a key to use for package signing #GPGKEY="" ######################################################################### # COMPRESSION DEFAULTS ######################################################################### # COMPRESSGZ=(gzip -c -f -n) COMPRESSBZ2=(bzip2 -c -f) COMPRESSXZ=(xz -c -z - --threads=0) 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: #export CC=clang #export CXX=clang++
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Linux Lite Demorando Muito Para Ligar (0)
PC não liga no filtro de linha (3)
Desde que seja DDR3, posso colocar qualquer memória? (3)