commit: d4a343c2ce203f42978599f260fe53ef5f6c55e5
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 15 10:48:25 2016 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Oct 15 11:47:48 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4a343c2
dev-cpp/libcutl: New package (successor of dev-cpp/libcult)
Package-Manager: portage-2.3.2
dev-cpp/libcutl/Manifest | 1 +
.../libcutl/files/libcutl-1.10.0-fix-c++14.patch | 53 ++++++++++++++++++++++
dev-cpp/libcutl/libcutl-1.10.0.ebuild | 43 ++++++++++++++++++
dev-cpp/libcutl/metadata.xml | 8 ++++
4 files changed, 105 insertions(+)
diff --git a/dev-cpp/libcutl/Manifest b/dev-cpp/libcutl/Manifest
new file mode 100644
index 00000000..28f7bb0
--- /dev/null
+++ b/dev-cpp/libcutl/Manifest
@@ -0,0 +1 @@
+DIST libcutl-1.10.0.tar.bz2 763920 SHA256
125163c670e372b47d5626d54379ff8fbaded6ccd5db77ac0bf5912a4017121c SHA512
c03f39e87e660fdd07aa9cccb2d82d411ca8226b56475c74b7b2147b90cdb83d13246bc0c09513e407271bcf568d6a08f92c9006e48d1e7f06e4b18dde34dc5f
WHIRLPOOL
c7a3ddbf632851a0188db5704883db683e6f720ee324040d5d8af08cdae7cc6e47959efdc15819197f857719f178e1d88c042c2590a43a312c4d45f7a28c4f2d
diff --git a/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch
b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch
new file mode 100644
index 00000000..a6f1a50
--- /dev/null
+++ b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch
@@ -0,0 +1,53 @@
+Make dtors noexcept(false) when compiling in C++11 and above. This avoids
silent
+breakage due to the semantic exception changes between C++98 and C++11.
+
+--- a/cutl/fs/auto-remove.cxx
++++ b/cutl/fs/auto-remove.cxx
+@@ -13,6 +13,9 @@
+ {
+ auto_remove::
+ ~auto_remove ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ if (!canceled_)
+ {
+@@ -23,6 +26,9 @@
+
+ auto_removes::
+ ~auto_removes ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ if (!canceled_)
+ {
+--- a/cutl/fs/auto-remove.hxx
++++ b/cutl/fs/auto-remove.hxx
+@@ -26,7 +26,11 @@
+ {
+ }
+
+- ~auto_remove ();
++ ~auto_remove ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ void
+ cancel ()
+@@ -51,7 +55,11 @@
+ struct LIBCUTL_EXPORT auto_removes
+ {
+ auto_removes (): canceled_ (false) {}
+- ~auto_removes ();
++ ~auto_removes ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ void
+ add (path const& p)
diff --git a/dev-cpp/libcutl/libcutl-1.10.0.ebuild
b/dev-cpp/libcutl/libcutl-1.10.0.ebuild
new file mode 100644
index 00000000..16152eb
--- /dev/null
+++ b/dev-cpp/libcutl/libcutl-1.10.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit versionator
+
+DESCRIPTION="A collection of C++ libraries (successor of libcult)"
+HOMEPAGE="http://www.codesynthesis.com/projects/libcutl/"
+SRC_URI="http://www.codesynthesis.com/download/${PN}/$(get_version_component_range
1-2)/${P}.tar.bz2"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-libs/expat
+ dev-libs/boost:="
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-1.10.0-fix-c++14.patch" )
+
+src_prepare() {
+ default
+
+ # remove bundled libs
+ rm -r cutl/details/{boost,expat} || die
+}
+
+src_configure() {
+ econf \
+ --disable-static \
+ --with-external-boost \
+ --with-external-expat
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/libcutl/metadata.xml b/dev-cpp/libcutl/metadata.xml
new file mode 100644
index 00000000..d4905c8
--- /dev/null
+++ b/dev-cpp/libcutl/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>[email protected]</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+</pkgmetadata>