Third stable version of the 2.x branch, released on 2004/09/01.
* Converted to use the GNU Build System (GNU Automake and GNU Autoconf).
* Because of the previous change, the build has been hopefully fixed in
several platforms, specially under Irix 6.5 using the MIPSpro C compiler.
Second stable version of the 2.x branch, released on 2004/05/02.
* Fixed an attribute name when parsing the `uri' tag in XML catalogs; it
expects `name', not `uriId'.
* Fixed a warning message when removing entries from an XML catalog.
* Fixed several warnings when building mem.c code in a system with glibc
2.[23].x and -O2 enabled.
* Added the `-p' flag which changes the behavior of the `add' action so
that new entries are prepended instead of appended.
* Improved consistency of the lookup action so that it behaves equally
for SGML and XML catalogs (this includes making XML lookup show all
matching entries).
* Documentation is now installed in an unversioned directory by default.
I'm updating the package to this version because it should fix many
portability issues (avoiding the installation of GNU tools), and because
it is a lot safer when modifying existing catalog files (not line oriented
any more and with real file locking).
I've tested the program under several other systems and platforms (including
FreeBSD, Linux and Solaris, the later with the sunpro compiler too), and it
built and worked fine. Thanks to simonb@ for testing under an Alpha system
with pkgsrc.
Change log follows:
Released on 2003/12/23, its state was alpha.
* xmlcatmgr has been completely rewritten in C. Even though, command line
compatibility has been kept, so that existing scripts using this program
do not break.
* Buildtool is not used any more. A custom build infrastructure has been
implemented, as something small and very portable was needed.
* Added the `lookup' action, used to search for entries in catalogs.
* Added real parsers to manipulate SGML and XML catalogs. The program is
not line oriented any more, thus beeing a lot more flexible.
* Multiple race conditions fixed, which were unavoidable from a shell
script.
* Better handling of special characters and spaces in strings, difficult
to handle from shell scripts.
* Fixed AWK code generation to work with the mawk interpreter.
* Fixed Makefile.boot to install documentation inside the directory pointed
by the BT_DIR_DOC variable.
Thanks to reed@ for mawk fixes and grant@ for Solaris tests.
* Adapted Buildtool scripts to the latest version, 0.14. As a side effect,
distribution documentation is now installed into the system.
* Minor manpage fixes.
* Code cleanup.
Fixes in the package: avoid overwriting catalog files when using 'make
replace' (if you have 0.2 installed actually, it won't take any effect, so
be careful by backing up pkg/share/{sgml,xml}/catalog). 'make update' will
work fine.
* Added XML Catalogs management. You must use the new `-s' flag to handle
SGML Catalogs as XML format becomes the default.
* Dropped use of getopt in favour of getopts, as the former does not handle whitespace in variables properly.
* Handle comments in SGML catalogs properly.
* Several manpage improvements.
Changes in the package:
* Implement a new framework to automatically register/deregister catalog
entries. This is available through the catalogs.mk file. Packages do
not need to call xmlcatmgr directly any more, nor do tricky things in
their PLISTs.
* Install two catalog files under PKG_SYSCONFDIR, one called sgml/catalog
and the other xml/catalog. Both are completely different things, so they
can't be mixed. Also avoid that any of these catalogs refer to the other
one, as this could cause problems.
xmlcatmgr is a command line script used to manipulate SGML and XML catalogs.
It is designed with simplicity in mind: it does not depend on external
programs nor libraries, so it is ideal to manage catalog files from inside
pkgsrc.
XML catalogs are files that contain mappings from public identifiers to
system identifiers. This allows XML parsers to locate public identifiers
in the local system.