diff options
author | Tiziano Müller <dev-zero@gentoo.org> | 2012-08-23 13:19:38 +0000 |
---|---|---|
committer | Tiziano Müller <dev-zero@gentoo.org> | 2012-08-23 13:19:38 +0000 |
commit | f08a774c5c517522efcc014dad80109f79a6fafb (patch) | |
tree | 72c134d5d32ff0351ee2899f0d66d4339c5f6964 /dev-cpp/libxsd-frontend | |
parent | Depend on new path for neatx, block older versions (diff) | |
download | gentoo-2-f08a774c5c517522efcc014dad80109f79a6fafb.tar.gz gentoo-2-f08a774c5c517522efcc014dad80109f79a6fafb.tar.bz2 gentoo-2-f08a774c5c517522efcc014dad80109f79a6fafb.zip |
Fix compatibility with boost >=1.49.0 (filesystem v2 gone), bug #424761.
(Portage version: 2.1.11.9/cvs/Linux x86_64)
Diffstat (limited to 'dev-cpp/libxsd-frontend')
4 files changed, 278 insertions, 9 deletions
diff --git a/dev-cpp/libxsd-frontend/ChangeLog b/dev-cpp/libxsd-frontend/ChangeLog index d7e8b8c5c904..36bf5175e86c 100644 --- a/dev-cpp/libxsd-frontend/ChangeLog +++ b/dev-cpp/libxsd-frontend/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-cpp/libxsd-frontend # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/ChangeLog,v 1.3 2012/06/01 20:50:58 dev-zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/ChangeLog,v 1.4 2012/08/23 13:19:38 dev-zero Exp $ + + 23 Aug 2012; Tiziano Müller <dev-zero@gentoo.org> + +files/1.17.0-boost-filesystem-v2-deprecation.patch, + libxsd-frontend-1.17.0.ebuild, libxsd-frontend-1.18.0.ebuild: + Fix compatibility with boost >=1.49.0 (filesystem v2 gone), bug #424761. *libxsd-frontend-1.18.0 (01 Jun 2012) @@ -19,4 +24,3 @@ +libxsd-frontend-1.17.0.ebuild, +metadata.xml: Initial commit (ebuild written by me), needed for xsd and the required libraries. - diff --git a/dev-cpp/libxsd-frontend/files/1.17.0-boost-filesystem-v2-deprecation.patch b/dev-cpp/libxsd-frontend/files/1.17.0-boost-filesystem-v2-deprecation.patch new file mode 100644 index 000000000000..cd575a6ccdca --- /dev/null +++ b/dev-cpp/libxsd-frontend/files/1.17.0-boost-filesystem-v2-deprecation.patch @@ -0,0 +1,261 @@ +diff -Naurb -I '^//' -I '^# copyright' -x build libxsd-frontend-1.17.0/tests/dump/driver.cxx xsd-3.3.0-2+dep/libxsd-frontend/tests/dump/driver.cxx +--- libxsd-frontend-1.17.0/tests/dump/driver.cxx 2010-04-27 21:31:24.000000000 +0200 ++++ xsd-3.3.0-2+dep/libxsd-frontend/tests/dump/driver.cxx 2012-08-23 11:30:16.074750804 +0200 +@@ -586,7 +586,11 @@ + + // Parse schema. + // ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + SemanticGraph::Path path (argv[i], boost::filesystem::native); ++#else ++ SemanticGraph::Path path (argv[i]); ++#endif + + Parser parser (true, false, true); + Evptr<SemanticGraph::Schema> tu (parser.parse (path)); +diff -Naurb -I '^//' -I '^# copyright' -x build libxsd-frontend-1.17.0/xsd-frontend/parser.cxx xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/parser.cxx +--- libxsd-frontend-1.17.0/xsd-frontend/parser.cxx 2010-04-27 21:31:24.000000000 +0200 ++++ xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/parser.cxx 2012-06-03 11:02:29.000000000 +0200 +@@ -1274,7 +1274,11 @@ + operator () (SemanticGraph::Path const& x, + SemanticGraph::Path const& y) const + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + return x.native_file_string () < y.native_file_string (); ++#else ++ return x.string () < y.string (); ++#endif + } + }; + +@@ -1627,9 +1631,15 @@ + friend Boolean + operator< (SchemaId const& x, SchemaId const& y) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + return x.path_.native_file_string () < y.path_.native_file_string () + || (x.path_.native_file_string () == y.path_.native_file_string () + && x.ns_ < y.ns_); ++#else ++ return x.path_.string () < y.path_.string () ++ || (x.path_.string () == y.path_.string () ++ && x.ns_ < y.ns_); ++#endif + } + + private: +@@ -2376,6 +2386,7 @@ + Path path, rel_path, abs_path; + try + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + try + { + path = Path (loc); +@@ -2386,6 +2397,10 @@ + // + path = Path (loc, boost::filesystem::native); + } ++#else ++ // The new ABI does not have a fallback native representation ++ path = Path (loc.c_str()); ++#endif + + if (path.is_complete ()) + { +@@ -2479,6 +2494,7 @@ + Path path, rel_path, abs_path; + try + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + try + { + path = Path (loc); +@@ -2489,6 +2505,10 @@ + // + path = Path (loc, boost::filesystem::native); + } ++#else ++ // The new API does not have a fallback native representation. ++ path = Path (loc.c_str()); ++#endif + + if (path.is_complete ()) + { +@@ -4674,9 +4694,14 @@ + return true; + + ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + XSDFrontend::SemanticGraph::Path abs_path ( + XML::transcode_to_narrow (e.getLocation ()->getURI ()), + boost::filesystem::native); ++#else ++ XSDFrontend::SemanticGraph::Path abs_path ( ++ XML::transcode_to_narrow (e.getLocation ()->getURI ()).c_str()); ++#endif + + XSDFrontend::SemanticGraph::Path rel_path (ctx_.file (abs_path)); + +@@ -4729,8 +4754,12 @@ + base_ (base), + ctx_ (ctx) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + setSystemId (XML::XMLChString ( + String (abs_.native_file_string ())).c_str ()); ++#else ++ setSystemId (XML::XMLChString (String (abs_.string ())).c_str ()); ++#endif + } + + virtual Xerces::BinInputStream* +@@ -4803,8 +4832,12 @@ + + // base_uri should be a valid path by now. + // ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + Path base (XML::transcode_to_narrow (base_uri), + boost::filesystem::native); ++#else ++ Path base (XML::transcode_to_narrow (base_uri).c_str()); ++#endif + + if (prv_id == 0) + { +@@ -4830,6 +4863,7 @@ + { + Path path; + ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + try + { + path = Path (path_str); +@@ -4840,6 +4874,10 @@ + // + path = Path (path_str, boost::filesystem::native); + } ++#else ++ // The new ABI does not have a fallback native representation ++ path = Path (path_str.c_str()); ++#endif + + Path base_dir (base.branch_path ()); + +diff -Naurb -I '^//' -I '^# copyright' -x build libxsd-frontend-1.17.0/xsd-frontend/semantic-graph/elements.cxx xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/semantic-graph/elements.cxx +--- libxsd-frontend-1.17.0/xsd-frontend/semantic-graph/elements.cxx 2010-04-27 21:31:24.000000000 +0200 ++++ xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/semantic-graph/elements.cxx 2012-06-03 11:02:29.000000000 +0200 +@@ -342,5 +342,9 @@ + std::wostream& + operator<< (std::wostream& os, XSDFrontend::SemanticGraph::Path const& path) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + return os << path.native_file_string ().c_str (); ++#else ++ return os << path.string ().c_str (); ++#endif + } +diff -Naurb -I '^//' -I '^# copyright' -x build libxsd-frontend-1.17.0/xsd-frontend/transformations/anonymous.cxx xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/transformations/anonymous.cxx +--- libxsd-frontend-1.17.0/xsd-frontend/transformations/anonymous.cxx 2010-04-27 21:31:24.000000000 +0200 ++++ xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/transformations/anonymous.cxx 2012-06-03 11:02:29.000000000 +0200 +@@ -275,7 +275,11 @@ + } + catch (SemanticGraph::InvalidPath const&) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + file_str = file.native_file_string (); ++#else ++ file_str = file.string (); ++#endif + } + + String name ( +@@ -358,7 +362,11 @@ + } + catch (SemanticGraph::InvalidPath const&) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + file_str = file.native_file_string (); ++#else ++ file_str = file.string (); ++#endif + } + } + +@@ -441,7 +449,11 @@ + } + catch (SemanticGraph::InvalidPath const&) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + file_str = file.native_file_string (); ++#else ++ file_str = file.string (); ++#endif + } + + String name ( +@@ -639,7 +651,11 @@ + } + catch (SemanticGraph::InvalidPath const&) + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + file_str = file.native_file_string (); ++#else ++ file_str = file.string (); ++#endif + } + + String name ( +diff -Naurb -I '^//' -I '^# copyright' -x build libxsd-frontend-1.17.0/xsd-frontend/transformations/schema-per-type.cxx xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/transformations/schema-per-type.cxx +--- libxsd-frontend-1.17.0/xsd-frontend/transformations/schema-per-type.cxx 2010-04-27 21:31:24.000000000 +0200 ++++ xsd-3.3.0-2+dep/libxsd-frontend/xsd-frontend/transformations/schema-per-type.cxx 2012-06-03 11:02:29.000000000 +0200 +@@ -167,7 +167,11 @@ + + try + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + path = Path (file_name); ++#else ++ path = Path (file_name.c_str()); ++#endif + } + catch (InvalidPath const&) + { +@@ -349,6 +353,7 @@ + // + NarrowString abs_path; + ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + // Try to use the portable representation of the path. If that + // fails, fall back to the native representation. + // +@@ -360,9 +365,17 @@ + { + abs_path = path.native_file_string (); + } ++#else ++ // The new ABI does not have a fallback native representation ++ abs_path = path.string (); ++#endif + + NarrowString tf (trans_.translate_schema (abs_path)); ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + NarrowString file (tf ? tf : path.leaf ()); ++#else ++ NarrowString file (tf ? tf : path.filename ().string()); ++#endif + + Size p (file.rfind ('.')); + NarrowString ext ( +@@ -389,7 +402,11 @@ + + try + { ++#if !defined(BOOST_FILESYSTEM_VERSION) || BOOST_FILESYSTEM_VERSION == 2 + (*i)->context ().set ("renamed", SemanticGraph::Path (new_name)); ++#else ++ (*i)->context ().set ("renamed", SemanticGraph::Path (new_name.c_str())); ++#endif + } + catch (SemanticGraph::InvalidPath const&) + { diff --git a/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild b/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild index dd59114a77f1..981b956f0f56 100644 --- a/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild +++ b/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild,v 1.2 2011/08/04 10:25:18 hwoarang Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/libxsd-frontend-1.17.0.ebuild,v 1.3 2012/08/23 13:19:38 dev-zero Exp $ EAPI="2" -inherit flag-o-matic toolchain-funcs versionator +inherit eutils toolchain-funcs versionator DESCRIPTION="A compiler frontend for the W3C XML Schema definition language." HOMEPAGE="http://www.codesynthesis.com/projects/libxsd-frontend/" @@ -22,7 +22,7 @@ DEPEND="${RDEPEND} dev-util/build:0.3" src_prepare() { - append-flags -DBOOST_FILESYSTEM_VERSION=2 + epatch "${FILESDIR}/${PV}-boost-filesystem-v2-deprecation.patch" } src_configure() { diff --git a/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild b/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild index bdb3c0209083..41e7965fa714 100644 --- a/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild +++ b/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild @@ -1,10 +1,10 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild,v 1.1 2012/06/01 20:50:58 dev-zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxsd-frontend/libxsd-frontend-1.18.0.ebuild,v 1.2 2012/08/23 13:19:38 dev-zero Exp $ EAPI="4" -inherit toolchain-funcs versionator +inherit eutils toolchain-funcs versionator DESCRIPTION="A compiler frontend for the W3C XML Schema definition language." HOMEPAGE="http://www.codesynthesis.com/projects/libxsd-frontend/" @@ -21,6 +21,10 @@ RDEPEND=">=dev-libs/xerces-c-3 DEPEND="${RDEPEND} dev-util/build:0.3" +src_prepare() { + epatch "${FILESDIR}/1.17.0-boost-filesystem-v2-deprecation.patch" +} + src_configure() { BOOST_PKG="$(best_version ">=dev-libs/boost-1.35.0-r5")" BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")" @@ -36,7 +40,7 @@ cxx_id := gnu cxx_optimize := n cxx_debug := n cxx_rpath := n -cxx_pp_extra_options := -DBOOST_FILESYSTEM_VERSION=2 +cxx_pp_extra_options := cxx_extra_options := ${CXXFLAGS} -I${BOOST_INC} cxx_ld_extra_options := ${LDFLAGS} cxx_extra_libs := |