From 1353be65ffb24ae520d14bbdf9638bb3f15b6f4d Mon Sep 17 00:00:00 2001 From: Tiziano Müller Date: Fri, 1 Jun 2012 20:39:38 +0000 Subject: Fix compilation of dependent libs with gcc-4.7. (Portage version: 2.1.10.56/cvs/Linux x86_64) --- dev-cpp/libcult/ChangeLog | 10 ++- .../files/1.4.6-fix-compilation-with-gcc-4.7.patch | 57 ++++++++++++++ dev-cpp/libcult/libcult-1.4.6-r1.ebuild | 86 ++++++++++++++++++++++ 3 files changed, 151 insertions(+), 2 deletions(-) create mode 100644 dev-cpp/libcult/files/1.4.6-fix-compilation-with-gcc-4.7.patch create mode 100644 dev-cpp/libcult/libcult-1.4.6-r1.ebuild (limited to 'dev-cpp') diff --git a/dev-cpp/libcult/ChangeLog b/dev-cpp/libcult/ChangeLog index c294e9875750..e4d03291336e 100644 --- a/dev-cpp/libcult/ChangeLog +++ b/dev-cpp/libcult/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-cpp/libcult -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libcult/ChangeLog,v 1.3 2011/08/26 02:02:32 mattst88 Exp $ +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libcult/ChangeLog,v 1.4 2012/06/01 20:39:38 dev-zero Exp $ + +*libcult-1.4.6-r1 (01 Jun 2012) + + 01 Jun 2012; Tiziano Müller + +files/1.4.6-fix-compilation-with-gcc-4.7.patch, +libcult-1.4.6-r1.ebuild: + Fix compilation of dependent libs with gcc-4.7. 26 Aug 2011; Matt Turner libcult-1.4.6.ebuild: Added sys-devel/m4 to DEPEND, bug 380663. diff --git a/dev-cpp/libcult/files/1.4.6-fix-compilation-with-gcc-4.7.patch b/dev-cpp/libcult/files/1.4.6-fix-compilation-with-gcc-4.7.patch new file mode 100644 index 000000000000..f7b169a7cde2 --- /dev/null +++ b/dev-cpp/libcult/files/1.4.6-fix-compilation-with-gcc-4.7.patch @@ -0,0 +1,57 @@ +From 2ef8e0426baad35a3438f9497005c3e3391e23f0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tiziano=20M=C3=BCller?= +Date: Fri, 1 Jun 2012 10:12:33 +0200 +Subject: [PATCH 2/2] fix compilation with gcc-4.7 + +--- + cult/mm/evptr.hxx | 4 ++-- + cult/mm/shptr.hxx | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/cult/mm/evptr.hxx b/cult/mm/evptr.hxx +index 18f232c..ed0bd93 100644 +--- a/cult/mm/evptr.hxx ++++ b/cult/mm/evptr.hxx +@@ -70,7 +70,7 @@ namespace Cult + Evptr& + operator= (Evptr const& ep) + { +- assign (ep.cp_ ? ep.cp_ : ep.p_, ep.c_); ++ this->assign (ep.cp_ ? ep.cp_ : ep.p_, ep.c_); + + return *this; + } +@@ -79,7 +79,7 @@ namespace Cult + Evptr& + operator= (Evptr const& ep) + { +- assign (ep.cp_ ? ep.cp_ : ep.p_, ep.c_); ++ this->assign (ep.cp_ ? ep.cp_ : ep.p_, ep.c_); + + return *this; + } +diff --git a/cult/mm/shptr.hxx b/cult/mm/shptr.hxx +index a5e1257..6630b1c 100644 +--- a/cult/mm/shptr.hxx ++++ b/cult/mm/shptr.hxx +@@ -45,7 +45,7 @@ namespace Cult + Shptr& + operator= (Shptr const& ap) + { +- assign (ap); ++ this->assign (ap); + return *this; + } + +@@ -53,7 +53,7 @@ namespace Cult + Shptr& + operator= (Shptr const& ap) + { +- assign (ap); ++ this->assign (ap); + return *this; + } + +-- +1.7.8.5 + diff --git a/dev-cpp/libcult/libcult-1.4.6-r1.ebuild b/dev-cpp/libcult/libcult-1.4.6-r1.ebuild new file mode 100644 index 000000000000..8e8067a31c01 --- /dev/null +++ b/dev-cpp/libcult/libcult-1.4.6-r1.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libcult/libcult-1.4.6-r1.ebuild,v 1.1 2012/06/01 20:39:38 dev-zero Exp $ + +EAPI="4" + +inherit eutils toolchain-funcs versionator + +DESCRIPTION="A collection of C++ libraries" +HOMEPAGE="http://kolpackov.net/projects/libcult/" +SRC_URI="ftp://kolpackov.net/pub/projects/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples" + +DEPEND="dev-util/build:0.3 + sys-devel/m4" +RDEPEND="" + +src_prepare() { + # never build the examples + sed -i \ + -e 's| $(out_base)/examples/[[:alnum:]\.]*||' \ + -e '/examples\/makefile/d' \ + makefile || die "sed failed" + + epatch "${FILESDIR}/${PV}-fix-compilation-with-gcc-4.7.patch" +} + +src_configure() { + mkdir -p build/{cxx/gnu,ld} + + cat >> build/configuration-dynamic.make <<- EOF +cult_dr := y +cult_threads := y +cult_network := y + EOF + + cat >> build/cxx/configuration-dynamic.make <<- EOF +cxx_id := gnu +cxx_optimize := n +cxx_debug := n +cxx_rpath := n +cxx_pp_extra_options := +cxx_extra_options := ${CXXFLAGS} +cxx_ld_extra_options := ${LDFLAGS} +cxx_extra_libs := +cxx_extra_lib_paths := + EOF + + cat >> build/cxx/gnu/configuration-dynamic.make <<- EOF +cxx_gnu := $(tc-getCXX) +cxx_gnu_libraries := +cxx_gnu_optimization_options := + EOF + + cat >> build/ld/configuration-lib-dynamic.make <<- EOF +ld_lib_type := shared + EOF + + MAKEOPTS+=" verbose=1" +} + +src_install() { + dolib.so cult/libcult.so + + find cult -iname "*.cxx" \ + -o -iname "makefile" \ + -o -iname "*.o" -o -iname "*.d" \ + -o -iname "*.m4" -o -iname "*.l" \ + -o -iname "*.cpp-options" -o -iname "*.so" | xargs rm -f + rm -rf cult/arch + + insinto /usr/include + doins -r cult + + dodoc NEWS README documentation/[[:upper:]]* + dohtml -A xhtml -r documentation/* + + if use examples ; then + find examples -name makefile -delete + # preserving symlinks in the examples + cp -dpR examples "${D}/usr/share/doc/${PF}" + fi +} -- cgit v1.2.3-65-gdbad