Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils-hppa64/
Date: Sat, 04 Aug 2018 18:24:35
Message-Id: 1533407053.0e882fda059ed56bfcf3b696cd55a9a6ece42130.dilfridge@gentoo
1 commit: 0e882fda059ed56bfcf3b696cd55a9a6ece42130
2 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
3 AuthorDate: Sat Aug 4 18:23:11 2018 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Sat Aug 4 18:24:13 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e882fda
7
8 sys-devel/binutils-hppa64: Remove old
9
10 Package-Manager: Portage-2.3.44, Repoman-2.3.10
11
12 sys-devel/binutils-hppa64/Manifest | 2 -
13 .../binutils-hppa64/binutils-hppa64-2.31.ebuild | 393 ---------------------
14 2 files changed, 395 deletions(-)
15
16 diff --git a/sys-devel/binutils-hppa64/Manifest b/sys-devel/binutils-hppa64/Manifest
17 index 0174afd5183..b4bce3e7c8c 100644
18 --- a/sys-devel/binutils-hppa64/Manifest
19 +++ b/sys-devel/binutils-hppa64/Manifest
20 @@ -15,7 +15,5 @@ DIST binutils-2.29.tar.bz2 29073316 BLAKE2B 0eb7bbefa1ac5f4d753ca9328d339a466d4f
21 DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
22 DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
23 DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
24 -DIST binutils-2.31-patches-1.tar.xz 16692 BLAKE2B ee9c7b344b12073c881eaf6fa80e8cb3187add720a26b60e7ef7db9dc3eb8e6e2b83cd0afb3115c4846aa914f8957554bd010f67af34dc5ad81e676639cf361e SHA512 4004d52327babd00f946b199f71e9eca840e66c65a287730af80b5a69138fe5f946f33c13400e028088238314c644f00b858049f8923948d2e6144dc779c24c0
25 DIST binutils-2.31.1-patches-1.tar.xz 10644 BLAKE2B 3c2e09713593fc01d78d45ee4e4ac92020d5de781325c8ea98a5193a36a2a0a814f1b6730ae718ad92f92c5876e8e47d0eee7c42d2fce281cc0b37fadb85c42b SHA512 d701e6e2c9d22ca5c7ac4bf08d9206a6648b299b7b04a053aaabc34fa94d7c5fd074a08e3f3af66365069918d9000986c646430bf2adf94213cbf0d55d6e6c51
26 DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
27 -DIST binutils-2.31.tar.xz 20445772 BLAKE2B 02d9ef7f8ea0d24682716b6890916d507762b4672a3148192afbbc1d6323b3f3970eb630ec9af5e18c60ba1d4579d49d847e571bcd8b1236c24b04c9e3815481 SHA512 3448a71c42d790569c1159c1042aa520b2d8ac8af7506fb1f2a4199dfb13b39f1c2271a5cb3a643d10c7d8a388a73f190e90503d4793a016da7893473aa1c635
28
29 diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.31.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.31.ebuild
30 deleted file mode 100644
31 index 463c8b77f7d..00000000000
32 --- a/sys-devel/binutils-hppa64/binutils-hppa64-2.31.ebuild
33 +++ /dev/null
34 @@ -1,393 +0,0 @@
35 -# Copyright 1999-2018 Gentoo Foundation
36 -# Distributed under the terms of the GNU General Public License v2
37 -
38 -EAPI=6
39 -
40 -export CTARGET=hppa64-${CHOST#*-}
41 -
42 -inherit eutils libtool flag-o-matic gnuconfig multilib versionator
43 -
44 -DESCRIPTION="Tools necessary to build programs"
45 -HOMEPAGE="https://sourceware.org/binutils/"
46 -LICENSE="GPL-3+"
47 -IUSE="+cxx doc multitarget +nls static-libs test"
48 -
49 -# Variables that can be set here:
50 -# PATCH_VER - the patchset version
51 -# Default: empty, no patching
52 -# PATCH_BINUTILS_VER - the binutils version in the patchset name
53 -# - Default: PV
54 -# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
55 -# for the patchsets
56 -# Default: dilfridge :)
57 -
58 -PATCH_VER=1
59 -
60 -case ${PV} in
61 - 9999)
62 - BVER="git"
63 - EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
64 - inherit git-r3
65 - S=${WORKDIR}/binutils
66 - EGIT_CHECKOUT_DIR=${S}
67 - ;;
68 - *)
69 - BVER=${PV}
70 - SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
71 - ;;
72 -esac
73 -SLOT="${BVER}"
74 -#KEYWORDS="-* ~hppa"
75 -
76 -#
77 -# The Gentoo patchset
78 -#
79 -PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
80 -PATCH_DEV=${PATCH_DEV:-dilfridge}
81 -
82 -[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
83 - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
84 -
85 -#
86 -# The cross-compile logic
87 -#
88 -export CTARGET=${CTARGET:-${CHOST}}
89 -if [[ ${CTARGET} == ${CHOST} ]] ; then
90 - if [[ ${CATEGORY} == cross-* ]] ; then
91 - export CTARGET=${CATEGORY#cross-}
92 - fi
93 -fi
94 -is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
95 -
96 -#
97 -# The dependencies
98 -#
99 -RDEPEND="
100 - >=sys-devel/binutils-config-3
101 - sys-libs/zlib
102 -"
103 -DEPEND="${RDEPEND}
104 - doc? ( sys-apps/texinfo )
105 - test? ( dev-util/dejagnu )
106 - nls? ( sys-devel/gettext )
107 - sys-devel/flex
108 - virtual/yacc
109 -"
110 -if is_cross ; then
111 - # The build assumes the host has libiberty and such when cross-compiling
112 - # its build tools. We should probably make binutils itself build a local
113 - # copy to use, but until then, be lazy.
114 - DEPEND+=" >=sys-libs/binutils-libs-${PV}"
115 -fi
116 -
117 -MY_BUILDDIR=${WORKDIR}/build
118 -S=${WORKDIR}/${P/-hppa64/}
119 -
120 -src_unpack() {
121 - case ${PV} in
122 - 9999)
123 - git-r3_src_unpack;
124 - ;;
125 - *)
126 - default
127 - ;;
128 - esac
129 - mkdir -p "${MY_BUILDDIR}"
130 -}
131 -
132 -src_prepare() {
133 - if [[ ! -z ${PATCH_VER} ]] ; then
134 - einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
135 - eapply "${WORKDIR}/patch"/*.patch
136 - fi
137 -
138 - # This check should probably go somewhere else, like pkg_pretend.
139 - if [[ ${CTARGET} == *-uclibc* ]] ; then
140 - if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
141 - die "sorry, but this binutils doesn't yet support uClibc :("
142 - fi
143 - fi
144 -
145 - # Make sure our explicit libdir paths don't get clobbered. #562460
146 - sed -i \
147 - -e 's:@bfdlibdir@:@libdir@:g' \
148 - -e 's:@bfdincludedir@:@includedir@:g' \
149 - {bfd,opcodes}/Makefile.in || die
150 -
151 - # Fix locale issues if possible #122216
152 - if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
153 - einfo "Fixing misc issues in configure files"
154 - for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
155 - ebegin " Updating ${f/${S}\/}"
156 - patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
157 - || eerror "Please file a bug about this"
158 - eend $?
159 - done
160 - fi
161 -
162 - # Fix conflicts with newer glibc #272594
163 - if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
164 - sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
165 - fi
166 -
167 - # Apply things from PATCHES and user dirs
168 - default
169 -
170 - # Run misc portage update scripts
171 - gnuconfig_update
172 - elibtoolize --portage --no-uclibc
173 -}
174 -
175 -toolchain-binutils_bugurl() {
176 - printf "https://bugs.gentoo.org/"
177 -}
178 -toolchain-binutils_pkgversion() {
179 - printf "Gentoo ${BVER}"
180 - [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
181 -}
182 -
183 -src_configure() {
184 - # Setup some paths
185 - LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
186 - INCPATH=${LIBPATH}/include
187 - DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
188 - if is_cross ; then
189 - BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${BVER}
190 - else
191 - BINPATH=/usr/${CTARGET}/binutils-bin/${BVER}
192 - fi
193 -
194 - # Make sure we filter $LINGUAS so that only ones that
195 - # actually work make it through #42033
196 - strip-linguas -u */po
197 -
198 - # Keep things sane
199 - strip-flags
200 -
201 - local x
202 - echo
203 - for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
204 - einfo "$(printf '%10s' ${x}:) ${!x}"
205 - done
206 - echo
207 -
208 - cd "${MY_BUILDDIR}"
209 - local myconf=()
210 -
211 - # enable gold (installed as ld.gold) and ld's plugin architecture
212 - if use cxx ; then
213 - myconf+=( --enable-gold )
214 - myconf+=( --enable-plugins )
215 - fi
216 -
217 - if use nls ; then
218 - myconf+=( --without-included-gettext )
219 - else
220 - myconf+=( --disable-nls )
221 - fi
222 -
223 - myconf+=( --with-system-zlib )
224 -
225 - # For bi-arch systems, enable a 64bit bfd. This matches
226 - # the bi-arch logic in toolchain.eclass. #446946
227 - # We used to do it for everyone, but it's slow on 32bit arches. #438522
228 - case $(tc-arch) in
229 - ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
230 - esac
231 -
232 - use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
233 -
234 - [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
235 -
236 - is_cross && myconf+=(
237 - --with-sysroot="${EPREFIX}"/usr/${CTARGET}
238 - --enable-poison-system-directories
239 - )
240 -
241 - # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
242 - # on everyone in alpha (for now), we'll just enable it when possible
243 - has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
244 - has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
245 -
246 - # mips can't do hash-style=gnu ...
247 - if [[ $(tc-arch) != mips ]] ; then
248 - myconf+=( --enable-default-hash-style=gnu )
249 - fi
250 -
251 - myconf+=(
252 - --prefix="${EPREFIX}"/usr
253 - --host=${CHOST}
254 - --target=${CTARGET}
255 - --datadir="${EPREFIX}"${DATAPATH}
256 - --datarootdir="${EPREFIX}"${DATAPATH}
257 - --infodir="${EPREFIX}"${DATAPATH}/info
258 - --mandir="${EPREFIX}"${DATAPATH}/man
259 - --bindir="${EPREFIX}"${BINPATH}
260 - --libdir="${EPREFIX}"${LIBPATH}
261 - --libexecdir="${EPREFIX}"${LIBPATH}
262 - --includedir="${EPREFIX}"${INCPATH}
263 - --enable-obsolete
264 - --enable-shared
265 - --enable-threads
266 - # Newer versions (>=2.27) offer a configure flag now.
267 - --enable-relro
268 - # Newer versions (>=2.24) make this an explicit option. #497268
269 - --enable-install-libiberty
270 - --disable-werror
271 - --with-bugurl="$(toolchain-binutils_bugurl)"
272 - --with-pkgversion="$(toolchain-binutils_pkgversion)"
273 - $(use_enable static-libs static)
274 - ${EXTRA_ECONF}
275 - # Disable modules that are in a combined binutils/gdb tree. #490566
276 - --disable-{gdb,libdecnumber,readline,sim}
277 - # Strip out broken static link flags.
278 - # https://gcc.gnu.org/PR56750
279 - --without-stage1-ldflags
280 - )
281 - echo ./configure "${myconf[@]}"
282 - "${S}"/configure "${myconf[@]}" || die
283 -
284 - # Prevent makeinfo from running if doc is unset.
285 - if ! use doc ; then
286 - sed -i \
287 - -e '/^MAKEINFO/s:=.*:= true:' \
288 - Makefile || die
289 - fi
290 -}
291 -
292 -src_compile() {
293 - cd "${MY_BUILDDIR}"
294 - emake all
295 -
296 - # only build info pages if the user wants them
297 - if use doc ; then
298 - emake info
299 - fi
300 -
301 - # we nuke the manpages when we're left with junk
302 - # (like when we bootstrap, no perl -> no manpages)
303 - find . -name '*.1' -a -size 0 -delete
304 -}
305 -
306 -src_test() {
307 - cd "${MY_BUILDDIR}"
308 - emake -k check
309 -}
310 -
311 -src_install() {
312 - local x d
313 -
314 - cd "${MY_BUILDDIR}"
315 - emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
316 - rm -rf "${ED}"/${LIBPATH}/bin
317 - use static-libs || find "${ED}" -name '*.la' -delete
318 -
319 - # Newer versions of binutils get fancy with ${LIBPATH} #171905
320 - cd "${ED}"/${LIBPATH}
321 - for d in ../* ; do
322 - [[ ${d} == ../${BVER} ]] && continue
323 - mv ${d}/* . || die
324 - rmdir ${d} || die
325 - done
326 -
327 - # Now we collect everything intp the proper SLOT-ed dirs
328 - # When something is built to cross-compile, it installs into
329 - # /usr/$CHOST/ by default ... we have to 'fix' that :)
330 - if is_cross ; then
331 - cd "${ED}"/${BINPATH}
332 - for x in * ; do
333 - mv ${x} ${x/${CTARGET}-}
334 - done
335 -
336 - if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
337 - mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
338 - mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
339 - rm -r "${ED}"/usr/${CHOST}/{include,lib}
340 - fi
341 - fi
342 - insinto ${INCPATH}
343 - local libiberty_headers=(
344 - # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
345 - demangle.h
346 - dyn-string.h
347 - fibheap.h
348 - hashtab.h
349 - libiberty.h
350 - objalloc.h
351 - splay-tree.h
352 - )
353 - doins "${libiberty_headers[@]/#/${S}/include/}" || die
354 - if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
355 - mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
356 - rm -r "${ED}"/${LIBPATH}/lib
357 - fi
358 -
359 - # Generate an env.d entry for this binutils
360 - insinto /etc/env.d/binutils
361 - cat <<-EOF > "${T}"/env.d
362 - TARGET="${CTARGET}"
363 - VER="${BVER}"
364 - LIBPATH="${EPREFIX}${LIBPATH}"
365 - EOF
366 - newins "${T}"/env.d ${CTARGET}-${BVER}
367 -
368 - # Handle documentation
369 - if ! is_cross ; then
370 - cd "${S}"
371 - dodoc README
372 - docinto bfd
373 - dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
374 - docinto binutils
375 - dodoc binutils/ChangeLog binutils/NEWS binutils/README
376 - docinto gas
377 - dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
378 - docinto gprof
379 - dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
380 - docinto ld
381 - dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
382 - docinto libiberty
383 - dodoc libiberty/ChangeLog* libiberty/README
384 - docinto opcodes
385 - dodoc opcodes/ChangeLog*
386 - fi
387 -
388 - # Remove shared info pages
389 - rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
390 -
391 - # Trim all empty dirs
392 - find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
393 -
394 - # the hppa64 hack; this should go into 9999 as a PN-conditional
395 - # tweak the default fake list a little bit
396 - cd "${D}"/etc/env.d/binutils
397 - sed -i '/FAKE_TARGETS=/s:"$: hppa64-linux":' ${CTARGET}-${BVER} || die
398 -}
399 -
400 -pkg_postinst() {
401 - # Make sure this ${CTARGET} has a binutils version selected
402 - [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
403 - binutils-config ${CTARGET}-${BVER}
404 -}
405 -
406 -pkg_postrm() {
407 - local current_profile=$(binutils-config -c ${CTARGET})
408 -
409 - # If no other versions exist, then uninstall for this
410 - # target ... otherwise, switch to the newest version
411 - # Note: only do this if this version is unmerged. We
412 - # rerun binutils-config if this is a remerge, as
413 - # we want the mtimes on the symlinks updated (if
414 - # it is the same as the current selected profile)
415 - if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${BVER} ]] ; then
416 - local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
417 - choice=${choice//$'\n'/ }
418 - choice=${choice/* }
419 - if [[ -z ${choice} ]] ; then
420 - binutils-config -u ${CTARGET}
421 - else
422 - binutils-config ${choice}
423 - fi
424 - elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${BVER} ]] ; then
425 - binutils-config ${CTARGET}-${BVER}
426 - fi
427 -}