summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkwaclaw <kwaclaw>2006-03-06 14:24:36 +0000
committerkwaclaw <kwaclaw>2006-03-06 14:24:36 +0000
commitaad99dbb0be0aed587c7b47f8f14fcdc54dee5d9 (patch)
tree1f99b02855f4a59a7e88e705517aa5b09f5b4f5a
parent88511ede17cdba20e5090ba76ac90333f3399eb0 (diff)
downloadlibexpat-aad99dbb0be0aed587c7b47f8f14fcdc54dee5d9.tar.gz
Applied patch #1437840. Fix for bugs #1414066 and #1033965 .
-rw-r--r--Makefile.in9
-rw-r--r--lib/expat_external.h2
-rw-r--r--tests/minicheck.h7
-rw-r--r--tests/runtests.c2
4 files changed, 13 insertions, 7 deletions
diff --git a/Makefile.in b/Makefile.in
index 97f2051..296d562 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -44,9 +44,7 @@ MANFILE = $(srcdir)/doc/xmlwf.1
APIHEADER = $(srcdir)/lib/expat.h $(srcdir)/lib/expat_external.h
LIBRARY = libexpat.la
-ifndef INSTALL_ROOT
INSTALL_ROOT=$(DESTDIR)
-endif
default: buildlib xmlwf/xmlwf
@@ -103,6 +101,7 @@ mkdir-init:
done
CC = @CC@
+CXX = @CXX@
LIBTOOL = @LIBTOOL@
INCLUDES = -I$(srcdir)/lib -I.
@@ -158,10 +157,10 @@ tests/chardata.o: tests/chardata.c tests/chardata.h
tests/minicheck.o: tests/minicheck.c tests/minicheck.h
tests/runtests.o: tests/runtests.c tests/chardata.h
tests/runtests: tests/runtests.o tests/chardata.o tests/minicheck.o $(LIBRARY)
- $(LINK_EXE) $^
+ $(LINK_EXE) tests/runtests.o tests/chardata.o tests/minicheck.o $(LIBRARY)
tests/runtestspp.o: tests/runtestspp.cpp tests/runtests.c tests/chardata.h
tests/runtestspp: tests/runtestspp.o tests/chardata.o tests/minicheck.o $(LIBRARY)
- $(LINK_CXX_EXE) $^
+ $(LINK_CXX_EXE) tests/runtestspp.o tests/chardata.o tests/minicheck.o $(LIBRARY)
tests/xmlts.zip:
wget --output-document=tests/xmlts.zip \
@@ -173,7 +172,7 @@ tests/XML-Test-Suite: tests/xmlts.zip
run-xmltest: xmlwf/xmlwf tests/XML-Test-Suite
tests/xmltest.sh
-.SUFFIXES: .c .lo .o
+.SUFFIXES: .c .cpp .lo .o
.cpp.o:
$(CXXCOMPILE) -o $@ -c $<
diff --git a/lib/expat_external.h b/lib/expat_external.h
index 8a2d708..df9e893 100644
--- a/lib/expat_external.h
+++ b/lib/expat_external.h
@@ -36,7 +36,7 @@
#ifndef XMLCALL
#if defined(XML_USE_MSC_EXTENSIONS)
#define XMLCALL __cdecl
-#elif defined(__GNUC__) && defined(__i386)
+#elif defined(__GNUC__) && defined(__i386) && !defined(__INTEL_COMPILER)
#define XMLCALL __attribute__((cdecl))
#else
/* For any platform which uses this definition and supports more than
diff --git a/tests/minicheck.h b/tests/minicheck.h
index c8a1d5e..33ce396 100644
--- a/tests/minicheck.h
+++ b/tests/minicheck.h
@@ -18,6 +18,13 @@ extern "C" {
#define CK_NORMAL 1
#define CK_VERBOSE 2
+/* Workaround for Tru64 Unix systems where the C compiler has a working
+ __func__, but the C++ compiler only has a working __FUNCTION__. This
+ could be fixed in configure.in, but it's not worth it right now. */
+#if defined(__osf__) && defined(__cplusplus)
+#define __func__ __FUNCTION__
+#endif
+
#define START_TEST(testname) static void testname(void) { \
_check_set_test_info(__func__, __FILE__, __LINE__); \
{
diff --git a/tests/runtests.c b/tests/runtests.c
index 088fe6f..a57f89b 100644
--- a/tests/runtests.c
+++ b/tests/runtests.c
@@ -1176,7 +1176,7 @@ external_entity_handler(XML_Parser parser,
const XML_Char *systemId,
const XML_Char *publicId)
{
- int callno = 1 + (int)XML_GetUserData(parser);
+ long callno = 1 + (long)XML_GetUserData(parser);
char *text;
XML_Parser p2;