1 |
commit: 683277d5da27e49e7cb0a519ff6e7765713094bd |
2 |
Author: Luca Barbato <lu_zero <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun May 29 15:03:17 2016 +0000 |
4 |
Commit: Luca Barbato <lu_zero <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun May 29 15:03:29 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=683277d5 |
7 |
|
8 |
media-video/libav: Add version 11.7 |
9 |
|
10 |
Security fixes as usual. |
11 |
|
12 |
Package-Manager: portage-2.2.26 |
13 |
|
14 |
media-video/libav/Manifest | 1 + |
15 |
media-video/libav/libav-11.7.ebuild | 347 ++++++++++++++++++++++++++++++++++++ |
16 |
2 files changed, 348 insertions(+) |
17 |
|
18 |
diff --git a/media-video/libav/Manifest b/media-video/libav/Manifest |
19 |
index 0c4e4b8..4c093c0 100644 |
20 |
--- a/media-video/libav/Manifest |
21 |
+++ b/media-video/libav/Manifest |
22 |
@@ -5,6 +5,7 @@ DIST fate-9.tar.xz 467671500 SHA256 27d10fd49267452ac787c3f43501a4a21d0ccaccc5dd |
23 |
DIST libav-11.3.tar.xz 4858864 SHA256 12ae6c051967765ae5faeddf94c4584129ac0b18edb884afffc5fcedcdb5e030 SHA512 f25b9fb7392d5bb4df35937f79beae26bd8f6606f0ad7cdebf16963834eb9b423d882f6a3a44b5120a5d5d853c7c31bb8c3420a427cd2b360f41a48a6d5df284 WHIRLPOOL 721c4cbe7ee3f7307d24c0e4f1cc1f8ab8b0ccd50ddf88b77ecf1cae05f06fc80d7527e9f7a0a098a6d95d0e7fed50082aaffa07935eab6e9131f7c9be6e696c |
24 |
DIST libav-11.4.tar.xz 4860264 SHA256 0b7dabc2605f3a254ee410bb4b1a857945696aab495fe21b34c3b6544ff5d525 SHA512 82ffe6aaccb1a19782dfcb0de641c8255531ce34ee5f49f9b8ec7f5a11c81713432aafc3a6b7c4de927eb8141ddea41f28e4e3a1ab715b943774193050fb02e7 WHIRLPOOL c2e14e06fd7632852feea45f468803929cb1c1688d77ac8641c56d77523da455ccdf4cc6bf52b3dba9b387af9ad15ea9efd82b11ce365c3a84440fb2998f06aa |
25 |
DIST libav-11.6.tar.xz 4860268 SHA256 542f30e4266d2d2226e681b888bc718c995f5438f2db66a9a27d581243d27aed SHA512 bff3e22de93e4ab357715ae20e25b6435df52d1868c5164426a693d14fe7f54e47a46c4c62a36fbf27bd204e12f6a29a6f58016c7deaa838915d424b5ce530bd WHIRLPOOL 060bd61e784112a56e02ba86d0901ff488d6ef1735d731a869c68a27da72a209734648148edf9922efe2d15fed3380c36129a92c6917af812bf9e606ef97c131 |
26 |
+DIST libav-11.7.tar.xz 4861984 SHA256 8c9a75c89c6df58dd5e3f6f735d1ba5448680e23013fd66a51b50b4f49913c46 SHA512 23c6ffd0efdfa6b22c7863bf440d7469eba03a7990382fe33c8c4c7871edf250641ac536572516225679b0934e5c250ee0e2e91ea093c770a0c4c32b4776e3c5 WHIRLPOOL adb106828ae1e3c802b719a5c9feede1c96d02d79512bf04e2bf29da3d24e969a044a887eeb94dc76d528582026aed6cb1e0e342115507aaa98a8918de358ecd |
27 |
DIST libav-12_pre20160529.tar.xz 5238532 SHA256 e12f2c1c737a990e277ec0e78673c971962036374b4e53eddb3c1b417e2672fe SHA512 bcfebbed8b4f65526cb9bea3535a04a99891e89a8dcbe544fa104895558b043848f4521949220ac31210b59441ec280aaa7ec7e9138ccba1e0ab0357805f5d87 WHIRLPOOL d35b7df7b023e4c37115ff196f6ac031662c1fa92c1880ac40a88fe0db02ce606dff807baa1c42422c3512060673262748a93bd577b20510f4538c376f1da77c |
28 |
DIST libav-9.14.tar.xz 4077424 SHA256 e4baf0c2adbd941a827854794dd6af9c29cd2042b23501c5828e9b8e1725f61d SHA512 fa8e83cb92a5a565cd23c63467c64972a69a4cbd652b946c7891b73180b609890f67a6f89f009ed263fb9e2c769236f3a8f7f70b0fce4c4373fa93a49470c04d WHIRLPOOL 178ba6c6ad0ecd8ad59eb3bf7a0d4289a3c253d82981cf3ad454e3b222848ae4f875e37cfd280be43faa25a9614c445106555c9f3b5ee4497aec9d71f39ac1af |
29 |
DIST libav-9.17.tar.xz 4080028 SHA256 e32d5f152bce1de283c002a35eb6e71f265877633dee8a40db4d16381dd5d17c SHA512 20af83d4b6a23c159c2386b6592ba6a6acf3f2c54e8aeb16dd0c8a64d637fbde24f37b864698b1143c6802b64a7b5e8ddfe0e7601b35c35686a789e2b3232f5a WHIRLPOOL ec07b5dd116e87416a9841044e09a6ef9b124fe4882f53e88711a32813d3d3a1d71f5067854bbd553ecdadec401dbbb8b504bfc1c6966bfd5e2db79459fb9995 |
30 |
|
31 |
diff --git a/media-video/libav/libav-11.7.ebuild b/media-video/libav/libav-11.7.ebuild |
32 |
new file mode 100644 |
33 |
index 0000000..ee44d33 |
34 |
--- /dev/null |
35 |
+++ b/media-video/libav/libav-11.7.ebuild |
36 |
@@ -0,0 +1,347 @@ |
37 |
+# Copyright 1999-2016 Gentoo Foundation |
38 |
+# Distributed under the terms of the GNU General Public License v2 |
39 |
+# $Id$ |
40 |
+ |
41 |
+EAPI=5 |
42 |
+ |
43 |
+inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs |
44 |
+ |
45 |
+if [[ ${PV} == *9999 ]] ; then |
46 |
+ : ${EGIT_REPO_URI:="git://git.libav.org/libav.git"} |
47 |
+ if [[ ${PV%9999} != "" ]] ; then |
48 |
+ : ${EGIT_BRANCH:="release/${PV%.9999}"} |
49 |
+ fi |
50 |
+ inherit git-r3 |
51 |
+fi |
52 |
+ |
53 |
+DESCRIPTION="Complete solution to record, convert and stream audio and video" |
54 |
+HOMEPAGE="https://libav.org/" |
55 |
+if [[ ${PV} == *9999 ]] ; then |
56 |
+ SRC_URI="" |
57 |
+elif [[ ${PV%_p*} != ${PV} ]] ; then # Gentoo snapshot |
58 |
+ SRC_URI="https://dev.gentoo.org/~lu_zero/libav/${P}.tar.xz" |
59 |
+else # Official release |
60 |
+ SRC_URI="https://libav.org/releases/${P}.tar.xz" |
61 |
+fi |
62 |
+# 9999 does not have fate-*.tar.xz |
63 |
+[[ ${PV%9999} != "" ]] && SRC_URI+=" test? ( https://dev.gentoo.org/~lu_zero/libav/fate-${PV%%.*}.tar.xz )" |
64 |
+ |
65 |
+LICENSE="LGPL-2.1 gpl? ( GPL-3 )" |
66 |
+SLOT="0/11" |
67 |
+[[ ${PV} == *9999 ]] || \ |
68 |
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" |
69 |
+IUSE="aac alsa amr bs2b +bzip2 cdio cpudetection custom-cflags debug doc +encode faac fdk |
70 |
+ frei0r fontconfig +gpl gsm +hardcoded-tables ieee1394 jack jpeg2k libressl mp3 |
71 |
+ +network openssl opus oss pic pulseaudio rtmp schroedinger sdl speex ssl |
72 |
+ static-libs test theora threads tools truetype twolame v4l vaapi vdpau vorbis vpx X |
73 |
+ wavpack webp x264 x265 xvid +zlib" |
74 |
+ |
75 |
+# String for CPU features in the useflag[:configure_option] form |
76 |
+# if :configure_option isn't set, it will use 'useflag' as configure option |
77 |
+CPU_FEATURES="altivec armv5te armv6 armv6t2 armvfp:vfp neon" |
78 |
+X86_CPU_FEATURES="3dnow:amd3dnow 3dnowext:amd3dnowext mmx mmxext sse sse2 sse3 ssse3 sse4_1:sse4 sse4_2:sse42 avx xop fma3 fma4 avx2" |
79 |
+for i in ${X86_CPU_FEATURES} ; do |
80 |
+ CPU_FEATURES+=" cpu_flags_x86_${i%:*}:${i#*:}" |
81 |
+done |
82 |
+for i in ${CPU_FEATURES} ; do |
83 |
+ IUSE+=" ${i%:*}" |
84 |
+done |
85 |
+ |
86 |
+RDEPEND=" |
87 |
+ !media-video/ffmpeg:0 |
88 |
+ alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] ) |
89 |
+ amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] ) |
90 |
+ bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] ) |
91 |
+ bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) |
92 |
+ cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] ) |
93 |
+ encode? ( |
94 |
+ aac? ( >=media-libs/vo-aacenc-0.1.3[${MULTILIB_USEDEP}] ) |
95 |
+ amr? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) |
96 |
+ faac? ( >=media-libs/faac-1.28-r3[${MULTILIB_USEDEP}] ) |
97 |
+ mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] ) |
98 |
+ theora? ( |
99 |
+ >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] |
100 |
+ >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] |
101 |
+ ) |
102 |
+ twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] ) |
103 |
+ vorbis? ( |
104 |
+ >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] |
105 |
+ >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] |
106 |
+ ) |
107 |
+ webp? ( >=media-libs/libwebp-0.3.0[${MULTILIB_USEDEP}] ) |
108 |
+ wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] ) |
109 |
+ x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] ) |
110 |
+ x265? ( >=media-libs/x265-1.2:=[${MULTILIB_USEDEP}] ) |
111 |
+ xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] ) |
112 |
+ ) |
113 |
+ fdk? ( >=media-libs/fdk-aac-0.1.2[${MULTILIB_USEDEP}] ) |
114 |
+ frei0r? ( media-plugins/frei0r-plugins ) |
115 |
+ gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] ) |
116 |
+ ieee1394? ( |
117 |
+ >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}] |
118 |
+ >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}] |
119 |
+ ) |
120 |
+ jack? ( >=media-sound/jack-audio-connection-kit-0.121.3-r1[${MULTILIB_USEDEP}] ) |
121 |
+ jpeg2k? ( >=media-libs/openjpeg-1.5.0:0[${MULTILIB_USEDEP}] ) |
122 |
+ opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] ) |
123 |
+ pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] ) |
124 |
+ rtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] ) |
125 |
+ ssl? ( |
126 |
+ openssl? ( |
127 |
+ !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] ) |
128 |
+ libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] ) |
129 |
+ ) |
130 |
+ !openssl? ( >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}] ) |
131 |
+ ) |
132 |
+ sdl? ( >=media-libs/libsdl-1.2.15-r4[sound,video,${MULTILIB_USEDEP}] ) |
133 |
+ schroedinger? ( >=media-libs/schroedinger-1.0.11-r1[${MULTILIB_USEDEP}] ) |
134 |
+ speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] ) |
135 |
+ truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] ) |
136 |
+ fontconfig? ( >=media-libs/fontconfig-2.10[${MULTILIB_USEDEP}] ) |
137 |
+ vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] ) |
138 |
+ vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] ) |
139 |
+ vpx? ( >=media-libs/libvpx-1.2.0_pre20130625[${MULTILIB_USEDEP}] ) |
140 |
+ X? ( |
141 |
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] |
142 |
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] |
143 |
+ >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}] |
144 |
+ ) |
145 |
+ zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) |
146 |
+" |
147 |
+ |
148 |
+DEPEND="${RDEPEND} |
149 |
+ >=sys-devel/make-3.81 |
150 |
+ doc? ( app-text/texi2html ) |
151 |
+ ieee1394? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
152 |
+ cpu_flags_x86_mmx? ( dev-lang/yasm ) |
153 |
+ rtmp? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
154 |
+ schroedinger? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
155 |
+ ssl? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
156 |
+ test? ( sys-devel/bc ) |
157 |
+ truetype? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
158 |
+ fontconfig? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) |
159 |
+ v4l? ( sys-kernel/linux-headers ) |
160 |
+" |
161 |
+ |
162 |
+RDEPEND="${RDEPEND} |
163 |
+ abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20140508-r3 |
164 |
+ !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )" |
165 |
+ |
166 |
+# faac can't be binary distributed |
167 |
+# openssl support marked as nonfree |
168 |
+# faac and aac are concurent implementations |
169 |
+# amr and aac require at least lgpl3 |
170 |
+# x264 requires gpl2 |
171 |
+REQUIRED_USE=" |
172 |
+ rtmp? ( network ) |
173 |
+ amr? ( gpl ) aac? ( gpl ) x264? ( gpl ) X? ( gpl ) cdio? ( gpl ) x265? ( gpl ) |
174 |
+ test? ( encode zlib ) |
175 |
+ fontconfig? ( truetype ) |
176 |
+" |
177 |
+RESTRICT="faac? ( bindist ) fdk? ( bindist ) openssl? ( bindist )" |
178 |
+ |
179 |
+MULTILIB_WRAPPED_HEADERS=( |
180 |
+ /usr/include/libavutil/avconfig.h |
181 |
+) |
182 |
+ |
183 |
+src_unpack() { |
184 |
+ [[ ${PV} == *9999 ]] && git-r3_src_unpack |
185 |
+ # 9999 does not have fate-*.tar.xz |
186 |
+ [[ ${PV%9999} != "" ]] && default_src_unpack |
187 |
+} |
188 |
+ |
189 |
+src_prepare() { |
190 |
+ epatch_user |
191 |
+ |
192 |
+ epatch "${FILESDIR}"/libav-11.3-libvpx-1.5.0.patch #565696 |
193 |
+ |
194 |
+ # if we have snapshot then we need to hardcode the version |
195 |
+ if [[ ${PV%_p*} != ${PV} ]]; then |
196 |
+ sed -i -e "s/UNKNOWN/DATE-${PV#*_pre}/" "${S}/version.sh" || die |
197 |
+ fi |
198 |
+ |
199 |
+ TOOLS=( aviocat graph2dot ismindex pktdumper qt-faststart trasher ) |
200 |
+ use zlib && TOOLS+=( cws2fws ) |
201 |
+ |
202 |
+ MAKEOPTS+=" V=1" |
203 |
+} |
204 |
+ |
205 |
+multilib_src_configure() { |
206 |
+ local myconf=( ${EXTRA_LIBAV_CONF} ) |
207 |
+ local uses i |
208 |
+ |
209 |
+ # 9999 does not have fate-*.tar.xz |
210 |
+ [[ ${PV%9999} != "" ]] && use test && myconf+=( --samples="${WORKDIR}/fate" ) |
211 |
+ |
212 |
+ myconf+=( |
213 |
+ $(use_enable gpl) |
214 |
+ $(use_enable gpl version3) |
215 |
+ # It is a security concern and removed in the next version |
216 |
+ --disable-protocol=concat |
217 |
+ ) |
218 |
+ |
219 |
+ # enabled by default |
220 |
+ uses="debug doc network zlib" |
221 |
+ for i in ${uses}; do |
222 |
+ use ${i} || myconf+=( --disable-${i} ) |
223 |
+ done |
224 |
+ use bzip2 || myconf+=( --disable-bzlib ) |
225 |
+ use sdl || myconf+=( --disable-avplay ) |
226 |
+ |
227 |
+ if use ssl; then |
228 |
+ use openssl && myconf+=( --enable-openssl --enable-nonfree ) \ |
229 |
+ || myconf+=( --enable-gnutls ) |
230 |
+ fi |
231 |
+ |
232 |
+ use custom-cflags && myconf+=( --disable-optimizations ) |
233 |
+ use cpudetection && myconf+=( --enable-runtime-cpudetect ) |
234 |
+ |
235 |
+ use vdpau || myconf+=( --disable-vdpau ) |
236 |
+ |
237 |
+ use vaapi && myconf+=( --enable-vaapi ) |
238 |
+ |
239 |
+ # Encoders |
240 |
+ if use encode; then |
241 |
+ use faac && myconf+=( --enable-nonfree ) |
242 |
+ use mp3 && myconf+=( --enable-libmp3lame ) |
243 |
+ use amr && myconf+=( --enable-libvo-amrwbenc ) |
244 |
+ use aac && myconf+=( --enable-libvo-aacenc ) |
245 |
+ uses="faac theora twolame vorbis wavpack webp x264 x265 xvid" |
246 |
+ for i in ${uses}; do |
247 |
+ use ${i} && myconf+=( --enable-lib${i} ) |
248 |
+ done |
249 |
+ else |
250 |
+ myconf+=( --disable-encoders ) |
251 |
+ fi |
252 |
+ |
253 |
+ # libavdevice options |
254 |
+ use cdio && myconf+=( --enable-libcdio ) |
255 |
+ use ieee1394 && myconf+=( --enable-libdc1394 ) |
256 |
+ use pulseaudio && myconf+=( --enable-libpulse ) |
257 |
+ |
258 |
+ # Indevs |
259 |
+ # v4l1 is gone since linux-headers-2.6.38 |
260 |
+ myconf+=( --disable-indev=v4l ) |
261 |
+ use v4l || myconf+=( --disable-indev=v4l2 ) |
262 |
+ for i in alsa oss jack; do |
263 |
+ use ${i} || myconf+=( --disable-indev=${i} ) |
264 |
+ done |
265 |
+ use X && myconf+=( --enable-x11grab ) |
266 |
+ # Outdevs |
267 |
+ for i in alsa oss ; do |
268 |
+ use ${i} || myconf+=( --disable-outdev=${i} ) |
269 |
+ done |
270 |
+ # libavfilter options |
271 |
+ use bs2b && myconf+=( --enable-libbs2b ) |
272 |
+ multilib_is_native_abi && use frei0r && myconf+=( --enable-frei0r ) |
273 |
+ use truetype && myconf+=( --enable-libfreetype ) |
274 |
+ use fontconfig && myconf+=( --enable-libfontconfig ) |
275 |
+ |
276 |
+ # Threads; we only support pthread for now |
277 |
+ use threads && myconf+=( --enable-pthreads ) |
278 |
+ |
279 |
+ # Decoders |
280 |
+ use amr && myconf+=( --enable-libopencore-amrwb --enable-libopencore-amrnb ) |
281 |
+ use fdk && myconf+=( --enable-nonfree --enable-libfdk-aac ) |
282 |
+ uses="gsm opus rtmp schroedinger speex vpx" |
283 |
+ for i in ${uses}; do |
284 |
+ use ${i} && myconf+=( --enable-lib${i} ) |
285 |
+ done |
286 |
+ use jpeg2k && myconf+=( --enable-libopenjpeg ) |
287 |
+ |
288 |
+ # CPU features |
289 |
+ for i in ${CPU_FEATURES}; do |
290 |
+ use ${i%:*} || myconf+=( --disable-${i#*:} ) |
291 |
+ done |
292 |
+ |
293 |
+ # pass the right -mfpu as extra |
294 |
+ use neon && append-cflags -mfpu=neon |
295 |
+ |
296 |
+ # disable mmx accelerated code if PIC is required |
297 |
+ # as the provided asm decidedly is not PIC for x86. |
298 |
+ if use pic && [[ ${ABI} == x86 ]]; then |
299 |
+ myconf+=( --disable-mmx --disable-mmxext ) |
300 |
+ fi |
301 |
+ |
302 |
+ # Option to force building pic |
303 |
+ use pic && myconf+=( --enable-pic ) |
304 |
+ |
305 |
+ # cross compile support |
306 |
+ if tc-is-cross-compiler ; then |
307 |
+ myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- ) |
308 |
+ case ${CHOST} in |
309 |
+ *freebsd*) |
310 |
+ myconf+=( --target-os=freebsd ) |
311 |
+ ;; |
312 |
+ mingw32*) |
313 |
+ myconf+=( --target-os=mingw32 ) |
314 |
+ ;; |
315 |
+ *linux*) |
316 |
+ myconf+=( --target-os=linux ) |
317 |
+ ;; |
318 |
+ esac |
319 |
+ fi |
320 |
+ |
321 |
+ # Misc stuff |
322 |
+ use hardcoded-tables && myconf+=( --enable-hardcoded-tables ) |
323 |
+ |
324 |
+ # Specific workarounds for too-few-registers arch... |
325 |
+ if [[ ${ABI} == x86 ]]; then |
326 |
+ local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} |
327 |
+ filter-flags -fforce-addr -momit-leaf-frame-pointer |
328 |
+ append-flags -fomit-frame-pointer |
329 |
+ is-flag -O? || append-flags -O2 |
330 |
+ if use debug; then |
331 |
+ # no need to warn about debug if not using debug flag |
332 |
+ ewarn "" |
333 |
+ ewarn "Debug information will be almost useless as the frame pointer is omitted." |
334 |
+ ewarn "This makes debugging harder, so crashes that has no fixed behavior are" |
335 |
+ ewarn "difficult to fix. Please have that in mind." |
336 |
+ ewarn "" |
337 |
+ fi |
338 |
+ fi |
339 |
+ |
340 |
+ set -- "${S}"/configure \ |
341 |
+ --prefix="${EPREFIX}"/usr \ |
342 |
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \ |
343 |
+ --shlibdir="${EPREFIX}"/usr/$(get_libdir) \ |
344 |
+ --mandir="${EPREFIX}"/usr/share/man \ |
345 |
+ --enable-shared \ |
346 |
+ --cc="$(tc-getCC)" \ |
347 |
+ --ar="$(tc-getAR)" \ |
348 |
+ --optflags="${CFLAGS}" \ |
349 |
+ --extra-cflags="${CFLAGS}" \ |
350 |
+ $(use_enable static-libs static) \ |
351 |
+ "${myconf[@]}" |
352 |
+ echo "${@}" |
353 |
+ "${@}" || die |
354 |
+} |
355 |
+ |
356 |
+multilib_src_compile() { |
357 |
+ emake |
358 |
+ |
359 |
+ if use tools; then |
360 |
+ tc-export CC |
361 |
+ |
362 |
+ emake ${TOOLS[@]/#/tools/} |
363 |
+ fi |
364 |
+} |
365 |
+ |
366 |
+multilib_src_install() { |
367 |
+ emake DESTDIR="${D}" install install-man |
368 |
+ use doc && dodoc doc/*.html |
369 |
+ |
370 |
+ if use tools; then |
371 |
+ dobin ${TOOLS[@]/#/tools/} |
372 |
+ fi |
373 |
+} |
374 |
+ |
375 |
+multilib_src_install_all() { |
376 |
+ dodoc Changelog README.md INSTALL |
377 |
+} |
378 |
+ |
379 |
+multilib_src_test() { |
380 |
+ local _libs="$(for i in lib*/;do echo -n "${BUILD_DIR}/${i%/}:";done)" |
381 |
+ einfo "LD_LIBRARY_PATH is set to \"${_libs}\"" |
382 |
+ LD_LIBRARY_PATH="${_libs}" emake -k -j1 fate |
383 |
+} |