mirror of
https://github.com/moparisthebest/pacman
synced 2024-12-24 00:38:51 -05:00
157 lines
6.0 KiB
Groff
157 lines
6.0 KiB
Groff
|
.TH makepkg 8 "January 30, 2006" "Frugalware Developer Manual" ""
|
||
|
.SH NAME
|
||
|
makepkg \- package build utility
|
||
|
.SH SYNOPSIS
|
||
|
\fBmakepkg [options]\fP
|
||
|
.SH DESCRIPTION
|
||
|
\fBmakepkg\fP will build packages for you. All it needs is
|
||
|
a build-capable linux platform, wget, and some build scripts. The advantage
|
||
|
to a script-based build is that you only really do the work once. Once you
|
||
|
have the build script for a package, you just need to run makepkg and it
|
||
|
will do the rest: download and validate source files, check dependencies,
|
||
|
configure the buildtime settings, build the package, install the package
|
||
|
into a temporary root, make customizations, generate meta-info, and package
|
||
|
the whole thing up for \fBpacman\fP to use.
|
||
|
|
||
|
\fBmakeworld\fP can be used to rebuild an entire package group or the
|
||
|
entire build tree. See \fBmakeworld --help\fP for syntax.
|
||
|
|
||
|
.SH OPTIONS
|
||
|
.TP
|
||
|
.B "\-b, \-\-builddeps"
|
||
|
Build missing dependencies from source. When makepkg finds missing build-time or
|
||
|
run-time dependencies, it will look for the dependencies' FrugalBuild files under
|
||
|
$fst_root (set in your /etc/repoman.conf). If it finds them it will
|
||
|
run another copy of makepkg to build and install the missing dependencies.
|
||
|
The child makepkg calls will be made with the \fB-b\fP and \fB-i\fP options.
|
||
|
.TP
|
||
|
.B "\-B, \-\-noccache"
|
||
|
Do not use ccache during build.
|
||
|
.TP
|
||
|
.B "\-c, \-\-clean"
|
||
|
Clean up leftover work files/directories after a successful build.
|
||
|
.TP
|
||
|
.B "\-C, \-\-cleancache"
|
||
|
Used with --chroot cleans up the chroot which means removing unnecessary
|
||
|
packages from it. If used twice, then it removes all source files from
|
||
|
the cache directory and cleans up the full compiler cache to free up diskspace.
|
||
|
.TP
|
||
|
.B "\-d, \-\-nodeps"
|
||
|
Do not perform any dependency checks. This will let you override/ignore any
|
||
|
dependencies required. There's a good chance this option will break the build
|
||
|
process if all of the dependencies aren't installed.
|
||
|
.TP
|
||
|
.B "\-D <pkgname>"
|
||
|
Clean up only one package's compiler cache. (Uses ccache -C.)
|
||
|
.TP
|
||
|
.B "\-e, \-\-noextract"
|
||
|
Do not extract source files. Instead, use whatever already exists in the
|
||
|
src/ directory. This is handy if you want to go into src and manually
|
||
|
patch/tweak code, then make a package out of the result.
|
||
|
.TP
|
||
|
.B "\-f, \-\-force"
|
||
|
\fBmakepkg\fP will not build a package if a \fIpkgname-pkgver-pkgrel-arch.fpm\fP
|
||
|
file already exists in the build directory. You can override this behaviour with
|
||
|
the \fB--force\fP switch.
|
||
|
.TP
|
||
|
.B "\-G, \-\-genmd5"
|
||
|
Download all source files (if required) and use \fImd5sum\fP to generate md5 hashes
|
||
|
for each of them. You can then redirect the output into your FrugalBuild for source
|
||
|
validation (makepkg -G >>FrugalBuild).
|
||
|
.TP
|
||
|
.B "\-g, \-\-gensha1"
|
||
|
Download all source files (if required) and use \fIsha1sum\fP to generate sha1 hashes
|
||
|
for each of them. You can then redirect the output into your FrugalBuild for source
|
||
|
validation (makepkg -g >>FrugalBuild).
|
||
|
.TP
|
||
|
.B "\-h, \-\-help"
|
||
|
Output syntax and commandline options.
|
||
|
.TP
|
||
|
.B "\-i, \-\-install"
|
||
|
Install/Upgrade the package after a successful build.
|
||
|
.TP
|
||
|
.B "\-j <jobs>"
|
||
|
Sets MAKEFLAGS="-j<jobs>" before building the package. This is useful for overriding
|
||
|
the MAKEFLAGS setting in /etc/makepkg.conf.
|
||
|
.TP
|
||
|
.B "\-L, \-\-nolastmod"
|
||
|
Disable updating the Last modified line.
|
||
|
.TP
|
||
|
.B "\-k, \-\-logging"
|
||
|
Logging package build process
|
||
|
.TP
|
||
|
.B "\-l <pkgname>"
|
||
|
Download the package's buildscript before starting the build. This is useful
|
||
|
if you do not want to do a full 'repoman upd' nor want to download manually the
|
||
|
buildscript.
|
||
|
.TP
|
||
|
.B "\-m, \-\-nocolor"
|
||
|
Disable color in output messages
|
||
|
.TP
|
||
|
.B "\-n, \-\-nostrip"
|
||
|
Do not strip binaries and libraries.
|
||
|
.TP
|
||
|
.B "\-o, \-\-nobuild"
|
||
|
Download and extract files only, do not build.
|
||
|
.TP
|
||
|
.B "\-p <buildscript>"
|
||
|
Read the package script \fI<buildscript>\fP instead of the default (\fIFrugalBuild\fP).
|
||
|
.TP
|
||
|
.B "\-r, \-\-rmdeps"
|
||
|
Upon successful build, remove any dependencies installed by makepkg/pacman during
|
||
|
dependency auto-resolution (using \fB-b\fP or \fB-s\fP).
|
||
|
.TP
|
||
|
.B "\-R, \-\-chroot"
|
||
|
Build the package in a chroot environment.
|
||
|
.TP
|
||
|
.B "\-s, \-\-syncdeps"
|
||
|
Install missing dependencies using pacman. When makepkg finds missing build-time
|
||
|
or run-time dependencies, it will run pacman to try and resolve them. If successful,
|
||
|
pacman will download the missing packages from a package repository and
|
||
|
install them for you.
|
||
|
.TP
|
||
|
.B "\-t <tree>"
|
||
|
When building in a chroot (using -R) you may want to build packages for a
|
||
|
version other than the host one. Using this option, it's possible to build
|
||
|
packages for "stable" while the host system is "current" and vica versa.
|
||
|
.TP
|
||
|
.B "\-u, \-\-noup2date"
|
||
|
Do not check for newer version before starting build. Normally makepkg will
|
||
|
prevent you from building obsolete source by mistake. If you know what you are
|
||
|
doing, you can disable this feature with this switch.
|
||
|
.B "\-S, \-\-sudosync"
|
||
|
Install missing dependencies using pacman and sudo. This is the same as \fB-s\fP
|
||
|
except that makepkg will call pacman with sudo. This means you don't have to
|
||
|
build as root to use dependency auto-resolution.
|
||
|
.TP
|
||
|
.TP
|
||
|
.B "\-w <destdir>"
|
||
|
Write the resulting package file to the directory \fI<destdir>\fP instead of the
|
||
|
current working directory.
|
||
|
.TP
|
||
|
.B "\-\-noconfirm"
|
||
|
When calling pacman to resolve dependencies or conflicts, makepkg can pass
|
||
|
the \fI--noconfirm\fP option to it so it does not wait for any user
|
||
|
input before proceeding with operations.
|
||
|
.TP
|
||
|
.B "\-\-noprogressbar"
|
||
|
When calling pacman, makepkg can pass the \fI--noprogressbar\fP option to it.
|
||
|
This is useful if one is directing makepkg's output to a non-terminal (ie, a file).
|
||
|
|
||
|
.SH CONFIGURATION
|
||
|
Configuration options are stored in \fI/etc/makepkg.conf\fP. This file is parsed
|
||
|
as a bash script, so you can export any special compiler flags you wish
|
||
|
to use. This is helpful for building for different architectures, or with
|
||
|
different optimizations.
|
||
|
|
||
|
\fBNOTE:\fP This does not guarantee that all package Makefiles will use
|
||
|
your exported variables. Some of them are flaky...
|
||
|
.SH "SEE ALSO"
|
||
|
.BR FrugalBuild (8),
|
||
|
.BR pacman (8)
|
||
|
.SH AUTHOR
|
||
|
.nf
|
||
|
Judd Vinet <jvinet@zeroflux.org>
|
||
|
and the Frugalware developers <frugalware-devel@frugalware.org>
|
||
|
.fi
|