Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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!
- Loading branch information
Showing
2 changed files
with
75 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters