From cb7c6c2311da214c5c2dba9e4bd34c5959e145ac Mon Sep 17 00:00:00 2001 From: Michael R Sweet Date: Wed, 18 Apr 2007 01:08:58 +0000 Subject: [PATCH] Add user_data and ref_count members to mxml_node_t structure. Add mxmlRelease() and mxmlRetain() for reference-counted node management. Add mxmlSetWrapMargin() to control wrapping of XML output. --- CHANGES | 12 +++++++- Makefile.in | 26 +++++++++--------- README | 4 +-- configure | 10 +++---- configure.in | 12 ++++---- doc/reference.html | 68 +++++++++++++++++++++++++++++++++++++++++++++- mxml-file.c | 35 ++++++++++++++++++++---- mxml-node.c | 46 +++++++++++++++++++++++++++++-- mxml.h | 8 ++++-- mxml.xml | 42 ++++++++++++++++++++++++++++ 10 files changed, 225 insertions(+), 38 deletions(-) diff --git a/CHANGES b/CHANGES index 894eacd..4d5a84f 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,16 @@ -CHANGES - 12/07/2005 +CHANGES - 2007-04-17 -------------------- +CHANGES IN Mini-XML 2.4 + + - Added user_data and ref_count members to mxml_node_t + structure. + - Added mxmlReleaseNode() and mxmlRetainNode() APIs for + reference-counted nodes. + - Added mxmlSetWrapMargin() to control the wrapping of XML + output. + + CHANGES IN Mini-XML 2.3 - Added two exceptions to the LGPL to support static diff --git a/Makefile.in b/Makefile.in index 39206cc..d631923 100644 --- a/Makefile.in +++ b/Makefile.in @@ -3,7 +3,7 @@ # # Makefile for Mini-XML, a small XML-like file parsing library. # -# Copyright 2003-2006 by Michael Sweet. +# Copyright 2003-2007 by Michael Sweet. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU Library General Public @@ -157,13 +157,13 @@ install-libmxml.a: $(INSTALL_LIB) libmxml.a $(BUILDROOT)$(libdir) $(RANLIB) $(BUILDROOT)$(libdir)/libmxml.a -install-libmxml.so.1.2: +install-libmxml.so.1.3: $(INSTALL_DIR) $(BUILDROOT)$(libdir) - $(INSTALL_LIB) libmxml.so.1.2 $(BUILDROOT)$(libdir) + $(INSTALL_LIB) libmxml.so.1.3 $(BUILDROOT)$(libdir) $(RM) $(BUILDROOT)$(libdir)/libmxml.so - $(LN) libmxml.so.1.2 $(BUILDROOT)$(libdir)/libmxml.so + $(LN) libmxml.so.1.3 $(BUILDROOT)$(libdir)/libmxml.so $(RM) $(BUILDROOT)$(libdir)/libmxml.so.1 - $(LN) libmxml.so.1.2 $(BUILDROOT)$(libdir)/libmxml.so.1 + $(LN) libmxml.so.1.3 $(BUILDROOT)$(libdir)/libmxml.so.1 install-libmxml.sl.1: $(INSTALL_DIR) $(BUILDROOT)$(libdir) @@ -195,10 +195,10 @@ uninstall: uninstall-$(LIBMXML) uninstall-libmxml.a uninstall-libmxml.a: $(RM) $(BUILDROOT)$(libdir)/libmxml.a -uninstall-libmxml.so.1.2: +uninstall-libmxml.so.1.3: $(RM) $(BUILDROOT)$(libdir)/libmxml.so $(RM) $(BUILDROOT)$(libdir)/libmxml.so.1 - $(RM) $(BUILDROOT)$(libdir)/libmxml.so.1.2 + $(RM) $(BUILDROOT)$(libdir)/libmxml.so.1.3 uninstall-libmxml.sl.1: $(RM) $(BUILDROOT)$(libdir)/libmxml.sl @@ -256,14 +256,14 @@ $(LIBOBJS): mxml.h # -# libmxml.so.1.2 +# libmxml.so.1.3 # -libmxml.so.1.2: $(LIBOBJS) - $(DSO) $(DSOFLAGS) -o libmxml.so.1.2 $(LIBOBJS) +libmxml.so.1.3: $(LIBOBJS) + $(DSO) $(DSOFLAGS) -o libmxml.so.1.3 $(LIBOBJS) $(RM) libmxml.so libmxml.so.1 - $(LN) libmxml.so.1.2 libmxml.so - $(LN) libmxml.so.1.2 libmxml.so.1 + $(LN) libmxml.so.1.3 libmxml.so + $(LN) libmxml.so.1.3 libmxml.so.1 # @@ -283,7 +283,7 @@ libmxml.sl.1: $(LIBOBJS) libmxml.1.dylib: $(LIBOBJS) $(DSO) $(DSOFLAGS) -o libmxml.1.dylib \ -install_name $(libdir)/libmxml.dylib \ - -current_version 1.2.0 \ + -current_version 1.3.0 \ -compatibility_version 1.0.0 \ $(LIBOBJS) $(RM) libmxml.dylib libmxml.1.dylib diff --git a/README b/README index 46a5bbe..891b0cb 100644 --- a/README +++ b/README @@ -1,11 +1,11 @@ -README - 08/10/2005 +README - 2007-04-17 ------------------- INTRODUCTION This README file describes the Mini-XML library version - 2.2.3. + 2.4. Mini-XML is a small XML parsing library that you can use to read XML and XML-like data files in your application without diff --git a/configure b/configure index b8e38b2..1d6ec36 100755 --- a/configure +++ b/configure @@ -1269,7 +1269,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_config_headers="$ac_config_headers config.h" -VERSION=2.3 +VERSION=2.4 cat >>confdefs.h <<_ACEOF #define MXML_VERSION "Mini-XML v$VERSION" @@ -3320,7 +3320,7 @@ echo $ECHO_N "checking for shared library support... $ECHO_C" >&6 SunOS* | UNIX_S*) echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-h,libmxml.so.1 -G -R\$(libdir) \$(OPTIM)" LDFLAGS="$LDFLAGS -R\$(libdir)" @@ -3338,7 +3338,7 @@ echo "${ECHO_T}yes" >&6 IRIX) echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi1.0,-soname,libmxml.so.1 -shared \$(OPTIM)" ;; @@ -3346,7 +3346,7 @@ echo "${ECHO_T}yes" >&6 OSF1* | Linux | GNU) echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-rpath,\$(libdir) -shared \$(OPTIM)" LDFLAGS="$LDFLAGS -Wl,-rpath,\$(libdir)" @@ -3355,7 +3355,7 @@ echo "${ECHO_T}yes" >&6 *BSD*) echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-R\$(libdir) -shared \$(OPTIM)" LDFLAGS="$LDFLAGS -Wl,-R\$(libdir)" diff --git a/configure.in b/configure.in index da3faf1..47e1ee1 100644 --- a/configure.in +++ b/configure.in @@ -3,7 +3,7 @@ dnl "$Id$" dnl dnl Configuration script for Mini-XML, a small XML-like file parsing library. dnl -dnl Copyright 2003-2006 by Michael Sweet. +dnl Copyright 2003-2007 by Michael Sweet. dnl dnl This program is free software; you can redistribute it and/or dnl modify it under the terms of the GNU Library General Public @@ -23,7 +23,7 @@ dnl Set the name of the config header file... AC_CONFIG_HEADER(config.h) dnl Version number... -VERSION=2.3 +VERSION=2.4 AC_SUBST(VERSION) AC_DEFINE_UNQUOTED(MXML_VERSION, "Mini-XML v$VERSION") @@ -120,7 +120,7 @@ if test x$enable_shared = xyes; then case "$uname" in SunOS* | UNIX_S*) AC_MSG_RESULT(yes) - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-h,libmxml.so.1 -G -R\$(libdir) \$(OPTIM)" LDFLAGS="$LDFLAGS -R\$(libdir)" @@ -136,14 +136,14 @@ if test x$enable_shared = xyes; then IRIX) AC_MSG_RESULT(yes) - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi1.0,-soname,libmxml.so.1 -shared \$(OPTIM)" ;; OSF1* | Linux | GNU) AC_MSG_RESULT(yes) - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-rpath,\$(libdir) -shared \$(OPTIM)" LDFLAGS="$LDFLAGS -Wl,-rpath,\$(libdir)" @@ -151,7 +151,7 @@ if test x$enable_shared = xyes; then *BSD*) AC_MSG_RESULT(yes) - LIBMXML="libmxml.so.1.2" + LIBMXML="libmxml.so.1.3" DSO="\$(CC)" DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-R\$(libdir) -shared \$(OPTIM)" LDFLAGS="$LDFLAGS -Wl,-R\$(libdir)" diff --git a/doc/reference.html b/doc/reference.html index 3bd5cff..7234c5b 100644 --- a/doc/reference.html +++ b/doc/reference.html @@ -2,7 +2,7 @@ Documentation - +