blob: 8b215b7bc918a31bcaea8920dda75b07f354dbf5 (
plain)
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
|
# Copyright 2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
RESTRICT="mirror"
WANT_LIBTOOL=none
AUTOTOOLS_AUTO_DEPEND=no
MESON_AUTO_DEPEND=no
PLOCALES="de ru"
inherit autotools bash-completion-r1 l10n meson_optional tmpfiles
case ${PV} in
99999999*)
EGIT_REPO_URI="git://github.com/vaeth/${PN}.git"
inherit git-r3
SRC_URI=""
PROPERTIES="live";;
*)
RESTRICT="mirror"
EGIT_COMMIT="c51d85d5d3d8781931b0091ae2a5b268387be424"
SRC_URI="https://github.com/vaeth/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${EGIT_COMMIT}";;
esac
DESCRIPTION="Search and query ebuilds"
HOMEPAGE="https://github.com/vaeth/eix/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""
IUSE="debug +dep doc +meson nls optimization +required-use security strong-optimization strong-security sqlite swap-remote tools"
BOTHDEPEND="nls? ( virtual/libintl )
sqlite? ( >=dev-db/sqlite-3:= )"
RDEPEND="${BOTHDEPEND}
>=app-shells/push-2.0-r2
>=app-shells/quoter-3.0-r2"
DEPEND="${BOTHDEPEND}
meson? (
>=dev-util/meson-0.41.0
>=dev-util/ninja-1.7.2
)
!meson? ( ${AUTOTOOLS_DEPEND} )
>=sys-devel/gettext-0.19.6"
pkg_setup() {
# remove stale cache file to prevent collisions
local old_cache="${EROOT}var/cache/${PN}"
test -f "${old_cache}" && rm -f -- "${old_cache}"
local i
if use meson && use strong-optimization
then for i in /usr/*/binutils-bin/lib/bfd-plugins/liblto_plugin.*
do test -h "$i" && return
done
eerror "app-portage/eix[meson strong-optimization]' needs linker lto plugin."
eerror "To establish this plugin, execute as root something like"
eerror " mkdir -p /usr/*/binutils-bin/lib/bfd-plugins"
eerror " cd /usr/*/binutils-bin/lib/bfd-plugins"
eerror " ln -sfn /usr/libexec/gcc/*/*/liblto_plugin.so.*.*.* ."
eerror "The * might have to be replaced by your architecture or gcc version"
die "app-portage/eix[meson strong-optimization] needs linker lto plugin"
fi
}
src_prepare() {
sed -i -e "s'/'${EPREFIX}/'" -- "${S}"/tmpfiles.d/eix.conf || die
default
use meson || {
eautopoint
eautoreconf
}
}
src_configure() {
local emesonargs
emesonargs=(
-Ddocdir="${EPREFIX}/usr/share/doc/${P}" \
-Dhtmldir="${EPREFIX}/usr/share/doc/${P}/html" \
-Dsqlite=$(usex sqlite true false) \
-Dextra-doc=$(usex doc true false) \
-Dnls=$(usex nls true false) \
-Dseparate-tools=$(usex tools true false) \
-Dsecurity=$(usex security true false) \
-Doptimization=$(usex optimization true false) \
-Dstrong-secutiry=$(usex strong-security true false) \
-Dstrong-optimization=$(usex strong-optimization true false) \
-Ddebugging=$(usex debug true false) \
-Dswap-remote=$(usex swap-remote true false) \
-Dalways-accept-keywords=$(usex prefix true false) \
-Ddep-default=$(usex dep true false) \
-Drequired-use-default=$(usex required-use true false) \
-Dzsh-completion="${EPREFIX}/usr/share/zsh/site-functions" \
-Dportage-rootpath="${ROOTPATH}" \
-Deprefix-default="${EPREFIX}"
)
if use meson; then
meson_src_configure
else
econf \
$(use_with sqlite) \
$(use_with doc extra-doc) \
$(use_enable nls) \
$(use_enable tools separate-tools) \
$(use_enable security) \
$(use_enable optimization) \
$(use_enable strong-security) \
$(use_enable strong-optimization) \
$(use_enable debug debugging) \
$(use_enable swap-remote) \
$(use_with prefix always-accept-keywords) \
$(use_with dep dep-default) \
$(use_with required-use required-use-default) \
--with-zsh-completion \
--with-portage-rootpath="${ROOTPATH}" \
--with-eprefix-default="${EPREFIX}"
fi
}
src_compile() {
if use meson; then
meson_src_compile
else
default
fi
}
src_test() {
if use meson; then
meson_src_test
else
default
fi
}
src_install() {
if use meson; then
meson_src_install
else
default
fi
dobashcomp bash/eix
dotmpfiles tmpfiles.d/eix.conf
}
pkg_postinst() {
local obs="${EROOT}var/cache/eix.previous"
if test -f "${obs}"; then
ewarn "Found obsolete ${obs}, please remove it"
fi
tmpfiles_process eix.conf
}
pkg_postrm() {
if [ -z "${REPLACED_BY_VERSION}" ]; then
rm -rf -- "${EROOT}var/cache/${PN}"
fi
}
|