diff options
author | Michael Palimaka <kensington@gentoo.org> | 2016-09-29 19:41:31 +1000 |
---|---|---|
committer | Michael Palimaka <kensington@gentoo.org> | 2016-09-29 20:16:43 +1000 |
commit | 16f2c13fa964bad248df33231fb2fff2a6b6e5ad (patch) | |
tree | 75502cc1e7d09488560363e49bfe49af012cc3cd /dev-libs/gecode | |
parent | dev-db/mysql: sparc stable wrt bug #589238 (diff) | |
download | gentoo-16f2c13fa964bad248df33231fb2fff2a6b6e5ad.tar.gz gentoo-16f2c13fa964bad248df33231fb2fff2a6b6e5ad.tar.bz2 gentoo-16f2c13fa964bad248df33231fb2fff2a6b6e5ad.zip |
dev-libs/gecode: revision bump fixing numerous QA violations
* Add missing dependencies
* Avoid hard-coded CFLAGS
* Do not install examples to system root
* Install HTML documentation to the correct directory
* Remove unused test USE flag
* Do not allow sci-libs/mpir as a runtime alternative to sci-libs/mpir. This
can only be selected at build time.
* Force building libgecodegist.so against Qt 4 again. Careful consideration must
be given to reverse dependencies before switching to Qt 5 due to the potential
for symbol collisions and ABI breakage. Additionally, the existing approach
is not valid because Qt versions are not interchangeable at runtime.
Gentoo-bug: 488150
Gentoo-bug: 595442
Package-Manager: portage-2.3.1
Diffstat (limited to 'dev-libs/gecode')
-rw-r--r-- | dev-libs/gecode/files/gecode-4.4.0-no-examples.patch | 18 | ||||
-rw-r--r-- | dev-libs/gecode/gecode-4.4.0-r1.ebuild | 82 |
2 files changed, 100 insertions, 0 deletions
diff --git a/dev-libs/gecode/files/gecode-4.4.0-no-examples.patch b/dev-libs/gecode/files/gecode-4.4.0-no-examples.patch new file mode 100644 index 000000000000..26535667fa65 --- /dev/null +++ b/dev-libs/gecode/files/gecode-4.4.0-no-examples.patch @@ -0,0 +1,18 @@ +Avoid installing examples to system root. + +Patch from Fedora. + +Gentoo-bug: 488150 + +--- a/Makefile.in ++++ b/Makefile.in +@@ -953,8 +953,7 @@ + ALLGECODEHDR = \ + $(SUPPORTHDR) $(KERNELHDR) $(SEARCHHDR) \ + $(INTHDR) $(FLOATHDR) $(SETHDR) $(MMHDR) \ +- $(DRIVERHDR) $(ITERHDR) $(GISTHDR) $(FLATZINCHDR) \ +- $(INTEXAMPLEHDR) ++ $(DRIVERHDR) $(ITERHDR) $(GISTHDR) $(FLATZINCHDR) + ALLHDR = \ + $(ALLGECODEHDR) $(THIRDHDR) + ALLOBJ0 = $(ALLSRC:%.cpp=%$(OBJSUFFIX)) \ diff --git a/dev-libs/gecode/gecode-4.4.0-r1.ebuild b/dev-libs/gecode/gecode-4.4.0-r1.ebuild new file mode 100644 index 000000000000..f43e46bf7e63 --- /dev/null +++ b/dev-libs/gecode/gecode-4.4.0-r1.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit autotools qmake-utils + +DESCRIPTION="An environment for developing constraint-based applications" +HOMEPAGE="http://www.gecode.org/" +SRC_URI="http://www.gecode.org/download/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples gist gmp" + +RDEPEND=" + gist? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + gmp? ( + dev-libs/gmp:0 + dev-libs/mpfr:0 + )" +DEPEND="${RDEPEND} + sys-devel/bison + sys-devel/flex + doc? ( + app-doc/doxygen + media-gfx/graphviz + )" + +PATCHES=( "${FILESDIR}/${PN}-4.4.0-no-examples.patch" ) + +src_prepare() { + default + + sed -i gecode.m4 \ + -e "s/-ggdb//" -e "s/-O3//" -e "s/-pipe//" \ + -e "/AC_CHECK_PROGS(QMAKE/a AC_SUBST(QMAKE,$(qt4_get_bindir)/qmake)" \ + -e "/AC_CHECK_PROGS(MOC/a AC_SUBST(MOC,$(qt4_get_bindir)/moc)" \ + || die + + eautoreconf +} + +src_configure() { + # --disable-examples prevents COMPILING the examples. + econf \ + --docdir="/usr/share/doc/${PF}" \ + --htmldir="/usr/share/doc/${PF}" \ + --disable-examples \ + $(use_enable doc doc-dot) \ + $(use_enable doc doc-tagfile) \ + $(use_enable gist qt) \ + $(use_enable gist) \ + $(use_enable gmp mpfr) +} + +src_compile() { + default + use doc && emake doc +} + +src_test() { + LD_LIBRARY_PATH="${S}" emake test + LD_LIBRARY_PATH="${S}" ./test/test || die "test suite failed" +} + +src_install() { + default + + # The --docdir and --htmldir that we pass to configure don't seem to + # be respected... + use doc && dodoc -r doc/html/ + + if use examples; then + dodoc -r examples + fi +} |