From 61a5d7a6945dd82e7be4846f8735160273eafcf6 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sat, 15 Feb 2020 14:42:23 +0100 Subject: 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 Signed-off-by: Michael Orlitzky --- sci-mathematics/topcom/Manifest | 1 + .../topcom/files/topcom-0.17.8-buildsystem.patch | 151 +++++++++++++++++++++ sci-mathematics/topcom/topcom-0.17.8.ebuild | 59 ++++++++ 3 files changed, 211 insertions(+) create mode 100644 sci-mathematics/topcom/files/topcom-0.17.8-buildsystem.patch create mode 100644 sci-mathematics/topcom/topcom-0.17.8.ebuild (limited to 'sci-mathematics/topcom') 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)." +} -- cgit v1.2.3-65-gdbad