The actual fix as been done by "pkglint -F */*/buildlink3.mk", and was
reviewed manually.
There are some .include lines that still are indented with zero spaces
although the surrounding .if is indented. This is existing practice.
Changelog:
2.40:
Major changes since 2.38:
* Use (and require) C++11.
(Murray Cumming, Kjell Ahlstedt, Mikhail Titov)
* SaxParser: Fix "double free or corruption" if a std::exception is thrown
by a handler method.
(Daniel Trebbien, Kjell Ahlstedt)
2.40.0 (unstable):
* Build improvements.
(Kjell Ahlstedt)
2.38.1 (stable):
* Fix the build with C++11 compilers, such as MS Visual C++ 2013 - Implicit
conversions from streams to bool are no longer allowed.)
(Mikhail Titov)
* Build: Disable deprecated API in dependencies if --enable-warnings=fatal
(Kjell Ahlstedt)
* Build: Require libxml2 2.7.7 or later
(Kjell Ahlstedt)
2.38.0 (stable):
This stable version is identical to the unstable version 2.37.2.
API additions since 2.36:
* Add Node::add_child_with_new_ns().
(Kjell Ahlstedt) Bug #737682 (Mathias Lorente)
* Add XsdSchema and XsdValidator classes. Deprecate Schema and SchemaValidator.
Add RelaxNGSchema and RelaxNGValidator.
(Kjell Ahlstedt) Bug #737712 (Michel Stam)
Thanks to Tjalling Hattink, who made initial versions of the RelaxNG classes.
* Parser: Add input operator>>(std::istream& in, Parser& parser).
(Kjell Ahlstedt) Bug #329281 (Pierre Thierry)
* Parser: Add [set|get]_include_default_attributes() and
[set|get]_parser_options().
(Kjell Ahlstedt) Bug #701674 (Bob Nolty)
2.36.0 (unstable):
* Element::set_namespace_declaration():
It is not an error to set the same URI twice.
(Kjell Ahlstedt) Bug #635846, comment 27.
* Require libxml-2.0 >= 2.7.3.
(Kjell Ahlstedt)
* Parser::initialize_context(): Call xmlCtxtUseOptions().
(Kjell Ahlstedt)
2.35.4 (unstable):
* Document:
- Add process_xinclude(), using new XIncludeStart
and XIncludeEnd classes, derived from Node.
(Kjell Ahlsted) Bug #338521.
- Make the Document(xmlDoc*) constructor public.
(Kjell Ahlsted) Bug #668980.
* Parser: Make it thread-safe.
(Kjell Ahlstedt) Bug #681467.
* Schema::set_document(): If the argument 'document' is 0 then
create an empty document, as the documentation says.
(Kjell Ahlstedt)
* Improve the error handling.
(Kjell Ahlstedt) Bug #635846.
* Documentation:
- Add incremental parsing to the SaxParser example program.
- DtdValidation and SchemaValidation: Print all exception information.
- Improve error descriptions.
(Kjell Ahlstedt)
2.35.3 (unstable):
* Node:
- Add eval_to_[boolean|number|string]() methods.
(Kjell Ahlstedt) Bug #316244
- Fix memory problems in import_node().
(Kjell Ahlstedt) Bug #672992
* Build:
- The examples are now built and run during make check.
(Kjell Ahlstedt) Bug #678390
- Define LIBXMLCPP_EXCEPTIONS_ENABLED unconditionally.
(Kjell Ahlstedt)
2.35.2 (unstable):
* Node: Add get_first_child().
(Murray Cumming, Based on a patch by Ilya Murav'jov in bug #648125)
* Build: Remove the --disable-api-exceptions configure option.
(Murray Cumming)
2.35.1 (unstable):
* Handle attributes with default values correctly.
(Kjell Ahlstedt) Bug #669635.
* Improved handling of entity references and processing instructions.
(Kjell Ahlstedt) Bug #669481
* Parser: Throw more detailed error messages.
(Kjell Ahlstedt) Bug #304020 (Virgile Devaux)
* Document: Make the Document(xmlDoc*) constructor protected.
(Murray Cumming) Bug #668980 (A. Pignotti).
Problems found locating distfiles:
Package cabocha: missing distfile cabocha-0.68.tar.bz2
Package convertlit: missing distfile clit18src.zip
Package php-enchant: missing distfile php-enchant/enchant-1.1.0.tgz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
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.
by libofx).
This library provides a C++ interface to XML files. It uses libxml2
to access the XML files, and in order to configure libxml++ you
must have both libxml and pkg-config installed.
A newer version of this library is in textproc/libxml++2.