forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gnatcoll-2017.ebuild
133 lines (120 loc) · 3.03 KB
/
gnatcoll-2017.ebuild
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
132
133
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit multilib multiprocessing autotools python-single-r1
MYP=${PN}-gpl-${PV}
DESCRIPTION="GNAT Component Collection"
HOMEPAGE="http://libre.adacore.com"
SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed016
-> ${MYP}-src.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE="gmp gnat_2016 gnat_2017 gtk iconv postgresql pygobject projects readline
+shared sqlite static syslog tools"
RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 )
gnat_2017? ( dev-lang/gnat-gpl:6.3.0 )
${PYTHON_DEPS}
gmp? ( dev-libs/gmp:* )
gtk? (
dev-ada/gtkada[gnat_2016=,gnat_2017=,shared?,static?]
dev-libs/atk
dev-libs/glib
x11-libs/cairo
x11-libs/gdk-pixbuf
x11-libs/gtk+:3
x11-libs/pango
)
pygobject? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )
postgresql? ( dev-db/postgresql:* )
sqlite? ( dev-db/sqlite )
projects? (
>=dev-ada/gprbuild-2017[gnat_2016=,gnat_2017=,shared?,static?]
)"
DEPEND="${RDEPEND}
dev-ada/gprbuild[gnat_2016=,gnat_2017=]"
REQUIRED_USE="${PYTHON_REQUIRED_USE}
pygobject? ( gtk )
!gnat_2016 gnat_2017"
S="${WORKDIR}"/${MYP}-src
PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
src_prepare() {
default
mv configure.{in,ac} || die
eautoreconf
}
src_configure() {
if use gnat_2016; then
GCC_PV=4.9.4
else
GCC_PV=6.3.0
fi
GCC=${CHOST}-gcc-${GCC_PV}
GNATMAKE=${CHOST}-gnatmake-${GCC_PV}
GNATCHOP=${CHOST}-gnatchop-${GCC_PV}
if use sqlite; then
myConf="--with-sqlite=$(get_libdir)"
else
myConf="--without-sqlite"
fi
if use gtk ; then
myConf="$myConf --with-gtk=3.0"
else
myConf="$myConf --with-gtk=no"
fi
econf \
GNATCHOP="${GNATCHOP}" \
GNATMAKE="${GNATMAKE}" \
--with-python \
$(use_with gmp) \
$(use_with iconv) \
$(use_with postgresql) \
$(use_enable projects) \
$(use_enable pygobject) \
$(use_enable readline gpl) \
$(use_enable readline) \
$(use_enable syslog) \
--with-python-exec=${EPYTHON} \
--enable-shared-python \
--disable-pygtk \
CC=${GCC} \
$myConf
}
src_compile() {
if use shared; then
emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
build_library_type/relocatable
fi
if use static; then
emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
build_library_type/static
fi
if use tools; then
emake PROCESSORS=$(makeopts_jobs) GPRBUILD_OPTIONS=-v GCC=${GCC} \
build_tools/static
fi
python_fix_shebang .
}
src_install() {
if use shared; then
emake prefix="${D}usr" install_library_type/relocatable
fi
if use static; then
emake prefix="${D}usr" install_library_type/static
fi
if use tools; then
emake prefix="${D}usr" install_tools/static
fi
emake prefix="${D}usr" install_gps_plugin
einstalldocs
}
src_test() {
# The test suite is in
# To run you need to have the ada compiler available as gcc
# Even in this case there are still some problem
# Going into the testsuite directory and running
# ./run.py -v -v
# run here (having enabled most USE flags)
true
}