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.
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).
Version 1.0.2
December 29, 2004
-----------------
- fixed a bug in declarations of namespaces
during serialization
- minor fixes for gcc 3.4.x
- fixed mistakes in error messages
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 1.0.1
November 24, 2003
-----------------
- minor changes to configure (snprintf tested)
- fixed a bug of wrong error line numbers in imported or
included template
- fixed a bug of count() function argument casting
- misplaced xsl:import no more processed
[reported by Bob Kline]
- fixed a bug of crashing current() [reported by Alex Greg]
- fixed a bug in DOM (inserting child nodes)
- fixed a bug of pointers sized differently from boolean on
64-bit platforms
Add lots of documentation to PLIST.
Changes:
Version 1.0
August 8, 2003
---------------
- two flags SAB_DUMP_SHEET_STRUCTURE (0x40) and
SAB_NO_EXTERNAL_ENTITIES (0x80) added
- nested xsl:attribute reported as error
- > is always escaped to prevent problems with CDATA end
- new configurable set of makefiles for Windows MSVC++ has been
created to replace existing Makefile.nt file
[by Rosimildo daSilva, patch by Bob Kline]
- fixed a type comparison failing on arm, powerpc and s390
[reported by Debian maintainers]
- fixed a bug of default NS in imported/included templates
- fixed a segfault in keys defined on empty nodes
[reported by Simon Spanihel]
- minor changes to compile under QNX 6.2
[patch by Adrian Weiler]
- fixed a bug of nested imports [reported by Dave Brooks]
- fixed a bug of UTF-16 encoded files on Win
[reported by Andrey Sokolov]
- fixed a bug of defenition check in shandler.h for Borland
compilers [reported by Vladimir Lukianov]
- fixed a bug of crashing sorting on Windows
- fixed a bug of crashing key() on RTF
[reported by Valeriy Ovechkin]
- solved the issue of too many files open with exsl:document
- fixed a bug of casting of 64-bit pointers to (int)
[patch by Steve Crockett]
- fixed a bug absolute paths starting with a drive letter on
Windows (unsupported scheme is reported)
- fixed a bug of SDOM_DestroyDocument
Version 0.98
April 7, 2003
-------------
- added stylesheet chaining to sabcmd [by Stefan Behnel]
- changes in XML::Sablotron (new layout, added DOMHandler SXP
interface) [by Nicolas Trebst and Anselm Kruis]
- fixed a bug of variables bound for SXP queries
- fixed a bug of the self axis (principal node type)
- fix for Metrowerks C/C++ compiler [suggested by Tim Crook]
- fixed a bug of forbidden XPath (child::xxx@yyy)
- configuration fixes (APIDOC docs are built only when
Perl/XML::Parser found)
- fixed defaults for xsl:number
- fixed a bug of required order of top-level variables
- fixes in the outputting of NS declarations
- fixes in the import precedence [report by Roy Huggins]
- added a new config switch for sabcmd to abort on XSLT error
(--enable-abort-on-error)
- fixed a bug in namespace-alias
- fixed segfault occurring when formating big numbers (>1e127)
- fixed comparison of char to 0 for unsigned-char platforms
Version 0.97
December 30, 2002
-----------------
- fixed the problem with Expat 1.95.5
- fixed a bug in xsl:message [report by Bob Kline]
- fixed an infinite loop bug in recursive imports
[report by Michael Vladimirov]
- added SablotGetOptions() function
- added a new option (SAB_FILES_TO_HANDLER) to pass the 'file'
URIs to the scheme handler
- fixed collisions with PHP/Java extension, Arena* renamed to
SabArena [suggested by Christian Stocker]
- mapping of namespaces added to xql() function (DOM)
- chars illegal in output encoding displayed as references
(for xml, html, xhtml output methods)
- fixed resolution of relative URIs in document()
- fixed a bug of not overridden imported parameters
- documentation sources (APIDOC XML) added to distribution
Closes my own PR pkg/22603.
libstdc++ in gcc3.
when defined, USE_GCC_SHLIB ensures that the correct rpath is passed
to the linker, and a full dependency on the compiler package is
registered.
packages which define USE_GCC_SHLIB should not include
mk/gcc.buildlink2.mk (or gcc{,3}/buildlink2.mk) as it is handled
automatically.
Version 0.96
September 5, 2002
-------------
- XSLT debugger implemented (sabcmd --debugger)
- API fixes for PHP extension
- log() function added to write to Sablot's log from JS scripts
- conflicts of top-level elements (variable, key, script)
initializations resolved
- fixed xslt_process buffer overflow
- fixed a bug of duplicate NS qualified attributes
- minor SXP bug fixes [using patches by Tim Crook]
- fixed a bug of the 'mod' operator [report by Jork Behrends]
- fixed a bug of sorting with multiple keys [report by Jork Behrends]
- fixed a bug of comparison [report by Jork Behrends]
- DOM: fixed a bug of the default XML namespace
[report by Albert Micheev]
- DOM: fixed a bug of PIs [report by Albert Micheev]
- improved configuration [by Melvyn Sopacua]
- fragment identifiers allowed in document() for custom
schemes [report by Bob Kline]
Version 0.95
June 24, 2002
-------------
- DOM support upgraded to DOM Level2
- xsl:strip-space and xsl:preserve-space implemented
- XSLT on external documents (accessed via callbacks)
- esxlt:document instruction implemented
- unparsed-entity-uri() function implemented
- added a manual page for sabcmd
- added a batch mode (multiple sources/stylesheets)
for sabcmd [by Stefan Behnel]
- added a system property to display version
- added a flag for document() to return an empty node-set when
it refers to non-existing document
- fixed a bug in relative paths to ext. entities
- fixed a sorting bug on Solaris
- fixed matching precedence for processing-instruction('lit')
- fixed a bug in xsl:decimal-format/format-number()
- fixed a bug in string() - comments excluded
- fixed a bug of RTFs in xsl:attribute (comment, pi)
- fixed a bug of generate-id for multiple documents
- various minor fixes
Version 0.90
March 8, 2002
-------------
- xsl:import implemented
- fixed a bug in boolean expressions with nodesets
[reported by John Holland]
- current() implementation redesigned
- variables not allowed in 'match' attributes of templates
- fixed a bug in attribute value escaping [Christian Lefebvre]
- fixed a bug in ext. entities base URI [Christian Lefebvre]
- fixed a bug in sabcmd --base option [Christian Lefebvre]
- span not indented with html method
- processing-instruction() node test allows literal arguments
- only top-level variables and params visible in xsl:attribute-set
- fixed a bug in xsl:number
- fixed a bug in master situation cleanup
[patch proposed by Bill Hofmann and Bob Kline]
- fixed a bug in error reports from included files
- correct name of element, attribute and pi is checked
Version 0.82
January 30, 2002
----------------
- fixed the text output method
(nothing but text nodes are outputted)
- SCRIPT and STYLE escaped for xhtml
- fixed a bug in escaping attributtes (src, href)
- fixed a bug in aliasing doctype declaration
- fixed bugs related to Sun CC compiler [Tim Crook, Greg Cope]
- fixed a memory management bug [Tim Crook]
Version 0.81
January 16, 2002
----------------
- PUBLIC URLs in doctypes and ext. entities not parsed
by default (SAB_PARSE_PUBLIC_ENTITIES situation option)
- non-xsl elements allowed inside xsl:stylesheet
- xsl attributes not outputted anymore
- xsl:namespace-alias translates attributes as well
- content of SCRIPT and STYLE not escaped for html/xhtml
- Boolean attributes are abbreviated for html output method
Version 0.80
January 8, 2002
---------------
- implemented extensions (JavaScript functions + DOM,
extension-element-prefixes, xsl:fallback, function-available(),
element-available())
- fixed a bux in the 'following' axis
- fixed current() assertion fault
- fixed "META tag placed outside HEAD" bug
- fixed a bug in abbreviated [position] expression in
template 'match' attribute
- implemented lang () function
- added 'namespace' attribute of xsl:element
- implemented 'exclude-result-prefixes'
- implemented xsl:attribute-set and 'use-attribute-sets'
- added 'namespace' attribute of xsl:attribute
- fixed translate() bug
- key() now works with document()
- fixed short stylesheet notation output bugs
- added use-attribute-sets attribute to xsl:copy
- minor bugs fixed