changeset 1508:2e1e5dae8f4c trunk

[svn] - prepare to add an optional libxml2 dependency
author nenolod
date Sun, 06 Aug 2006 01:54:32 -0700
parents 0c5fdcf3f947
children ae369659010a
files ChangeLog m4/libxml.m4 mk/rules.mk.in
diffstat 3 files changed, 263 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sun Aug 06 01:53:29 2006 -0700
+++ b/ChangeLog	Sun Aug 06 01:54:32 2006 -0700
@@ -1,3 +1,76 @@
+2006-08-06 08:53:29 +0000  William Pitcock <nenolod@nenolod.net>
+  revision [1928]
+  - incomplete stuff
+  
+
+  Changes:        Modified:
+  +44 -0          trunk/Plugins/Visualization/paranormal/pn/Makefile  
+  +55 -0          trunk/Plugins/Visualization/paranormal/pn/pn.h  
+  +312 -0         trunk/Plugins/Visualization/paranormal/pn/pnactuator.c  
+  +91 -0          trunk/Plugins/Visualization/paranormal/pn/pnactuator.h  
+  +109 -0         trunk/Plugins/Visualization/paranormal/pn/pnactuatorfactory.c  
+  +33 -0          trunk/Plugins/Visualization/paranormal/pn/pnactuatorfactory.h  
+  +120 -0         trunk/Plugins/Visualization/paranormal/pn/pnactuatorlist.c  
+  +59 -0          trunk/Plugins/Visualization/paranormal/pn/pnactuatorlist.h  
+  +292 -0         trunk/Plugins/Visualization/paranormal/pn/pnaudiodata.c  
+  +101 -0         trunk/Plugins/Visualization/paranormal/pn/pnaudiodata.h  
+  +338 -0         trunk/Plugins/Visualization/paranormal/pn/pnblur.c  
+  +56 -0          trunk/Plugins/Visualization/paranormal/pn/pnblur.h  
+  +190 -0         trunk/Plugins/Visualization/paranormal/pn/pnbooleanoption.c  
+  +60 -0          trunk/Plugins/Visualization/paranormal/pn/pnbooleanoption.h  
+  +44 -0          trunk/Plugins/Visualization/paranormal/pn/pnbuiltins.c  
+  +32 -0          trunk/Plugins/Visualization/paranormal/pn/pnbuiltins.h  
+  +0 -0           trunk/Plugins/Visualization/paranormal/pn/pnconfig.h  
+  +300 -0         trunk/Plugins/Visualization/paranormal/pn/pncontainer.c  
+  +82 -0          trunk/Plugins/Visualization/paranormal/pn/pncontainer.h  
+  +95 -0          trunk/Plugins/Visualization/paranormal/pn/pncpu.c  
+  +33 -0          trunk/Plugins/Visualization/paranormal/pn/pncpu.h  
+  +423 -0         trunk/Plugins/Visualization/paranormal/pn/pndisplacement.c  
+  +71 -0          trunk/Plugins/Visualization/paranormal/pn/pndisplacement.h  
+  +440 -0         trunk/Plugins/Visualization/paranormal/pn/pndistortion.c  
+  +85 -0          trunk/Plugins/Visualization/paranormal/pn/pndistortion.h  
+  +64 -0          trunk/Plugins/Visualization/paranormal/pn/pnerror.c  
+  +30 -0          trunk/Plugins/Visualization/paranormal/pn/pnerror.h  
+  +436 -0         trunk/Plugins/Visualization/paranormal/pn/pnflip.c  
+  +61 -0          trunk/Plugins/Visualization/paranormal/pn/pnflip.h  
+  +243 -0         trunk/Plugins/Visualization/paranormal/pn/pnfloatoption.c  
+  +73 -0          trunk/Plugins/Visualization/paranormal/pn/pnfloatoption.h  
+  +29 -0          trunk/Plugins/Visualization/paranormal/pn/pngtk.h  
+  +683 -0         trunk/Plugins/Visualization/paranormal/pn/pnimage.c  
+  +136 -0         trunk/Plugins/Visualization/paranormal/pn/pnimage.h  
+  +188 -0         trunk/Plugins/Visualization/paranormal/pn/pnimagecontext.c  
+  +61 -0          trunk/Plugins/Visualization/paranormal/pn/pnimagecontext.h  
+  +43 -0          trunk/Plugins/Visualization/paranormal/pn/pninit.c  
+  +30 -0          trunk/Plugins/Visualization/paranormal/pn/pninit.h  
+  +243 -0         trunk/Plugins/Visualization/paranormal/pn/pnintegeroption.c  
+  +73 -0          trunk/Plugins/Visualization/paranormal/pn/pnintegeroption.h  
+  +207 -0         trunk/Plugins/Visualization/paranormal/pn/pnlistoption.c  
+  +61 -0          trunk/Plugins/Visualization/paranormal/pn/pnlistoption.h  
+  +210 -0         trunk/Plugins/Visualization/paranormal/pn/pnobject.c  
+  +91 -0          trunk/Plugins/Visualization/paranormal/pn/pnobject.h  
+  +112 -0         trunk/Plugins/Visualization/paranormal/pn/pnoption.c  
+  +59 -0          trunk/Plugins/Visualization/paranormal/pn/pnoption.h  
+  +26 -0          trunk/Plugins/Visualization/paranormal/pn/pnoptionwidget.h  
+  +339 -0         trunk/Plugins/Visualization/paranormal/pn/pnrotozoom.c  
+  +70 -0          trunk/Plugins/Visualization/paranormal/pn/pnrotozoom.h  
+  +316 -0         trunk/Plugins/Visualization/paranormal/pn/pnscope.c  
+  +86 -0          trunk/Plugins/Visualization/paranormal/pn/pnscope.h  
+  +278 -0         trunk/Plugins/Visualization/paranormal/pn/pnscript.c  
+  +102 -0         trunk/Plugins/Visualization/paranormal/pn/pnscript.h  
+  +551 -0         trunk/Plugins/Visualization/paranormal/pn/pnscriptparser.y  
+  +185 -0         trunk/Plugins/Visualization/paranormal/pn/pnstringoption.c  
+  +64 -0          trunk/Plugins/Visualization/paranormal/pn/pnstringoption.h  
+  +168 -0         trunk/Plugins/Visualization/paranormal/pn/pnsymboltable.c  
+  +83 -0          trunk/Plugins/Visualization/paranormal/pn/pnsymboltable.h  
+  +180 -0         trunk/Plugins/Visualization/paranormal/pn/pntestactuator.c  
+  +61 -0          trunk/Plugins/Visualization/paranormal/pn/pntestactuator.h  
+  +178 -0         trunk/Plugins/Visualization/paranormal/pn/pnuserobject.c  
+  +91 -0          trunk/Plugins/Visualization/paranormal/pn/pnuserobject.h  
+  +323 -0         trunk/Plugins/Visualization/paranormal/pn/pnvis.c  
+  +80 -0          trunk/Plugins/Visualization/paranormal/pn/pnvis.h  
+  +33 -0          trunk/Plugins/Visualization/paranormal/pn/pnxml.h  
+
+
 2006-08-06 06:43:14 +0000  Stephen Sokolow <deitarion@gmail.com>
   revision [1926]
   Fix the test for whether a notification is necessary
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/m4/libxml.m4	Sun Aug 06 01:54:32 2006 -0700
@@ -0,0 +1,188 @@
+# Configure paths for LIBXML2
+# Mike Hommey 2004-06-19
+# use CPPFLAGS instead of CFLAGS
+# Toshio Kuratomi 2001-04-21
+# Adapted from:
+# Configure paths for GLIB
+# Owen Taylor     97-11-3
+
+dnl AM_PATH_XML2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl Test for XML, and define XML_CPPFLAGS and XML_LIBS
+dnl
+AC_DEFUN([AM_PATH_XML2],[ 
+AC_ARG_WITH(xml-prefix,
+            [  --with-xml-prefix=PFX   Prefix where libxml is installed (optional)],
+            xml_config_prefix="$withval", xml_config_prefix="")
+AC_ARG_WITH(xml-exec-prefix,
+            [  --with-xml-exec-prefix=PFX Exec prefix where libxml is installed (optional)],
+            xml_config_exec_prefix="$withval", xml_config_exec_prefix="")
+AC_ARG_ENABLE(xmltest,
+              [  --disable-xmltest       Do not try to compile and run a test LIBXML program],,
+              enable_xmltest=yes)
+
+  if test x$xml_config_exec_prefix != x ; then
+     xml_config_args="$xml_config_args"
+     if test x${XML2_CONFIG+set} != xset ; then
+        XML2_CONFIG=$xml_config_exec_prefix/bin/xml2-config
+     fi
+  fi
+  if test x$xml_config_prefix != x ; then
+     xml_config_args="$xml_config_args --prefix=$xml_config_prefix"
+     if test x${XML2_CONFIG+set} != xset ; then
+        XML2_CONFIG=$xml_config_prefix/bin/xml2-config
+     fi
+  fi
+
+  AC_PATH_PROG(XML2_CONFIG, xml2-config, no)
+  min_xml_version=ifelse([$1], ,2.0.0,[$1])
+  AC_MSG_CHECKING(for libxml - version >= $min_xml_version)
+  no_xml=""
+  if test "$XML2_CONFIG" = "no" ; then
+    no_xml=yes
+  else
+    XML_CPPFLAGS=`$XML2_CONFIG $xml_config_args --cflags`
+    XML_LIBS=`$XML2_CONFIG $xml_config_args --libs`
+    xml_config_major_version=`$XML2_CONFIG $xml_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+    xml_config_minor_version=`$XML2_CONFIG $xml_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+    xml_config_micro_version=`$XML2_CONFIG $xml_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+    if test "x$enable_xmltest" = "xyes" ; then
+      ac_save_CPPFLAGS="$CPPFLAGS"
+      ac_save_LIBS="$LIBS"
+      CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS"
+      LIBS="$XML_LIBS $LIBS"
+dnl
+dnl Now check if the installed libxml is sufficiently new.
+dnl (Also sanity checks the results of xml2-config to some extent)
+dnl
+      rm -f conf.xmltest
+      AC_TRY_RUN([
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <libxml/xmlversion.h>
+
+int 
+main()
+{
+  int xml_major_version, xml_minor_version, xml_micro_version;
+  int major, minor, micro;
+  char *tmp_version;
+
+  system("touch conf.xmltest");
+
+  /* Capture xml2-config output via autoconf/configure variables */
+  /* HP/UX 9 (%@#!) writes to sscanf strings */
+  tmp_version = (char *)strdup("$min_xml_version");
+  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+     printf("%s, bad version string from xml2-config\n", "$min_xml_version");
+     exit(1);
+   }
+   free(tmp_version);
+
+   /* Capture the version information from the header files */
+   tmp_version = (char *)strdup(LIBXML_DOTTED_VERSION);
+   if (sscanf(tmp_version, "%d.%d.%d", &xml_major_version, &xml_minor_version, &xml_micro_version) != 3) {
+     printf("%s, bad version string from libxml includes\n", "LIBXML_DOTTED_VERSION");
+     exit(1);
+   }
+   free(tmp_version);
+
+ /* Compare xml2-config output to the libxml headers */
+  if ((xml_major_version != $xml_config_major_version) ||
+      (xml_minor_version != $xml_config_minor_version) ||
+      (xml_micro_version != $xml_config_micro_version))
+    {
+      printf("*** libxml header files (version %d.%d.%d) do not match\n",
+         xml_major_version, xml_minor_version, xml_micro_version);
+      printf("*** xml2-config (version %d.%d.%d)\n",
+         $xml_config_major_version, $xml_config_minor_version, $xml_config_micro_version);
+      return 1;
+    } 
+/* Compare the headers to the library to make sure we match */
+  /* Less than ideal -- doesn't provide us with return value feedback, 
+   * only exits if there's a serious mismatch between header and library.
+   */
+    LIBXML_TEST_VERSION;
+
+    /* Test that the library is greater than our minimum version */
+    if ((xml_major_version > major) ||
+        ((xml_major_version == major) && (xml_minor_version > minor)) ||
+        ((xml_major_version == major) && (xml_minor_version == minor) &&
+        (xml_micro_version >= micro)))
+      {
+        return 0;
+       }
+     else
+      {
+        printf("\n*** An old version of libxml (%d.%d.%d) was found.\n",
+               xml_major_version, xml_minor_version, xml_micro_version);
+        printf("*** You need a version of libxml newer than %d.%d.%d. The latest version of\n",
+           major, minor, micro);
+        printf("*** libxml is always available from ftp://ftp.xmlsoft.org.\n");
+        printf("***\n");
+        printf("*** If you have already installed a sufficiently new version, this error\n");
+        printf("*** probably means that the wrong copy of the xml2-config shell script is\n");
+        printf("*** being found. The easiest way to fix this is to remove the old version\n");
+        printf("*** of LIBXML, but you can also set the XML2_CONFIG environment to point to the\n");
+        printf("*** correct copy of xml2-config. (In this case, you will have to\n");
+        printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
+        printf("*** so that the correct libraries are found at run-time))\n");
+    }
+  return 1;
+}
+],, no_xml=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+       CPPFLAGS="$ac_save_CPPFLAGS"
+       LIBS="$ac_save_LIBS"
+     fi
+  fi
+
+  if test "x$no_xml" = x ; then
+     AC_MSG_RESULT(yes (version $xml_config_major_version.$xml_config_minor_version.$xml_config_micro_version))
+     ifelse([$2], , :, [$2])     
+  else
+     AC_MSG_RESULT(no)
+     if test "$XML2_CONFIG" = "no" ; then
+       echo "*** The xml2-config script installed by LIBXML could not be found"
+       echo "*** If libxml was installed in PREFIX, make sure PREFIX/bin is in"
+       echo "*** your path, or set the XML2_CONFIG environment variable to the"
+       echo "*** full path to xml2-config."
+     else
+       if test -f conf.xmltest ; then
+        :
+       else
+          echo "*** Could not run libxml test program, checking why..."
+          CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS"
+          LIBS="$LIBS $XML_LIBS"
+          AC_TRY_LINK([
+#include <libxml/xmlversion.h>
+#include <stdio.h>
+],      [ LIBXML_TEST_VERSION; return 0;],
+        [ echo "*** The test program compiled, but did not run. This usually means"
+          echo "*** that the run-time linker is not finding LIBXML or finding the wrong"
+          echo "*** version of LIBXML. If it is not finding LIBXML, you'll need to set your"
+          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
+          echo "*** is required on your system"
+          echo "***"
+          echo "*** If you have an old version installed, it is best to remove it, although"
+          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ],
+        [ echo "*** The test program failed to compile or link. See the file config.log for the"
+          echo "*** exact error that occured. This usually means LIBXML was incorrectly installed"
+          echo "*** or that you have moved LIBXML since it was installed. In the latter case, you"
+          echo "*** may want to edit the xml2-config script: $XML2_CONFIG" ])
+          CPPFLAGS="$ac_save_CPPFLAGS"
+          LIBS="$ac_save_LIBS"
+       fi
+     fi
+
+     XML_CPPFLAGS=""
+     XML_LIBS=""
+     ifelse([$3], , :, [$3])
+  fi
+  AC_SUBST(XML_CPPFLAGS)
+  AC_SUBST(XML_LIBS)
+  rm -f conf.xmltest
+])
--- a/mk/rules.mk.in	Sun Aug 06 01:53:29 2006 -0700
+++ b/mk/rules.mk.in	Sun Aug 06 01:54:32 2006 -0700
@@ -319,3 +319,5 @@
 SUBDIR_GUESS ?= @SUBDIR_GUESS@
 LIBNOTIFY_CFLAGS ?= @LIBNOTIFY_CFLAGS@
 LIBNOTIFY_LIBS ?= @LIBNOTIFY_LIBS@
+XML_CFLAGS ?= @XML_CFLAGS@
+XML_LIBS ?= @XML_LIBS@