Commit graph

11 commits

Author SHA1 Message Date
joerg
2d1ba244e9 Simply and speed up buildlink3.mk files and processing.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
2009-03-20 19:23:50 +00:00
dsl
d24555b956 Fix the .include lines so that make looks in the right place first.
Remember .include "foo.mk" is looked for (first) in the directory that
contains the makefile being processed (like in C), so remove all the
${.PARSEDIR} and ../ sequences that just cause grief.
2007-10-13 11:04:15 +00:00
rillig
6af03c047d Rewrote the header comment. 2007-08-14 17:48:53 +00:00
rillig
b1840202b3 Added BUILD_DEFS_EFFECTS. 2006-11-04 22:18:41 +00:00
jlam
c16221a4db Change the format of BUILDLINK_ORDER to contain depth information as well,
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.

For example, "make show-buildlink3" in fonts/Xft2 displays:

	zlib
	fontconfig
	    iconv
	    zlib
	    freetype2
	    expat
	freetype2
	Xrender
	    renderproto
2006-07-08 23:10:35 +00:00
jlam
9430e49307 Track information in a new variable BUILDLINK_ORDER that informs us
of the order in which buildlink3.mk files are (recursively) included
by a package Makefile.
2006-07-08 22:38:58 +00:00
salo
b26c32d51a Use tabs, not spaces. 2005-06-16 17:40:56 +00:00
tv
c36fe675e2 Add OS conditional blocks to exclude some PAM implementations from
selection, thus allowing "none" to be a correct result on systems where
PAM is currently unavailable.
2005-04-25 14:21:47 +00:00
jlam
bff1eecc97 Modify linux-pam and solaris-pam builtin.mk files to be more general
in their tests for built-in versions of the PAM implementations.  The
MacOS X case now collapses nicely into the linux-pam case.  Allow
pam.buildlink3.mk to use solaris-pam as an accepted PAM implementation.
2005-01-14 07:54:20 +00:00
jlam
643b26af82 We need to check that IS_BUILTIN.<pam> is "yes", not just that it's empty. 2005-01-14 07:37:39 +00:00
jlam
1b5734f517 Create a pam.buildlink3.mk file that is used by PAM-using packages.
It includes the correct buildlink3.mk file from either Linux-PAM
(security/PAM) or OpenPAM (security/openpam) and eventually will
support solaris-pam.  pam.buildlink3.mk will:

	* set PAMBASE to the base directory of the PAM files;
	* set PAM_TYPE to the PAM implementation used.

There are two variables that can be used to tweak the selection of
the PAM implementation:

PAM_DEFAULT is a user-settable variable whose value is the default
	PAM implementation to use.

PAM_ACCEPTED is a package-settable list of PAM implementations
	that may be used by the package.

Modify most packages that include PAM/buildlink3.mk to include
pam.buildlink3.mk instead.
2005-01-14 05:15:39 +00:00