Building a package loads the following configuration files:
Specifies the installation directory prefix. Created by the configure script from config.mk.in
Specifies general configuration variables
Defines the environment variables that are set during each build step.
Defines the list of mirror sites used to download the source tarballs. It is recommended to modify this to use local mirrors.
An optional file that you can create to load extra recipes to use on packages. This file must be created by the user (however, it is not an eroror if the file does not exist).
Much of the behavior of GSRC is defined by variables that can be customized. Generally speaking, you should override these variables in your config.mk file rather than in the gar.*.mk files. That way, you do not have to worry about updates to GSRC overwriting your changes.
Some of the more important configuration variables are:
If defined (the default), the environment variables
point to the include and lib subdirectories of the
installation directory. This forces the use of any previously
installed libraries in preference to the normal system libraries. To
disable this feature, remove the definition
config.mk.in and rerun configure, or build with
BOOTSTRAP undefined on the command-line:
$ make -C gnu/gnupg BOOTSTRAP=
Set in conf.mk
Specifies any packages that should be skipped as dependencies (for example, if you prefer to use existing system packages instead). A space separated list. Set in gar.conf.mk.
Specifies the directories used to cache downloaded source code
GARCHIVEDIR) and the archives of the installed
GARBALLDIR). Set in gar.conf.mk.
Set this to
-j N to allow N parallel processes in the
build. Note that multiple dependencies are built one-by-one; only the
commands within each build are performed in parallel. Set in
It’s easy to miss the messages printed by GSRC amongst all the output of
the build process. Set this to “y” to enable colorized output of GSRC
messages, which may make them more visible. Set it to anything else to
disable color. In either case, four more variables are defined:
OFF. The first
four define strings to insert at the beginning of a normal message
MSG2), an error message (
ERR), or a message
indicating success (
OFF code is inserted at the
end of the message. When
USE_COLOR is “y”, these variables
contain ANSI escape sequences to change properties of the text (i.e. to
set colors or text weight). Otherwise, they may contain textual
indicators, such as “==> ” to begin a message. Some sensible default
values for both cases are included. Set in gar.conf.mk.
A typical build process produces a lot of textual output. In some
cases, you may wish to redirect this output to somewhere other than
your screen. In this case, you may set the variable
REDIRECT_OUTPUT to any value other than “n”. To edit where
the output will be redirected, set the
OUTPUT variable. By default, if
REDIRECT_OUTPUT, standard text output will be
redirected to /dev/null, which means it is thrown away, while
errors will be printed to the screen. You can instead, for example,
redirect to log files of your choosing (see Redirections in Bash for more details on redirection). Set in gar.conf.mk