commit: 41659bb9fd06af3429c1d81c80135c47908b57fd Author: Kent Fredric <kentnl <AT> gentoo <DOT> org> AuthorDate: Mon Jan 23 23:18:16 2017 +0000 Commit: Kent Fredric <kentnl <AT> gentoo <DOT> org> CommitDate: Fri Apr 21 21:30:59 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41659bb9
perl-functions.eclass: add perl_get_vendorlib eclass/perl-functions.eclass | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/eclass/perl-functions.eclass b/eclass/perl-functions.eclass index 5073215e0e7..6d2fa2eed69 100644 --- a/eclass/perl-functions.eclass +++ b/eclass/perl-functions.eclass @@ -447,4 +447,23 @@ perl_get_raw_vendorlib() { -e'exists $Config{$ARGV[0]} || die qq{No such Config key "$ARGV[0]"}; print $Config{$ARGV[0]}; exit 0' -- "installvendorlib" || die "Can't extract installvendorlib from Perl Configuration" -} \ No newline at end of file +} + +# @FUNCTION: perl_get_vendorlib +# @USAGE: perl_get_vendorlib +# @DESCRIPTION: +# +# Convenience helper for returning Perls' vendor install root +# without EPREFIXing. +perl_get_vendorlib() { + debug-print-function $FUNCNAME "$@" + + [[ $# -lt 1 ]] || die "${FUNCNAME}: Too many parameters ($#)" + + # Requires perl 5.14 for /r attribute of s/// + # Just in case somebody out there is stuck in a time warp: upgrade perl first + perl -M5.014 -MConfig \ + -e'exists $Config{$ARGV[0]} || die qq{No such Config key "$ARGV[0]"}; + print $Config{$ARGV[0]} =~ s{\A\Q$ARGV[1]\E}{}r; + exit 0' -- "installvendorlib" "$EPREFIX" || die "Can't extract installvendorlib from Perl Configuration" +}