Commit graph

28 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
joerg
f605fec2db Mark as destdir ready. 2008-07-14 12:55:56 +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
rillig
96fc47c14f Aligned the last line of the buildlink3.mk files with the first line, so
that they look nicer.
2006-04-12 10:26:59 +00:00
reed
5abef9be14 Over 1200 files touched but no revisions bumped :)
RECOMMENDED is removed. It becomes ABI_DEPENDS.

BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.

BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.

BUILDLINK_DEPENDS does not change.

IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".

Added to obsolete.mk checking for IGNORE_RECOMMENDED.

I did not manually go through and fix any aesthetic tab/spacing issues.

I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.

I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.

As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.

As discussed on tech-pkg.

I will commit to revbump, pkglint, pkg_install, createbuildlink separately.

Note that if you use wip, it will fail!  I will commit to pkgsrc-wip
later (within day).
2006-04-06 06:21:32 +00:00
rillig
579e977969 Ran "pkglint --autofix", which corrected some of the quoting issues in
CONFIGURE_ARGS.
2005-12-05 23:55:01 +00:00
rillig
b71a1d488b Fixed pkglint warnings. The warnings are mostly quoting issues, for
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some
other changes are outlined in

    http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-12-05 20:49:47 +00:00
tv
4644f26d1f Pull in libbind resolver on Interix. 2005-11-08 14:05:23 +00:00
minskim
585db40a2b Define BIND_8_COMPAT to build on Darwin. 2005-11-04 02:24:04 +00:00
tv
f816d81489 Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used. 2005-04-11 21:44:48 +00:00
agc
b12d62efb5 Add RMD160 digests. 2005-02-24 12:13:41 +00:00
wiz
1529ca8b29 Unused. 2004-04-25 00:39:47 +00:00
wiz
0e3696660e Static library only -> build dependency. 2004-04-25 00:34:21 +00:00
wiz
458687d2f0 Remove XXX. 2004-04-25 00:19:10 +00:00
wiz
43279128a8 Convert to bl3. 2004-04-25 00:18:39 +00:00
jlam
d2b62c66fb Create a new variable PREFER_NATIVE that has the opposite semantics
as PREFER_PKGSRC.  Preferences are determined by the most specific
instance of the package in either PREFER_PKGSRC or PREFER_NATIVE.  If
a package is specified in neither or in both variables, then PREFER_PKGSRC
has precedence over PREFER_NATIVE.
2004-02-12 02:35:06 +00:00
jlam
1edfa505ed Reorganize code so that any dependencies are checked as part of deciding
whether the software is built-in or not.  This facilitates implementing
the forthcoming PKGSRC_NATIVE variable.
2004-02-12 01:59:37 +00:00
jlam
317cc72791 Make PREFER_PKGSRC just yes/no or a list of packages. This makes it
simpler to understand.
2004-02-05 07:17:14 +00:00
jlam
e7133cac25 Rename BUILDLINK_PREFER_PKGSRC to PREFER_PKGSRC so that we can use its
value outside of buildlink-related files.
2004-02-05 07:06:15 +00:00
jlam
07a9d8dfb2 Support a new global variable:
BUILDLINK_PREFER_PKGSRC
	This variable determines whether or not to prefer the pkgsrc
	versions of software that is also present in the base system.

	This variable is multi-state:
		defined, or "yes"	always prefer the pkgsrc versions
		not defined, or "no"	only use the pkgsrc versions if
					needed by dependency requirements

	This can also take a list of packages for which to prefer the
	pkgsrc-installed software.  The package names may be found by
	consulting the value added to BUILDLINK_PACKAGES in the
	buildlink[23].mk files for that package.
2004-02-05 06:58:02 +00:00
schmonz
0a1bd5acad Replace IGNORE with PKG_FAIL_REASON or PKG_SKIP_REASON as appropriate. 2002-12-07 02:38:52 +00:00
grant
281ffb7995 correct path to hesiod.conf in hesinfo(1) man page.
fixes pkg/18804 from John T. Rose.
2002-11-21 10:59:20 +00:00
wiz
9998924f57 Unused. 2002-10-12 09:54:14 +00:00
jlam
e2afa97f51 Merge changes in packages from the buildlink2 branch that have
buildlink2.mk files back into the main trunk.  This provides sufficient
buildlink2 infrastructure to start merging other packages from the
buildlink2 branch that have already been converted to use the buildlink2
framework.
2002-08-25 18:38:05 +00:00
jlam
fbf3d42951 Trivially buildlinkify. Also correct typo: NEED_HESIOD should be
USE_HESIOD if the buildlink.mk file is to be believed, and we should
include bsd.prefs.mk first so that a USE_HESIOD from /etc/mk.conf can
be picked up.
2001-11-29 13:34:35 +00:00
jlam
719c0f7583 The hesoid package has only static libraries, so use use a BUILD_DEPENDS
instead of a normal DEPENDS.
2001-11-29 13:32:27 +00:00
seb
40b4c40b4a Initial import of hesiod-3.0.2.
Provided in PR 14649 by Kevin P. Neal <kpneal@pobox.com>.

Minor enhancements and buildlink.mk made by seb.
A package builder can force the use of this package by defining NEED_HESIOD in
case the base system already provides Hesiod API in the C library.
Note: NetBSD's C library provides minimum Hesiod support, the library included
in this package is the MIT original one and so provides the whole Hesiod API.

Hesiod is a name service library that can provide general name service for a
variety of applications. It is based on the Domain Name system (DNS).
The Hesiod library and hesinfo tool allow easy queries to Hesiod name service.
2001-11-29 11:41:28 +00:00