sci-biology/last: [QA] Add missing python metadata variables
authorDavid Seifert <soap@gentoo.org>
Thu, 20 Apr 2017 14:27:35 +0000 (16:27 +0200)
committerDavid Seifert <soap@gentoo.org>
Thu, 20 Apr 2017 16:37:00 +0000 (18:37 +0200)
Package-Manager: Portage-2.3.5, Repoman-2.3.2

sci-biology/last/files/last-299-fix-build-system.patch [new file with mode: 0644]
sci-biology/last/files/last-299-portable-shebangs.patch [new file with mode: 0644]
sci-biology/last/last-299-r1.ebuild [moved from sci-biology/last/last-299.ebuild with 50% similarity]

diff --git a/sci-biology/last/files/last-299-fix-build-system.patch b/sci-biology/last/files/last-299-fix-build-system.patch
new file mode 100644 (file)
index 0000000..0a89cea
--- /dev/null
@@ -0,0 +1,74 @@
+Make build system respect user flags
+
+--- a/makefile
++++ b/makefile
+@@ -1,6 +1,5 @@
+-CXXFLAGS = -O3
+ all:
+-      @cd src && $(MAKE) CXXFLAGS="$(CXXFLAGS)"
++      $(MAKE) -C src
+ prefix = /usr/local
+ exec_prefix = $(prefix)
+@@ -10,15 +9,15 @@
+       cp src/last?? scripts/*.?? $(bindir)
+ clean:
+-      @cd src && $(MAKE) clean
++      $(MAKE) -C src clean
+ html:
+-      @cd doc && $(MAKE)
++      $(MAKE) -C doc
+ distdir = last-`hg id -n`
+ dist: log html
+-      @cd src && $(MAKE) version.hh
++      $(MAKE) -C src version.hh
+       rsync -rC --exclude 'last??' doc examples makefile s* *.txt $(distdir)
+       zip -qrm $(distdir) $(distdir)
+--- a/src/makefile
++++ b/src/makefile
+@@ -1,12 +1,9 @@
+-CXX = g++
+-CC  = gcc
+-
+-CXXFLAGS = -O3 -Wall -Wextra -Wcast-qual -Wswitch-enum -Wundef        \
+--Wcast-align -Wno-long-long -ansi -pedantic
++last_CXXFLAGS = -Wall -Wextra -Wcast-qual -Wswitch-enum -Wundef       \
++-Wcast-align -Wno-long-long -pedantic
+ # -Wconversion
+ # -fomit-frame-pointer ?
+-CFLAGS = -Wall
++last_CFLAGS = -Wall
+ DBSRC = Alphabet.cc MultiSequence.cc CyclicSubsetSeed.cc      \
+ SubsetSuffixArray.cc LastdbArguments.cc io.cc fileMap.cc      \
+@@ -49,17 +46,20 @@
+ all: lastdb lastal lastex
++.cpp.o:
++      $(CXX) $(CPPFLAGS) $(last_CXXFLAGS) $(CXXFLAGS) -c -o $@ $<
++
+ lastdb: $(DBSRC) $(DBINC) makefile
+-      $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(DBSRC)
++      $(CXX) $(CPPFLAGS) $(last_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(DBSRC)
+ lastal: $(ALSRC) $(ALINC) makefile $(OBJ)
+-      $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(ALSRC) $(OBJ)
++      $(CXX) $(CPPFLAGS) $(last_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(ALSRC) $(OBJ)
+ lastex: $(EXSRC) $(EXINC) makefile
+-      $(CXX) -Igumbel_params $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(EXSRC)
++      $(CXX) $(CPPFLAGS) -Igumbel_params $(last_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(EXSRC)
+ $(OBJ): CA_code/*.c CA_code/*.h makefile
+-      $(CC) $(CPPFLAGS) $(CFLAGS) -c CA_code/lambda_calculator.c
++      $(CC) $(CPPFLAGS) $(last_CFLAGS) $(CFLAGS) -c -o $@ CA_code/lambda_calculator.c
+ clean:
+       rm -f lastdb lastal lastex $(OBJ)
diff --git a/sci-biology/last/files/last-299-portable-shebangs.patch b/sci-biology/last/files/last-299-portable-shebangs.patch
new file mode 100644 (file)
index 0000000..03ecbdc
--- /dev/null
@@ -0,0 +1,99 @@
+Make shebangs portable and prefix friendly
+See also: https://blogs.gentoo.org/mgorny/2016/02/08/a-quick-note-on-portable-shebangs/
+
+--- a/scripts/last-dotplot.py
++++ b/scripts/last-dotplot.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Read pair-wise alignments in MAF or LAST tabular format: write an
+ # "Oxford grid", a.k.a. dotplot.
+--- a/scripts/last-map-probs.py
++++ b/scripts/last-map-probs.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2010, 2011, 2012 Martin C. Frith
+--- a/scripts/last-merge-batches.py
++++ b/scripts/last-merge-batches.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2010, 2011 Martin C. Frith
+--- a/scripts/last-pair-probs.py
++++ b/scripts/last-pair-probs.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2011, 2012, 2013 Martin C. Frith
+--- a/scripts/last-reduce-alignments.sh
++++ b/scripts/last-reduce-alignments.sh
+@@ -1,4 +1,4 @@
+-#! /bin/sh
++#!/usr/bin/env sh
+ # This script reads MAF-format alignments with lastal header
+ # information, removes "uninteresting" alignments, and writes the
+--- a/scripts/last-remove-dominated.py
++++ b/scripts/last-remove-dominated.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Read MAF-format alignments, and write those are not "dominated" by
+ # any other one.  X dominates Y if they overlap on the top sequence,
+--- a/scripts/last-split-probs.py
++++ b/scripts/last-split-probs.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2012 Martin C. Frith
+--- a/scripts/maf-convert.py
++++ b/scripts/maf-convert.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2010, 2011 Martin C. Frith
+ # Read MAF-format alignments: write them in other formats.
+ # Seems to work with Python 2.x, x>=4
+--- a/scripts/maf-cull.py
++++ b/scripts/maf-cull.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Read MAF-format alignments.  Write them, omitting alignments whose
+ # coordinates in the top-most sequence are contained in those of >=
+--- a/scripts/maf-join.py
++++ b/scripts/maf-join.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Copyright 2009, 2010, 2011 Martin C. Frith
+--- a/scripts/maf-sort.sh
++++ b/scripts/maf-sort.sh
+@@ -1,4 +1,4 @@
+-#! /bin/sh
++#!/usr/bin/env sh
+ # Sort MAF-format alignments by sequence name, then strand, then start
+ # position, then end position, of the top sequence.  Also, merge
+--- a/scripts/maf-swap.py
++++ b/scripts/maf-swap.py
+@@ -1,4 +1,4 @@
+-#! /usr/bin/env python
++#!/usr/bin/env python2
+ # Read MAF-format alignments, and write them, after moving the Nth
+ # sequence to the top in each alignment.
similarity index 50%
rename from sci-biology/last/last-299.ebuild
rename to sci-biology/last/last-299-r1.ebuild
index b93b948d13c40498f5b45a868acd58b9baa3b503..b6adee2159709f14e1bf329c99f1d932def1de1b 100644 (file)
@@ -1,11 +1,11 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit eutils toolchain-funcs python-r1
+inherit toolchain-funcs python-single-r1
 
 DESCRIPTION="Genome-scale comparison of biological sequences"
 HOMEPAGE="http://last.cbrc.jp/"
@@ -13,37 +13,33 @@ SRC_URI="http://last.cbrc.jp/${P}.zip"
 
 LICENSE="GPL-3"
 SLOT="0"
-IUSE=""
 KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 
+RDEPEND="${PYTHON_DEPS}"
 DEPEND="app-arch/unzip"
-RDEPEND=""
 
-src_prepare() {
-       sed \
-               -e 's:-o $@:$(LDFLAGS) -o $@:g' \
-               -i src/makefile || die
-}
+PATCHES=(
+       "${FILESDIR}"/${PN}-299-fix-build-system.patch
+       "${FILESDIR}"/${PN}-299-portable-shebangs.patch
+)
 
-src_compile() {
-       emake \
-               -e -C src \
-               CXX="$(tc-getCXX)" \
-               CC="$(tc-getCC)" \
-               STRICT="" || die
+src_configure() {
+       tc-export CC CXX
 }
 
 src_install() {
-       local i
+       local DOCS=( doc/*.txt ChangeLog.txt README.txt )
+       local HTML_DOCS=( doc/*html )
+       einstalldocs
 
        dobin src/last{al,db,ex}
 
-       dodoc doc/*.txt ChangeLog.txt README.txt
-       dohtml doc/*html
-
        cd scripts || die
+       local i
        for i in *py; do
-               python_foreach_impl python_newscript ${i} ${i%.py}
+               newbin ${i} ${i%.py}
        done
        dobin *sh
 }