diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/PKGBUILD.5.txt | 44 | ||||
-rw-r--r-- | doc/pacman.8.txt | 10 |
2 files changed, 53 insertions, 1 deletions
diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt index 3db51b86..b90d67a7 100644 --- a/doc/PKGBUILD.5.txt +++ b/doc/PKGBUILD.5.txt @@ -30,12 +30,22 @@ distribution of this package. Options and Directives ---------------------- +The following is a list of standard options and directives available for use +in a PKGBUILD. These are all understood and interpreted by makepkg, and most +will be directly transferred to the built package. + +If you need to create any custom variables for use in your build process, it is +recommended to name your custom variables with an '_' (underscore) prefix. +This will prevent any possible name clashes with internal makepkg variables. +For example, to store the base kernel version in a variable, use something +similar to `$_basekernver`. + *pkgname*:: The name of the package. This has be a unix-friendly name as it will be used in the package filename. *pkgver*:: - The version of the software as released from the author (e.g. \'2.7.1'). + The version of the software as released from the author (e.g. '2.7.1'). *pkgrel*:: This is the release number specific to the Arch Linux release. This @@ -207,6 +217,38 @@ Options and Directives of a package changes (or is alphanumeric). +build() Function +---------------- +In addition to the above directives, the build() bash function comprises the +remainder of the PKGBUILD. This is directly sourced and executed by makepkg, so +anything that bash or the system has available is available for use here. Be +sure any exotic commands used are covered by `makedepends`. + +All of the above variables such as `pkgname` and `pkgver` are available for use +in the build function. In addition, makepkg defines three variables for your +use during the build and install process. These three variables are as follows: + +*startdir*:: + This contains the absolute path to the directory where the PKGBUILD was + located, which is usually the output of `$(pwd)` when makepkg is started. + $$startdir$$ was most often used in combination with `/src` or `/pkg` + postfixes, but use of the `srcdir` and `pkgdir` variables is preferred. + +*srcdir*:: + This points to the directory where makepkg extracts or copies all source + files. Although it currently is an alias for `$startdir/src`, this + assumption should not be assumed true for all future revisions of makepkg. + +*pkgdir*:: + This points to the directory where makepkg bundles the installed package + (this directory will become the root directory of your built package). + Although it currently is an alias for `$startdir/pkg`, this assumption + should not be assumed true for all future revisions of makepkg. + +If you create any variables of your own in the build function, it is +recommended to use the bash `local` keyword to scope the variable to inside +the build function. + Install/Upgrade/Remove Scripting -------------------------------- Pacman has the ability to store and execute a package-specific script when it diff --git a/doc/pacman.8.txt b/doc/pacman.8.txt index 200eba39..5594ac61 100644 --- a/doc/pacman.8.txt +++ b/doc/pacman.8.txt @@ -191,6 +191,11 @@ Query Options[[QO]] not an entry in the database. The file will be decompressed and queried. This is useful in combination with '\--info' and '\--list'. +*-q, \--quiet*:: + Show less information for certain query operations. Search will only show + package names and not version, group, and description information; a bare + query will only show package names rather than names and versions. + *-s, \--search* <'regexp'>:: This will search each locally-installed package for names or descriptions that match `regexp`. @@ -266,6 +271,11 @@ linkman:pacman.conf[5]. dependencies yet to be installed. These can be piped to a file and downloaded at a later time, using a program like wget. +*-q, \--quiet*:: + Show less information for certain sync operations. Search will only show + package names and not version, group, and description information; list + will only show package names and omit databases and versions. + *-s, \--search* <'regexp'>:: This will search each package in the sync databases for names or descriptions that match `regexp`. |