Noteworthy changes in version 1.7 (2008-11-26)
----------------------------------------------
* Minor fixes and a few new error codes.
* Interface changes relative to the 1.6 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPG_ERR_NOT_OPERATIONAL NEW
GPG_ERR_NO_PASSPHRASE NEW
GPG_ERR_NO_PIN NEW
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.
* Fixed a build problem under Windows.
Changes 1.5:
* Minor build system fixes.
* Updated gettext. Removed included gettext copy.
* gpg-error has a new option --version.
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
PKGLOCALEDIR and which install their locale files directly under
${PREFIX}/${PKGLOCALEDIR} and sort the PLIST file entries. From now
on, pkgsrc/mk/plist/plist-locale.awk will automatically handle
transforming the PLIST to refer to the correct locale directory.
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).
incorrect field calculation for the second field if the first field is
numeric and there are only 2 fields total in the input record (line).
The buggy awk was in 2.99.* and early 3.99.*, and identifies itself as
awk version 20030729. However, not all awk's with this version number
exhibit the problem (so it could be related to a library used by awk).
Recent 3.99.* builds don't have this problem, and the awk versio on
them is also much more recent.
Apparently, for as of yet undetermined reasons, gawk as built on IRIX
under pkgsrc croaks on regular expressions including a
combination of alpha- and numerical matches, such as the rather
trivial /^[ \t]*[0-9]+/
Let's use the system's AWK (ie nawk) for this package to avoid
breaking hundreds of dependents.
Speculation: somehow the regular expression library used to build
gawk conflicts with the systems regular expression library or
some such.
Note: gawk from SGIs freeware collection depends on expat -- why
is that? Does that have anything to do with anything?
slightly modified by me.
Changes since 0.6:
* Ported to Solaris 2.8.
* Added a new error source GPG_ERR_SOURCE_GSTI, and new error
codes GPG_ERR_PROTOCOL_VIOLATION and GPG_ERR_INV_MAC for this
source.
* Interface changes relative to the 0.7 release:
GPG_ERR_SOURCE_GSTI NEW
GPG_ERR_PROTOCOL_VIOLATION NEW
GPG_ERR_INV_MAC NEW
GPG_ERR_INV_REQUEST NEW
* libgpg-error can be built on systems where the errno macros do not
evaluate to plain numbers, but expressions. If you want to
cross-compile, you might have to set CC_FOR_BUILD, though.
* A new tool gpg-error to convert error numbers into symbols into
strings is provided.
* Interface changes relative to the 0.6 release:
GPG_ERR_LOCALE_PROBLEM NEW
GPG_ERR_NOT_LOCKED NEW
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".
by moving the inclusion of buildlink3.mk files outside of the protected
region. This bug would be seen by users that have set PREFER_PKGSRC
or PREFER_NATIVE to non-default values.
BUILDLINK_PACKAGES should be ordered so that for any package in the
list, that package doesn't depend on any packages to the left of it
in the list. This ordering property is used to check for builtin
packages in the correct order. The problem was that including a
buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed
from BUILDLINK_PACKAGES and appended to the end. However, since the
inclusion of any other buildlink3.mk files within that buildlink3.mk
was in a region that was protected against multiple inclusion, those
dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
Min Sik Kim.
libgpg-error is a library that defines common error values for all
GnuPG components. Among these are GPG, GPGSM, GPGME, GPG-Agent,
libgcrypt, pinentry, SmartCard Daemon and possibly more in the future.