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.
for all autoconf definitions that pollute namespace. Additionally,
I've prepared a distribution patch from FreeBSD ports which
fixes many memory leaks (see comment in patch).
PKGREVISION++
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
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).
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
around at either build-time or at run-time is:
USE_TOOLS+= perl # build-time
USE_TOOLS+= perl:run # run-time
Also remove some places where perl5/buildlink3.mk was being included
by a package Makefile, but all that the package wanted was the Perl
executable.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
Version 0.8.17 (released October 4 2002)
- Corrected the HEX key mode. Refuses to convert hex strings longer
than the given key size.
- Corrected some memory leaks in keygen_s2k. Patch by Bob Mathews
<bobmathews@alumni.calpoly.edu>
- Corrected wrong use of sizeof in hmac_test. Reported by Ellis Pritchard
<ellispritchard@users.sf.net>
Version 0.8.16 (released May 29 2002)
- Code cleanups and optimizations
- Added configure time options to disable certain algorithms
Version 0.8.15 (released May 24 2002)
- Corrected Iterated S2K
- Made all static tables constant (pointed out by Darryl Miles <darryl@netbauds.net>)
Version 0.8.14 (release March 28 2002)
- mhash_deinit() and mhash_hmac_deinit() now accept a null digest parameter
- Corrected memory leaks (patch by Gustavo Niemeyer <niemeyer@conectiva.com>)
- Corrected bug in Gost hash algorithm (pointed out by Mike Gorchak <mike@malva.ua>)
Version 0.8.13 (released November 18 2001)
- Added ADLER32 algorithm (implementation by Manuel Kasper <mk@neon1.net>)
Version 0.8.12 (released October 29 2001)
- Corrected bugs in mhash_get_name() functions
- Added SHA-256 from libnettle.
Version 0.8.11 (released October 21 2001)
- added mhash_save_state_mem() and mhash_restore_state_mem() functions,
initial patches and idea by Blake Stephen <Stephen.Blake@veritect.com>
- Added mhash_get_name_static()
- Corrected mhash_get_name() and mhash_count()
Version 0.8.10 (released on July 12 2001)
- New mhash_deinit() and mhash_hmac_deinit() functions based on the
proposal, and patches by William Ahern <wahern@25thandClement.com>
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.
- Bug fixes
- MD4 and MD5 now compile on big endian machines
- TIGER now compiles on big endian machines.
- Corrected Tiger implementation
- Added MD4, TIGER128 and TIGER160
- added mhash_hmac_end_m() and mhash_end_m() functions which allow to specify
the malloc function.
- added mhash_cp() - Copy a context
- added mhash_get_mhash_algo() - Returns the name of the algorithm of the
context