Description: Use the packaged tinyxml2
Author: Stephen Kitt <skitt@debian.org>
Last-Update: 2023-01-28
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/BasiliskII/src/Unix/configure.ac
+++ b/BasiliskII/src/Unix/configure.ac
@@ -1905,6 +1905,13 @@
 CFLAGS="$CFLAGS -fwrapv"
 CXXFLAGS="$CXXFLAGS -fwrapv"
 
+dnl Check for tinyxml2
+PKG_CHECK_MODULES([tinyxml2], [tinyxml2], [
+  CFLAGS="$CFLAGS $tinyxml2_CFLAGS"
+  CXXFLAGS="$CXXFLAGS $tinyxml2_CFLAGS"
+  LIBS="$LIBS $tinyxml2_LIBS"
+])
+
 dnl Generate Makefile.
 AC_SUBST(DEFINES)
 AC_SUBST(SYSSRCS)
--- a/BasiliskII/src/Unix/disk_sparsebundle.cpp
+++ b/BasiliskII/src/Unix/disk_sparsebundle.cpp
@@ -19,7 +19,7 @@
  */
 
 #include "disk_unix.h"
-#include "tinyxml2.h"
+#include <tinyxml2.h>
 
 #include <errno.h>
 #include <limits.h>
@@ -180,7 +180,7 @@
 
 
 
-using tinyxml2::XML_NO_ERROR;
+using tinyxml2::XML_SUCCESS;
 using tinyxml2::XMLElement;
 
 // Simplistic plist parser
@@ -188,7 +188,7 @@
 	plist() : doc(true, tinyxml2::COLLAPSE_WHITESPACE) { }
 	
 	bool open(const char *path) {
-		if (doc.LoadFile(path) != XML_NO_ERROR)
+		if (doc.LoadFile(path) != XML_SUCCESS)
 			return false;
 		tinyxml2::XMLHandle hnd(&doc);
 		dict = hnd.FirstChildElement("plist").FirstChildElement("dict")
--- a/BasiliskII/src/Unix/Makefile.in
+++ b/BasiliskII/src/Unix/Makefile.in
@@ -54,7 +54,6 @@
     timer_unix.cpp ../adb.cpp ../serial.cpp ../ether.cpp \
     ../sony.cpp ../disk.cpp ../cdrom.cpp ../scsi.cpp ../video.cpp \
     ../audio.cpp ../extfs.cpp disk_sparsebundle.cpp \
-	tinyxml2.cpp \
     ../user_strings.cpp user_strings_unix.cpp sshpty.c strlcpy.c rpc_unix.cpp \
     $(XPLAT_SRCS) $(SYSSRCS) $(CPUSRCS) $(SLIRP_SRCS)
 APP_FLAVOR ?=
