diff options
author | 2016-06-04 01:42:08 +0200 | |
---|---|---|
committer | 2016-06-04 01:50:38 +0200 | |
commit | 24682fa7ca762c19de50999d2f93f9969c5b2e5a (patch) | |
tree | b2993ad03e5bf156a099eb572e2ea3a5302d595f /dev-lang | |
parent | dev-python/jira: add dev-python/jira-1.0.5 (diff) | |
download | gentoo-24682fa7ca762c19de50999d2f93f9969c5b2e5a.tar.gz gentoo-24682fa7ca762c19de50999d2f93f9969c5b2e5a.tar.bz2 gentoo-24682fa7ca762c19de50999d2f93f9969c5b2e5a.zip |
dev-lang/perl: Add patchlevel-gentoo to perl MANIFEST
To allow miniperl compilation, patchlevel-gentoo.h must be in the MANIFEST.
Configure uses this file to create the /host symlinks.
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Comment from Gentoo perl team: Being nice here and adding this commit which
ended up without any further reasons or docs in our mailbox. I can't see how it
could hurt. I can't really see any problem that it's supposed to fix
either. Hey chromium team, more words please next time!
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/perl/files/eblits/src_prepare-v50240002.eblit | 74 | ||||
-rw-r--r-- | dev-lang/perl/perl-5.24.0-r1.ebuild | 2 |
2 files changed, 75 insertions, 1 deletions
diff --git a/dev-lang/perl/files/eblits/src_prepare-v50240002.eblit b/dev-lang/perl/files/eblits/src_prepare-v50240002.eblit new file mode 100644 index 000000000000..b30b1a57fcf9 --- /dev/null +++ b/dev-lang/perl/files/eblits/src_prepare-v50240002.eblit @@ -0,0 +1,74 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +src_prepare_update_patchlevel_h() { + # Copied and modified from debian: + # Copyright 2011 Niko Tyni + # This program is free software; you can redistribute it and/or modify + # it under the same terms as Perl itself. + local patchdir="${WORKDIR}/patches" + local prefix + local patchoutput="patchlevel-gentoo.h" + + [[ -f ${patchdir}/series ]] || return 0 + +while read patch +do + patchname=$(echo $patch | sed 's/\.diff$//') + < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' + + # massage the patch headers + s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; + s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; + s|^Bug-Gentoo: ||; tprepend; + s/^\(Subject\|Description\): //; tappend; + s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; + + # post-process at the end of input + $ { x; + # include the version number in the patchlevel.h description (if available) + s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/; + + # escape any backslashes and double quotes + s|\\|\\\\|g; s|"|\\"|g; + + # add a prefix + s|^|\t,"'"$prefix$patchname"' - |; + # newlines away + s/\n/ /g; s/ */ /g; + # add a suffix + s/ *$/"/; p + }; + # stop all processing + d; + # label: append to the hold space + :append H; d; + # label: prepend to the hold space + :prepend x; H; d; + ' +done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}" +echo "${patchoutput}" >> "${S}/MANIFEST" +} + +eblit-perl-src_prepare() { + local patch + EPATCH_OPTS+=" -p1" + einfo "Applying patches from ${MY_P}-${PATCH_VER} ..." + while read patch ; do + EPATCH_SINGLE_MSG=" ${patch} ..." + epatch "${WORKDIR}"/patches/${patch} + done < "${WORKDIR}"/patches/series + + src_prepare_update_patchlevel_h + + # pod/perltoc.pod fails + # lib/ExtUtils/t/Embed.t fails + if ! tc-is-static-only ; then + ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die + ln -s ${LIBPERL} libperl$(get_libname ) || die + fi + + default +} + diff --git a/dev-lang/perl/perl-5.24.0-r1.ebuild b/dev-lang/perl/perl-5.24.0-r1.ebuild index 1f3498923190..d63e0dc8ddaf 100644 --- a/dev-lang/perl/perl-5.24.0-r1.ebuild +++ b/dev-lang/perl/perl-5.24.0-r1.ebuild @@ -102,7 +102,7 @@ eblit-run() { eblit-run-maybe eblit-$1-post } -src_prepare() { eblit-run src_prepare v50240001 ; } +src_prepare() { eblit-run src_prepare v50240002 ; } src_configure() { eblit-run src_configure v50240002 ; } |