summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--games-puzzle/enigma/ChangeLog6
-rw-r--r--games-puzzle/enigma/enigma-1.01.ebuild5
-rw-r--r--games-puzzle/enigma/files/enigma-1.01-xerces-c.patch49
3 files changed, 57 insertions, 3 deletions
diff --git a/games-puzzle/enigma/ChangeLog b/games-puzzle/enigma/ChangeLog
index 428792cc8f91..e0ba6b648339 100644
--- a/games-puzzle/enigma/ChangeLog
+++ b/games-puzzle/enigma/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for games-puzzle/enigma
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-puzzle/enigma/ChangeLog,v 1.40 2008/08/18 05:47:19 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-puzzle/enigma/ChangeLog,v 1.41 2008/11/18 21:14:32 mr_bones_ Exp $
+
+ 18 Nov 2008; Michael Sterrett <mr_bones_@gentoo.org>
+ +files/enigma-1.01-xerces-c.patch, enigma-1.01.ebuild:
+ add patch for building with xerces-c-3 from Frédéric COIFFIER via bug #242916
18 Aug 2008; Michael Sterrett <mr_bones_@gentoo.org> enigma-1.01.ebuild:
new tarball from upstream for 64-bit support (bug #235076)
diff --git a/games-puzzle/enigma/enigma-1.01.ebuild b/games-puzzle/enigma/enigma-1.01.ebuild
index 047adab6594a..034dc37941af 100644
--- a/games-puzzle/enigma/enigma-1.01.ebuild
+++ b/games-puzzle/enigma/enigma-1.01.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-puzzle/enigma/enigma-1.01.ebuild,v 1.7 2008/08/18 05:47:19 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-puzzle/enigma/enigma-1.01.ebuild,v 1.8 2008/11/18 21:14:32 mr_bones_ Exp $
inherit autotools eutils games
@@ -30,7 +30,8 @@ src_unpack() {
cp /usr/share/gettext/config.rpath .
epatch \
"${FILESDIR}"/${P}-autotools.patch \
- "${FILESDIR}"/${P}-gcc43.patch
+ "${FILESDIR}"/${P}-gcc43.patch \
+ "${FILESDIR}"/${P}-xerces-c.patch
eautoreconf
}
diff --git a/games-puzzle/enigma/files/enigma-1.01-xerces-c.patch b/games-puzzle/enigma/files/enigma-1.01-xerces-c.patch
new file mode 100644
index 000000000000..b17ad8e76e4f
--- /dev/null
+++ b/games-puzzle/enigma/files/enigma-1.01-xerces-c.patch
@@ -0,0 +1,49 @@
+--- configure.ac 2008-11-18 14:09:53.724778996 +0500
++++ configure.ac3 2008-11-18 14:42:30.322032537 +0500
+@@ -167,14 +167,14 @@ dnl ------------------------------------
+ dnl Check for xerces
+ dnl ----------------------------------------
+ if test "$MINGW32" = yes; then
+- AC_MSG_CHECKING([for Xerces 3.0 experimental version])
+- AC_EGREP_HEADER([gXercesMajVersion = 3],[xercesc/util/XercesVersion.hpp],
++ AC_MSG_CHECKING([for Xerces 3 version])
++ AC_EGREP_HEADER([XERCES_VERSION_MAJOR 3],[xercesc/util/XercesVersion.hpp],
+ [AC_MSG_RESULT([found])],
+ [AC_MSG_ERROR([not found])])
+ AC_CHECK_LIB(xerces, main,,[AC_MSG_ERROR([xerces is required to compile Enigma])])
+ else
+- AC_MSG_CHECKING([for Xerces 3.0 experimental version])
+- AC_EGREP_HEADER([gXercesMajVersion = 3],[xercesc/util/XercesVersion.hpp],
++ AC_MSG_CHECKING([for Xerces 3 version])
++ AC_EGREP_HEADER([XERCES_VERSION_MAJOR 3],[xercesc/util/XercesVersion.hpp],
+ xerces3exp="yes",
+ xerces3exp="no")
+ if test "x$xerces3exp" = xyes; then
+--- src/lev/ScoreManager.cc
++++ src/lev/ScoreManager.cc
+@@ -65,15 +65,23 @@
+ class ScoreDomSerFilter : public DOMWriterFilter {
+ #endif
+ public:
++#if _XERCES_VERSION >= 30000
++ virtual DOMNodeFilter::FilterAction acceptNode(const DOMNode *node) const;
++#else
+ virtual short acceptNode(const DOMNode *node) const;
++#endif
+ virtual unsigned long getWhatToShow () const {
+ return DOMNodeFilter::SHOW_ALL;
+ }
+ virtual void setWhatToShow (unsigned long toShow) {}
+ };
+-
++
++#if _XERCES_VERSION >= 30000
++ DOMNodeFilter::FilterAction ScoreDomSerFilter::acceptNode(const DOMNode *node) const {
++#else
+ short ScoreDomSerFilter::acceptNode(const DOMNode *node) const {
+- if (node->getNodeType () == DOMNode::ELEMENT_NODE &&
++#endif
++ if (node->getNodeType () == DOMNode::ELEMENT_NODE &&
+ std::string(XMLtoUtf8(node->getNodeName()).c_str()) == "level") {
+ const DOMElement *e = dynamic_cast<const DOMElement *>(node);
+ std::string id = XMLtoUtf8(e->getAttribute(Utf8ToXML("id").x_str())).c_str();