sci-biology/elph: Modernise to EAPI 6
authorDavid Seifert <soap@gentoo.org>
Wed, 8 Mar 2017 18:46:35 +0000 (19:46 +0100)
committerDavid Seifert <soap@gentoo.org>
Wed, 8 Mar 2017 18:47:18 +0000 (19:47 +0100)
Package-Manager: Portage-2.3.4, Repoman-2.3.2

sci-biology/elph/elph-1.0.1-r1.ebuild [new file with mode: 0644]
sci-biology/elph/files/elph-1.0.1-fix-build-system.patch [new file with mode: 0644]

diff --git a/sci-biology/elph/elph-1.0.1-r1.ebuild b/sci-biology/elph/elph-1.0.1-r1.ebuild
new file mode 100644 (file)
index 0000000..c166dd9
--- /dev/null
@@ -0,0 +1,31 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs
+
+DESCRIPTION="Estimated Locations of Pattern Hits - Motif finder program"
+LICENSE="Artistic"
+HOMEPAGE="http://cbcb.umd.edu/software/ELPH/"
+SRC_URI="ftp://ftp.cbcb.umd.edu/pub/software/elph/ELPH-${PV}.tar.gz"
+
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+S=${WORKDIR}/${PN^^}/sources
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.1-fix-build-system.patch" )
+
+src_configure() {
+       tc-export CC CXX
+}
+
+src_install() {
+       dobin elph
+
+       cd "${WORKDIR}"/ELPH || die
+       dodoc VERSION
+       newdoc Readme.ELPH README
+}
diff --git a/sci-biology/elph/files/elph-1.0.1-fix-build-system.patch b/sci-biology/elph/files/elph-1.0.1-fix-build-system.patch
new file mode 100644 (file)
index 0000000..9afbb68
--- /dev/null
@@ -0,0 +1,55 @@
+Make build system respect user variables
+
+--- a/Makefile
++++ b/Makefile
+@@ -1,42 +1,26 @@
+-CLASSDIR := .
+-
+-# Directories to search for header files
+-SEARCHDIRS := -I- -I${CLASSDIR}
+-
+-
+-SYSTYPE :=     $(shell uname)
+-
+-# C compiler
+-
+-CC      := g++
+-CFLAGS  = -Wall ${SEARCHDIRS} -fno-exceptions -fno-rtti -D_REENTRANT -g
++my_CPPFLAGS = -D_REENTRANT -I.
+ %.o : %.c
+-      ${CC} ${CFLAGS} -c $< -o $@
++      $(CC) -Wall $(CFLAGS) $(my_CPPFLAGS) $(CPPFLAGS) -c $< -o $@
+ %.o : %.cc
+-      ${CC} ${CFLAGS} -c $< -o $@
++      $(CXX) -Wall $(CXXFLAGS) $(my_CPPFLAGS) $(CPPFLAGS) -c $< -o $@
+ %.o : %.C
+-      ${CC} ${CFLAGS} -c $< -o $@
++      $(CXX) -Wall $(CXXFLAGS) $(my_CPPFLAGS) $(CPPFLAGS) -c $< -o $@
+ %.o : %.cpp
+-      ${CC} ${CFLAGS} -c $< -o $@
++      $(CXX) -Wall $(CXXFLAGS) $(my_CPPFLAGS) $(CPPFLAGS) -c $< -o $@
+ %.o : %.cxx
+-      ${CC} ${CFLAGS} -c $< -o $@
++      $(CXX) -Wall $(CXXFLAGS) $(my_CPPFLAGS) $(CPPFLAGS) -c $< -o $@
+ # C/C++ linker
+-
+-LINKER    := g++
+-LDFLAGS    =
+-LOADLIBES := 
+-
+ .PHONY : all
+ all:    elph
+-elph:  ./elph.o ${CLASSDIR}/motif.o ${CLASSDIR}/GBase.o ${CLASSDIR}/GString.o ${CLASSDIR}/GArgs.o
+-      ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LOADLIBES}
++elph: elph.o motif.o GBase.o GString.o GArgs.o
++      $(CXX) $(LDFLAGS) $(CXXFLAGS) -o $@ $^
+ # target for removing all object files