forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
emboss-r3.eclass
131 lines (109 loc) · 3.19 KB
/
emboss-r3.eclass
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: emboss-r3.eclass
# @MAINTAINER:
# @AUTHOR:
# Original author: Author Olivier Fisette <[email protected]>
# Next gen author: Justin Lecher <[email protected]>
# Next gen author: Ted Tanberry <[email protected]>
# @SUPPORTED_EAPIS: 8
# @BLURB: Use this to easy install EMBOSS and EMBASSY programs (EMBOSS add-ons).
# @DESCRIPTION:
# The inheriting ebuild must provide EBO_DESCRIPTION before the inherit line.
#
# Example:
#
# EAPI=8
#
# EBO_DESCRIPTION="applications from the CBS group"
#
# inherit emboss-r3
# @ECLASS-VARIABLE: EBO_DESCRIPTION
# @PRE_INHERIT
# @DEFAULT_UNSET
# @DESCRIPTION:
# Completes the generic description of the embassy module as follows:
#
# EMBOSS integrated version of ${EBO_DESCRIPTION}, e.g.
#
# "EMBOSS integrated version of applications from the CBS group"
#
# Defaults to the upstream name of the module.
case ${EAPI} in
8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ ! ${_EMBOSS_R3_ECLASS} ]]; then
_EMBOSS_R3_ECLASS=1
inherit flag-o-matic
HOMEPAGE="http://emboss.sourceforge.net/"
LICENSE="LGPL-2 GPL-2"
SLOT="0"
IUSE="mysql pdf png postgres X"
RDEPEND="
dev-libs/expat
dev-libs/libpcre:3
sci-libs/plplot:=
sys-libs/zlib
mysql? ( dev-db/mysql-connector-c:0= )
pdf? ( media-libs/libharu:= )
png? ( media-libs/gd:2=[png] )
postgres? ( dev-db/postgresql:= )
X? ( x11-libs/libXt )"
if [[ ${PN} == embassy-* ]]; then
EMBASSY_PACKAGE=yes
# The EMBASSY package name, retrieved from the inheriting ebuild's name
EN=${PN:8}
# The full name and version of the EMBASSY package (excluding the Gentoo
# revision number)
EF="${EN^^}-${PV}"
[[ ${EBO_DESCRIPTION} ]] || die "EBO_DESCRIPTION was not set before inheriting emboss-r3.eclass"
DESCRIPTION="EMBOSS integrated version of ${EBO_DESCRIPTION}"
SRC_URI="ftp://emboss.open-bio.org/pub/EMBOSS/${EF}.tar.gz -> embassy-${EN}-${PV}.tar.gz"
RDEPEND+=" >=sci-biology/emboss-6.6.0-r1[mysql=,pdf=,png=,postgres=,X=]"
S="${WORKDIR}/${EF}"
fi
DEPEND="${RDEPEND}"
# @FUNCTION: emboss-r3_src_configure
# @DESCRIPTION:
# runs econf with following options.
#
# --enable-shared
# $(use_with X x)
# $(use_with png pngdriver)
# $(use_with pdf hpdf)
# $(use_with mysql mysql)
# $(use_with postgres postgresql)
# --enable-large
# --without-java
# --enable-systemlibs
#
# can be appended to like econf, e.g.
# emboss-r3_src_configure --enable-foo
emboss-r3_src_configure() {
local myconf=(
--enable-shared
$(use_with X x)
$(use_with png pngdriver "${ESYSROOT}"/usr)
$(use_with pdf hpdf "${ESYSROOT}"/usr)
$(use_with mysql mysql "${EPREFIX}"/usr/bin/mysql_config)
$(use_with postgres postgresql "${EPREFIX}"/usr/bin/pg_config)
--enable-large
--without-java
--enable-systemlibs
)
[[ ${EMBASSY_PACKAGE} == yes ]] &&
append-cppflags "-I${ESYSROOT}/usr/include/emboss"
econf "${myconf[@]}" "$@"
}
# @FUNCTION: emboss-r3_src_install
# @DESCRIPTION:
# Installs the package into the staging area and removes unnecessary .la files.
emboss-r3_src_install() {
default
# delete .la files
find "${ED}" -name '*.la' -delete || die
}
fi
EXPORT_FUNCTIONS src_configure src_install