changeset 110414:26a70f91e378

Fix MSDOS build broken by revno 101403, support MSDOS build with libxml2. config.bat: Detect that libxml2 is installed and if so, build with it. src/deps.mk (xml.o): Add dependencies. msdos/sed1v2.inp (LIBXML2_LIBS, LIBXML2_CFLAGS): Edit to empty.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 18 Sep 2010 16:13:09 +0200
parents 91f9e6617184 (current diff) e9bd1f306e02 (diff)
children 5bbd74302c45
files src/ChangeLog
diffstat 6 files changed, 42 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Sep 18 13:59:25 2010 +0000
+++ b/ChangeLog	Sat Sep 18 16:13:09 2010 +0200
@@ -1,3 +1,8 @@
+2010-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+	* config.bat: Detect that libxml2 is installed and if so, build
+	with it.
+
 2010-09-13  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
 	* configure.in (HAVE_LIBXML2): Check that the libxml2 we found can
--- a/config.bat	Sat Sep 18 13:59:25 2010 +0000
+++ b/config.bat	Sat Sep 18 16:13:09 2010 +0200
@@ -38,6 +38,7 @@
 set nodebug=
 set djgpp_ver=
 set sys_malloc=
+set libxml=
 if "%1" == "" goto usage
 rem   ----------------------------------------------------------------------
 rem   See if their environment is large enough.  We need 28 bytes.
@@ -175,6 +176,24 @@
 rem For details see lisp.h where it defines USE_LSB_TAG
 echo #define NO_DECL_ALIGN >>config.h2
 :alignOk
+Rem See if they have libxml2 later than v2.2.0 installed
+Echo Checking whether libxml2 v2.2.1 or later is installed ...
+rm -f junk.c junk.o junk junk.exe
+rem Use djecho here because we need to quote brackets
+djecho "#include <libxml/xmlversion.h>"             >junk.c
+djecho "int main()"                                 >>junk.c
+djecho "{return (LIBXML_VERSION > 20200 ? 0 : 1);}" >>junk.c
+redir -o Nul -eo gcc -I/dev/env/DJDIR/include/libxml2 -o junk junk.c
+if not exist junk Goto xmlDone
+if not exist junk.exe coff2exe junk
+junk
+If ErrorLevel 1 Goto xmlDone
+Echo Configuring with libxml2 ...
+sed -e "/#undef HAVE_LIBXML2/s/^.*$/#define HAVE_LIBXML2 1/" <config.h2 >config.h3
+mv config.h3 config.h2
+set libxml=1
+:xmlDone
+rm -f junk.c junk junk.exe
 Rem See if they requested a SYSTEM_MALLOC build
 if "%sys_malloc%" == "" Goto cfgDone
 rm -f config.tmp
@@ -213,6 +232,12 @@
 sed -e "/^LDFLAGS *=/s/=/=-s/" <makefile.tmp >Makefile
 rm -f makefile.tmp
 :src6
+
+if "%libxml%" == "" goto src7
+sed -e "/^LIBXML2_LIBS *=/s/=/= -lxml2 -lz -liconv/" <Makefile >makefile.tmp
+sed -e "/^LIBXML2_CFLAGS *=/s|=|= -I/dev/env/DJDIR/include/libxml2|" <makefile.tmp >Makefile
+rm -f makefile.tmp
+:src7
 cd ..
 rem   ----------------------------------------------------------------------
 Echo Configuring the library source directory...
@@ -289,6 +314,7 @@
 set nodebug=
 set djgpp_ver=
 set sys_malloc=
+set libxml=
 
 goto skipArchTag
    arch-tag: 2d2fed23-4dc6-4006-a2e4-49daf0031f33
--- a/msdos/ChangeLog	Sat Sep 18 13:59:25 2010 +0000
+++ b/msdos/ChangeLog	Sat Sep 18 16:13:09 2010 +0200
@@ -1,3 +1,7 @@
+2010-09-17  Eli Zaretskii  <eliz@gnu.org>
+
+	* sed1v2.inp (LIBXML2_LIBS, LIBXML2_CFLAGS): Edit to empty.
+
 2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 
 	* sedleim.inp (RUN-EMACS): Don't use --multibyte.
--- a/msdos/sed1v2.inp	Sat Sep 18 13:59:25 2010 +0000
+++ b/msdos/sed1v2.inp	Sat Sep 18 16:13:09 2010 +0200
@@ -90,6 +90,8 @@
 /^RSVG_CFLAGS *=/s/@RSVG_CFLAGS@//
 /^IMAGEMAGICK_LIBS *=/s/@IMAGEMAGICK_LIBS@//
 /^IMAGEMAGICK_CFLAGS *=/s/@IMAGEMAGICK_CFLAGS@//
+/^LIBXML2_LIBS *=/s/@LIBXML2_LIBS@//
+/^LIBXML2_CFLAGS *=/s/@LIBXML2_CFLAGS@//
 /^WIDGET_OBJ *=/s/@WIDGET_OBJ@//
 /^CYGWIN_OBJ *=/s/@CYGWIN_OBJ@//
 /^MSDOS_OBJ *=/s/= */= dosfns.o msdos.o w16select.o/
--- a/src/ChangeLog	Sat Sep 18 13:59:25 2010 +0000
+++ b/src/ChangeLog	Sat Sep 18 16:13:09 2010 +0200
@@ -1,3 +1,7 @@
+2010-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+	* deps.mk (xml.o): Add dependencies.
+
 2010-09-18  Eli Zaretskii  <eliz@gnu.org>
 
 	* xdisp.c (Fcurrent_bidi_paragraph_direction): Call
--- a/src/deps.mk	Sat Sep 18 13:59:25 2010 +0000
+++ b/src/deps.mk	Sat Sep 18 16:13:09 2010 +0200
@@ -230,6 +230,7 @@
    charset.h keyboard.h $(srcdir)/../lwlib/lwlib.h blockinput.h atimer.h \
    systime.h gtkutil.h msdos.h coding.h menu.h lisp.h $(config_h) composite.h \
    keymap.h sysselect.h
+xml.o: xml.c buffer.h lisp.h $(config_h)
 xterm.o: xterm.c xterm.h termhooks.h termopts.h termchar.h window.h buffer.h \
    dispextern.h frame.h disptab.h blockinput.h atimer.h systime.h syssignal.h \
    keyboard.h emacs-icon.h character.h charset.h ccl.h fontset.h composite.h \