summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Barbieri <lssndrbarbieri@gmail.com>2020-02-15 14:42:23 +0100
committerMichael Orlitzky <mjo@gentoo.org>2021-03-07 17:17:21 -0500
commit61a5d7a6945dd82e7be4846f8735160273eafcf6 (patch)
tree5d19f0582826fab11297c22488fd54259caaecbd /sci-mathematics
parentgnome-extra/gnome-contacts: fix libhandy RDEPEND slot (diff)
downloadgentoo-61a5d7a6945dd82e7be4846f8735160273eafcf6.tar.gz
gentoo-61a5d7a6945dd82e7be4846f8735160273eafcf6.tar.bz2
gentoo-61a5d7a6945dd82e7be4846f8735160273eafcf6.zip
sci-mathematics/topcom: new version
* EAPI 7 * build dynamic libraries instead of static * fix cddlib include dir Closes: https://bugs.gentoo.org/761085 Closes: https://github.com/gentoo/gentoo/pull/14668 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com> Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/topcom/Manifest1
-rw-r--r--sci-mathematics/topcom/files/topcom-0.17.8-buildsystem.patch151
-rw-r--r--sci-mathematics/topcom/topcom-0.17.8.ebuild59
3 files changed, 211 insertions, 0 deletions
diff --git a/sci-mathematics/topcom/Manifest b/sci-mathematics/topcom/Manifest
index 9bd72bc87f42..be0aad7f9994 100644
--- a/sci-mathematics/topcom/Manifest
+++ b/sci-mathematics/topcom/Manifest
@@ -1,2 +1,3 @@
DIST TOPCOM-0.17.7.tar.gz 8661519 BLAKE2B f42d273b39b15ccaf0d24ad360dc91cecd2ab83c97eb5a2fffe95575d7c8063d9afa842d7bfae03faee32ced1f98ccc55a750a59c1f544acded462a478aac636 SHA512 528e566e488641e078a8c9150f88a1544f607e6859da1d95a98dc5890c5a52882f8c8790097c3a77277066bd5d4c10a1e0a9c131fbc521f56f6139eeab7e21d1
+DIST TOPCOM-0.17.8.tar.gz 8994044 BLAKE2B 27426b9fd9da8bc51e3632483cdd1c3f878a03d22dcad637c1c26368d58dbc9a9ef4c6918e314484336b1355cdf703287bf50d248e257773729a4d9fd012c0ca SHA512 2ddab2f30bf3adf93f0bb76c50bc70a5927fe2a9561a59df0ac7bec193b9a9b231eecb58c69840247536b73fda5298955518e798c3b5f8d2961ca09dfdc81cce
DIST TOPCOM-manual.html 19251 BLAKE2B 8e361fd81bed45b552766a86a856ed1411154b5c523e14463750651d1c8d7b0f1f25a7c29bfdc34910fad3d19a1df94ded47b63a973f22baf3d60a7c5f0e1578 SHA512 5d0303f141bce12e0354c2fb65420102aa198e2271c0e901621f850b47f9cf9642659b0cf8e9bcc7a6da3b39914c20e47c67e72aa9cf999892f80855daa25c67
diff --git a/sci-mathematics/topcom/files/topcom-0.17.8-buildsystem.patch b/sci-mathematics/topcom/files/topcom-0.17.8-buildsystem.patch
new file mode 100644
index 000000000000..deb1ad3ebbad
--- /dev/null
+++ b/sci-mathematics/topcom/files/topcom-0.17.8-buildsystem.patch
@@ -0,0 +1,151 @@
+diff -ur a/configure.ac b/configure.ac
+--- a/configure.ac 2020-02-15 12:44:55.065569980 +0100
++++ b/configure.ac 2020-02-15 14:08:21.905767776 +0100
+@@ -9,7 +9,9 @@
+ AC_PROG_CC
+ AC_PROG_INSTALL
+ AC_PROG_CXX
+-AC_PROG_RANLIB
++LT_INIT
++AC_ENABLE_SHARED
++AC_DISABLE_STATIC
+
+ dnl Checks for libraries.
+ dnl Replace `main' with a function in -lg:
+@@ -18,10 +20,6 @@
+ dnl AC_CHECK_LIB(stdc, main)
+ dnl Replace `main' with a function in -lstdc++:
+ dnl AC_CHECK_LIB(stdc++, main)
+-dnl Make libgmp:
+-make -C external gmp
+-dnl Make libcddgmp:
+-make -C external cdd
+ dnl Check for soplex:
+ AC_CHECK_LIB(soplex, main, , csh -c 'echo soplex not found: --soplex will not work.')
+
+diff -ur a/lib-src/Makefile.am b/lib-src/Makefile.am
+--- a/lib-src/Makefile.am 2020-02-15 12:44:55.145570436 +0100
++++ b/lib-src/Makefile.am 2020-02-15 14:08:44.741903592 +0100
+@@ -1,6 +1,6 @@
+-lib_LIBRARIES = libTOPCOM.a
++lib_LTLIBRARIES = libTOPCOM.la
+
+-libTOPCOM_a_SOURCES = \
++libTOPCOM_la_SOURCES = \
+ Admissibles.cc \
+ CheckTriang.cc \
+ Circuits.cc \
+@@ -90,9 +90,9 @@
+
+ AM_CPPFLAGS = -I../lib-src-reg
+ AM_CPPFLAGS += -I../wrap-gmp-gmpxx
+-AM_CPPFLAGS += -I../external/include
++AM_CPPFLAGS += $(CPPFLAGS)
+ AM_CPPFLAGS += -I$(includedir)
+
+ AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-35
+
+-AM_CXXFLAGS = -O2 -g
++AM_CXXFLAGS = $(CXXFLAGS)
+diff -ur a/lib-src-reg/Makefile.am b/lib-src-reg/Makefile.am
+--- a/lib-src-reg/Makefile.am 2020-02-15 12:44:55.165570550 +0100
++++ b/lib-src-reg/Makefile.am 2020-02-15 14:08:22.921773817 +0100
+@@ -1,6 +1,6 @@
+-lib_LIBRARIES = libCHECKREG.a
++lib_LTLIBRARIES = libCHECKREG.la
+
+-libCHECKREG_a_SOURCES = \
++libCHECKREG_la_SOURCES = \
+ SPXinterface.cc \
+ LPinterface.cc \
+ RegularityCheck.cc
+@@ -12,9 +12,9 @@
+
+ AM_CPPFLAGS = -I../lib-src
+ AM_CPPFLAGS += -I../wrap-gmp-gmpxx
+-AM_CPPFLAGS += -I../external/include
++AM_CPPFLAGS += $(CPPFLAGS)
+ AM_CPPFLAGS += -I$(includedir)
+
+ AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-30
+
+-AM_CXXFLAGS = -O2
++AM_CXXFLAGS = $(CXXFLAGS)
+diff -ur a/Makefile.am b/Makefile.am
+--- a/Makefile.am 2020-02-15 12:44:55.065569980 +0100
++++ b/Makefile.am 2020-02-15 14:08:22.929773865 +0100
+@@ -1,6 +1 @@
+ SUBDIRS = wrap-gmp-gmpxx lib-src-reg lib-src src-reg src examples
+-EXTRA_DIST = external/Makefile
+-EXTRA_DIST += external/gmp-6.1.1.tar.bz2
+-EXTRA_DIST += external/cddlib-0.94f-TOPCOM.tar.gz
+-EXTRA_DIST += external/gmpxx-patch
+-
+diff -ur a/src/Makefile.am b/src/Makefile.am
+--- a/src/Makefile.am 2020-02-15 12:44:55.165570550 +0100
++++ b/src/Makefile.am 2020-02-15 14:08:22.933773888 +0100
+@@ -83,18 +83,14 @@
+ santos_dim4_triang_SOURCES = santos_dim4_triang.cc
+ santos_22_triang_SOURCES = santos_22_triang.cc
+
+-LDADD = ../lib-src/libTOPCOM.a \
+- ../lib-src-reg/libCHECKREG.a \
+- ../external/lib/libcddgmp.a \
+- ../external/lib/libgmpxx.a \
+- ../external/lib/libgmp.a
+-
+ AM_CPPFLAGS = -I../lib-src
+ AM_CPPFLAGS += -I../lib-src-reg
++AM_CPPFLAGS += -L../lib-src-reg
++AM_CPPFLAGS += -L../lib-src
+ AM_CPPFLAGS += -I../wrap-gmp-gmpxx
+-AM_CPPFLAGS += -I../external/include
++AM_CPPFLAGS += $(CPPFLAGS)
+ AM_CPPFLAGS += -I$(includedir)
+
+-AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-30
++AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-30 -lTOPCOM -lCHECKREG
+
+-AM_CXXFLAGS = -O2
++AM_CXXFLAGS = $(CXXFLAGS) -L../lib-src-reg -L../lib-src -lTOPCOM -lCHECKREG
+diff -ur a/src-reg/Makefile.am b/src-reg/Makefile.am
+--- a/src-reg/Makefile.am 2020-02-15 12:44:55.165570550 +0100
++++ b/src-reg/Makefile.am 2020-02-15 14:08:22.933773888 +0100
+@@ -2,20 +2,15 @@
+
+ checkregularity_SOURCES = checkregularity.cc
+
+-LDADD = ../lib-src-reg/libCHECKREG.a \
+- ../lib-src/libTOPCOM.a \
+- ../external/lib/libcddgmp.a \
+- ../external/lib/libgmpxx.a \
+- ../external/lib/libgmp.a
+-
+ AM_CPPFLAGS = -I../lib-src
+ AM_CPPFLAGS += -I../lib-src-reg
++AM_CPPFLAGS += -L../lib-src-reg
++AM_CPPFLAGS += -L../lib-src
+ AM_CPPFLAGS += -I../wrap-gmp-gmpxx
+-AM_CPPFLAGS += -I../external/include
++AM_CPPFLAGS += $(CPPFLAGS)
+ AM_CPPFLAGS += -I$(includedir)
+
+
+-AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-30
+-
+-AM_CXXFLAGS = -O2
++AM_CPPFLAGS += -DVERBOSE -DGMPRATIONAL -ftemplate-depth-30 -lTOPCOM -lCHECKREG
+
++AM_CXXFLAGS = $(CXXFLAGS) -L../lib-src-reg -L../lib-src -lTOPCOM -lCHECKREG
+diff -ur a/wrap-gmp-gmpxx/Makefile.am b/wrap-gmp-gmpxx/Makefile.am
+--- a/wrap-gmp-gmpxx/Makefile.am 2020-02-15 12:44:55.165570550 +0100
++++ b/wrap-gmp-gmpxx/Makefile.am 2020-02-15 14:08:23.105774912 +0100
+@@ -3,6 +3,6 @@
+ Rational.h
+
+ AM_CPPFLAGS = -I../external/include
+-AM_CPPFLAGS += -I$(includedir)
++AM_CPPFLAGS += -I$(includedir) $(CPPFLAGS)
+
+-AM_CXXFLAGS = -O2
++AM_CXXFLAGS = $(CXXFLAGS)
diff --git a/sci-mathematics/topcom/topcom-0.17.8.ebuild b/sci-mathematics/topcom/topcom-0.17.8.ebuild
new file mode 100644
index 000000000000..e6627c5cd43a
--- /dev/null
+++ b/sci-mathematics/topcom/topcom-0.17.8.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="Computing Triangulations Of Point Configurations and Oriented Matroids"
+HOMEPAGE="http://www.rambau.wm.uni-bayreuth.de/TOPCOM/"
+SRC_URI="
+ http://www.rambau.wm.uni-bayreuth.de/Software/TOPCOM-${PV}.tar.gz
+ doc? ( http://www.rambau.wm.uni-bayreuth.de/TOPCOM/TOPCOM-manual.html )
+"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="doc examples"
+
+DEPEND="
+ dev-libs/gmp:0
+ >=sci-libs/cddlib-094f
+"
+RDEPEND="${DEPEND}"
+BDEPEND="app-shells/tcsh"
+
+PATCHES=( "${FILESDIR}/${P}-buildsystem.patch" )
+HTML_DOCS=( "${DISTDIR}/TOPCOM-manual.html" )
+
+src_prepare () {
+ default
+
+ # ... and link in tree versions:
+ append-libs -lgmp -lgmpxx -lcddgmp
+ append-cxxflags -I/usr/include/cddlib
+
+ eautoreconf
+
+ find external -delete || die
+}
+
+src_configure() {
+ econf --disable-static
+}
+
+src_install () {
+ default
+
+ use examples && docompress -x "/usr/share/doc/${PF}/examples"
+ use doc && einstalldocs
+
+ mv "${ED}/usr/bin/cube" "${ED}/usr/bin/topcom_cube" || die
+
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "Due to a file collision with media-libs/lib3ds the helper"
+ elog "'cube' has been installed as topcom_cube (see bug #547030)."
+}