summaryrefslogtreecommitdiffstats
path: root/doc/makepkg.conf.5.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/makepkg.conf.5.txt')
-rw-r--r--doc/makepkg.conf.5.txt154
1 files changed, 154 insertions, 0 deletions
diff --git a/doc/makepkg.conf.5.txt b/doc/makepkg.conf.5.txt
new file mode 100644
index 00000000..17e4bd87
--- /dev/null
+++ b/doc/makepkg.conf.5.txt
@@ -0,0 +1,154 @@
+/////
+vim:set ts=4 sw=4 syntax=asciidoc noet:
+/////
+makepkg.conf(5)
+===============
+
+Name
+----
+makepkg.conf - makepkg configuration file
+
+
+Synopsis
+--------
+{sysconfdir}/makepkg.conf, ~/.makepkg.conf
+
+
+Description
+-----------
+Configuration options for makekpg are stored in makepkg.conf. This file is
+sourced, so you can include any special compiler flags you wish to use. This is
+helpful for building for different architectures, or with different
+optimizations. However, only the variables described below are exported to the
+build environment.
+
+NOTE: This does not guarantee that all package Makefiles will use your exported
+variables. Some of them are non-standard.
+
+The default file is fairly well commented, so it may be easiest to simply
+follow directions given there for customization.
+
+
+Options
+-------
+**DLAGENTS=(**\'protocol::/path/to/command [options]' ...**)**::
+ Sets the download agents used to fetch source files specified with a URL in
+ the manlink:PKGBUILD[5] file. Options can be specified for each command as
+ well; the download URL is placed on the end of the command. This is more
+ flexible than the former `FTPAGENT` variable, as any protocol can have a
+ download agent. Several examples are provided in the default makepkg.conf.
+
+**CARCH=**"carch"::
+ Specifies your computer architecture; possible values include such things
+ as ``i686'', ``x86_64'', ``ppc'', etc. This should be automatically set on
+ installation.
+
+**CHOST=**"chost"::
+ A string such as ``i686-pc-linux-gnu'', do not touch unless you know what
+ you are doing. This can be commented out by most users if desired.
+
+**CFLAGS=**"cflags"::
+ Flags used for the C compiler. This is a key part to the use of makepkg.
+ Usually several options are specified, and the most common string resembles
+ something like this: ``-march=i686 -O2 -pipe''. Another useful option may
+ be `-mcpu` in place of `-march`. Read gcc(1) for more details on the wide
+ variety of compiler flags available.
+
+**CXXFLAGS=**"cxxflags"::
+ Flags used for the C++ compiler; see CFLAGS for more info.
+
+**MAKEFLAGS=**"makeflags"::
+ This is often used to set the number of jobs used, for example, `-j2`.
+ Other flags that make accepts can also be passed.
+
+**BUILDENV=(**fakeroot !distcc color !ccache !xdelta**)**::
+ This array contains options that affect the build environment, the defaults
+ are shown here. All options should always be left in the array; to enable
+ or disable an option simply remove or place an ``!'' at the front of the
+ option. Each works as follows:
+
+ *fakeroot*;;
+ Allow building packages as a non-root user. This is highly recommended.
+
+ *distcc*;;
+ Use the distributed C/C++/ObjC compiler to spread compilation among
+ multiple machines. If this is enabled, `DISTCC_HOSTS` must be specified
+ as well.
+
+ *color*;;
+ Colorize output messages, making output easier to read.
+
+ *ccache*;;
+ Use ccache to cache compilation by default. This allows for faster
+ compiles if you are continuously recompiling the same packages. It can
+ be disabled for individual packages by placing `!ccache` in the
+ PKGBUILD options array.
+
+ *xdelta*;;
+ Generate an xdelta binary patch from previous to current package. The
+ previous package must be available in the makepkg cache directory for
+ this to occur.
+
+**DISTCC_HOSTS=**"host1 ..."::
+ If using DistCC, this is used to specify a space-delimited list of hosts
+ running in the DistCC cluster. In addition, you will want to modify your
+ `MAKEFLAGS`.
+
+**OPTIONS=(**strip !docs libtool emptydirs**)**::
+ This array contains options that affect the default packaging. All four are
+ equivalent to options that can be placed in the PKGBUILD; the defaults are
+ shown here. All options should always be left in the array; to enable or
+ disable an option simply remove or place an ``!'' at the front of the
+ option. Each works as follows:
+
+ *strip*;;
+ Strip symbols from binaries and libraries. If you frequently use a
+ debugger on programs or libraries, it may be helpful to disable this
+ option.
+
+ *docs*;;
+ Save doc and info directories. If you wish to delete doc and info
+ directories, specify `!docs' in the array.
+
+ *libtool*;;
+ Leave libtool (.la) files in packages. Specify `!libtool' to remove
+ them.
+
+ *emptydirs*;;
+ Leave empty directories in packages.
+
+**INTEGRITY_CHECK=(**check1 ...**)**::
+ File integrity checks to use. Multiple checks may be specified; this
+ affects both generation and checking. The current valid options are:
+ `md5`, `sha1`, `sha256`, `sha384`, and `sha512`.
+
+**DOC_DIRS=(**usr/{,share/}{info,doc} ...**)**::
+ If "!docs" is specified in the OPTIONS array, this variable will
+ instruct makepkg where to look to remove docs. If you build packages
+ that are located in opt/, you may need to add the directory to this
+ array. *NOTE:* Do not add the leading slash to the directory name.
+
+**PKGDEST=**"/path/to/folder"::
+ If this value is not set, packages will by default be placed in the
+ current directory (location of the manlink:PKGBUILD[5]). Many people
+ like to keep all their packages in one place so this option allows
+ this behavior. A common location is ``/home/packages''.
+
+**SRCDEST=**"/path/to/folder"::
+ If this value is not set, downloaded source files will only be stored
+ in the current directory. Many people like to keep all source files in
+ a central location for easy cleanup, so this path can be set here.
+
+**PACKAGER=**"John Doe <john@doe.com>"::
+ This value is used when querying a package to see who was the builder.
+ It is recommended you change this to your name and email address.
+
+*BUILDSCRIPT*, *PKGEXT*, *SRCEXT*, *DB_COMPRESSION*, *DB_CHECKSUMS*::
+ Do not touch these unless you know what you are doing.
+
+
+See Also
+--------
+manlink:makepkg[8], manlink:pacman[8], manlink:PKGBUILD[5]
+
+include::footer.txt[]