Garball Makefile vars

These vars must be set inside a package Makefile in order to define the package's behavior.

GARNAME"> GARNAME

The name of the package, such as "grep" or "nwall"

GARVERSION"> GARVERSION

The version number of the upstream package, such as 2.4.2 or 1.31

CATEGORIES"> CATEGORIES

The categories the package is in, starting with the one whose dir it resides in.

MAINTAINER"> MAINTAINER

A valid e-mail address as would appear in mail headers, such as

MAINTAINER = Nick Moffitt <nick@zork.net>

DESCRIPTION"> DESCRIPTION

A short, one-line description of the package.

BLURB"> BLURB

A longer description of the package, set using the define directive like so:

define BLURB 
 nwall is a system-local chat program based on BSD wall.  It logs
 chat, as well as providing opt-out lockfiles for users who want to be
 alerted to system walls, but do not want to be distracted by the
 nwall chatter.  
endef

DISTFILES"> DISTFILES

A list of all the files to be downloaded, such as $(GARNAME)-$(GARVERSION).tar.gz (incidentally, this can be shortened to $(DISTNAME).tar.gz).

MASTER_SITES"> MASTER_SITES

A list of URLs to the directories where the $(DISTFILES) may be found.

CONFIGURE_SCRIPTS"> CONFIGURE_SCRIPTS

A list of all of the scripts used in configuration of a package. The most common case is $(WORKSRC)/configure for autoconf-using packages.

BUILD_SCRIPTS"> BUILD_SCRIPTS

A list of all of the scripts used to compile or build a package. Typically this is $(WORKSRC)/Makefile

INSTALL_SCRIPTS"> INSTALL_SCRIPTS

A list of all of the scripts used to install a package. Typically this is $(WORKSRC)/Makefile or manifest.

Environment Setting Vars

These three vars allow one to set environment variables on the command line when the given _SCRIPTS are run. This may be useful in some cases, but is often not the best way of doing things.

CONFIGURE_ENV

BUILD_ENV

INSTALL_ENV

Script Argument Vars

These three vars allow one to provide arguments that will come /last/ on the command line when the given _SCRIPTS are run.

CONFIGURE_ARGS

BUILD_ARGS

INSTALL_ARGS

BUILD_OVERRIDE_DIRS

BUILD_OVERRIDE_DIRS = prefix includedir

is equivalent to

BUILD_ARGS = prefix=$(prefix) includedir=$(includedir)

It makes use of the fact that variables set on the make command line (instead of in the environment) actually trump variable assignments performed within a Makefile.

It's useful for packages that follow most of the GNU Makefile standards, but not all.

INSTALL_OVERRIDE_DIRS

INSTALL_OVERRIDE_DIRS = prefix includedir

is equivalent to

INSTALL_ARGS = prefix=$(DESTDIR)$(prefix)
includedir=$(DESTDIR)$(includedir)

It makes use of the fact that variables set on the make command line (instead of in the environment) actually trump variable assignments performed within a Makefile.

It's useful for packages that follow most of the GNU Makefile standards, but not all. Typically it's used in cases where autoconf was used, but not automake, so the Makefile.in doesn't honor DESTDIR.

DEP vars

These vars define package dependencies. The general format is a space-separated list of category/package tuples.

DEPENDS

This lists general programs and packages that are needed.

LIBDEPS

This lists libraries that are needed.

BUILDDEPS

This lists dependencies that aren't actually to be installed on the final system, but are needed to build the package.