254 lines
9.1 KiB
Bash
254 lines
9.1 KiB
Bash
#!/usr/bin/bash
|
|
# JOBoRun : Jwm OpenBox Obarun RUNit
|
|
# Maintainer : Joe Bo Run <joborun@disroot.org>
|
|
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcore/$pkgname"
|
|
# Website : https://pozol.eu
|
|
#-----------------------------------------| DESCRIPTION |---------------------------------------
|
|
|
|
pkgname=perl
|
|
pkgver=5.38.0
|
|
_baseversion="${pkgver%.*}"
|
|
pkgrel=01
|
|
pkgdesc="A highly capable, feature-rich programming language"
|
|
groups=( jobbot )
|
|
url="https://www.perl.org"
|
|
depends=('gdbm>=1.17' 'db5.3' 'db' 'glibc' 'libxcrypt' 'libcrypt.so')
|
|
checkdepends=('procps-ng')
|
|
# NOTE: This array is automatically generated by `./patchprov`.
|
|
# If you want to add entries, do so in the next array.
|
|
provides=('perl-archive-tar=2.40'
|
|
'perl-attribute-handlers=1.03'
|
|
'perl-autodie=2.36'
|
|
'perl-autoloader=5.74'
|
|
'perl-autouse=1.11'
|
|
'perl-base=2.27'
|
|
'perl-bignum=0.66'
|
|
'perl-carp=1.54'
|
|
'perl-compress-raw-bzip2=2.204_001'
|
|
'perl-compress-raw-zlib=2.204_001'
|
|
'perl-config-perl-v=0.36'
|
|
'perl-constant=1.33'
|
|
'perl-cpan-meta-requirements=2.140'
|
|
'perl-cpan-meta-yaml=0.018'
|
|
'perl-cpan-meta=2.150010'
|
|
'perl-cpan=2.36'
|
|
'perl-data-dumper=2.188'
|
|
'perl-db_file=1.858'
|
|
'perl-devel-ppport=3.71'
|
|
'perl-devel-selfstubber=1.06'
|
|
'perl-digest-md5=2.58_01'
|
|
'perl-digest-sha=6.04'
|
|
'perl-digest=1.20'
|
|
'perl-dumpvalue=1.21'
|
|
'perl-encode=3.19'
|
|
'perl-encoding-warnings=0.14'
|
|
'perl-env=1.06'
|
|
'perl-experimental=0.031'
|
|
'perl-exporter=5.77'
|
|
'perl-extutils-cbuilder=0.280238'
|
|
'perl-extutils-constant=0.25'
|
|
'perl-extutils-install=2.22'
|
|
'perl-extutils-makemaker=7.70'
|
|
'perl-extutils-manifest=1.73'
|
|
'perl-extutils-parsexs=3.51'
|
|
'perl-extutils-pl2bat=0.005'
|
|
'perl-file-fetch=1.04'
|
|
'perl-file-path=2.18'
|
|
'perl-file-temp=0.2311'
|
|
'perl-filter-simple=0.96'
|
|
'perl-filter-util-call=1.64'
|
|
'perl-findbin=1.53'
|
|
'perl-getopt-long=2.54'
|
|
'perl-http-tiny=0.086'
|
|
'perl-i18n-collate=1.02'
|
|
'perl-i18n-langtags=0.45'
|
|
'perl-if=0.0610'
|
|
'perl-io-compress=2.204'
|
|
'perl-io-socket-ip=0.41_01'
|
|
'perl-io-zlib=1.14'
|
|
'perl-io=1.52'
|
|
'perl-ipc-cmd=1.04'
|
|
'perl-ipc-sysv=2.09'
|
|
'perl-json-pp=4.16'
|
|
'perl-lib=0.65'
|
|
'perl-libnet=3.15'
|
|
'perl-locale-maketext-simple=0.21_01'
|
|
'perl-locale-maketext=1.33'
|
|
'perl-math-bigint-fastcalc=0.5013'
|
|
'perl-math-bigint=1.999837'
|
|
'perl-math-bigrat=0.2624'
|
|
'perl-math-complex=1.62'
|
|
'perl-memoize=1.16'
|
|
'perl-mime-base64=3.16_01'
|
|
'perl-module-corelist=5.20230520'
|
|
'perl-module-load-conditional=0.74'
|
|
'perl-module-load=0.36'
|
|
'perl-module-loaded=0.08'
|
|
'perl-module-metadata=1.000037'
|
|
'perl-net-ping=2.76'
|
|
'perl-params-check=0.38'
|
|
'perl-parent=0.241'
|
|
'perl-pathtools=3.89'
|
|
'perl-perl-ostype=1.010'
|
|
'perl-perlfaq=5.20210520'
|
|
'perl-perlio-via-quotedprint=0.10'
|
|
'perl-pod-checker=1.75'
|
|
'perl-pod-escapes=1.07'
|
|
'perl-pod-perldoc=3.2801'
|
|
'perl-pod-simple=3.43'
|
|
'perl-pod-usage=2.03'
|
|
'perl-podlators=5.010'
|
|
'perl-safe=2.44'
|
|
'perl-scalar-list-utils=1.63'
|
|
'perl-search-dict=1.07'
|
|
'perl-selfloader=1.26'
|
|
'perl-socket=2.036'
|
|
'perl-storable=3.32'
|
|
'perl-sys-syslog=0.36'
|
|
'perl-term-ansicolor=5.01'
|
|
'perl-term-cap=1.18'
|
|
'perl-term-complete=1.403'
|
|
'perl-term-readline=1.17'
|
|
'perl-test-harness=3.44'
|
|
'perl-test-simple=1.302194'
|
|
'perl-test=1.31'
|
|
'perl-text-abbrev=1.02'
|
|
'perl-text-balanced=2.06'
|
|
'perl-text-parsewords=3.31'
|
|
'perl-text-tabs=2021.0814'
|
|
'perl-thread-queue=3.14'
|
|
'perl-thread-semaphore=2.13'
|
|
'perl-threads-shared=1.68'
|
|
'perl-threads=2.36'
|
|
'perl-tie-file=1.07'
|
|
'perl-tie-refhash=1.40'
|
|
'perl-time-hires=1.9775'
|
|
'perl-time-local=1.30'
|
|
'perl-time-piece=1.3401_01'
|
|
'perl-unicode-collate=1.31'
|
|
'perl-unicode-normalize=1.32'
|
|
'perl-version=0.9929'
|
|
'perl-xsloader=0.32')
|
|
# Add your own provides here
|
|
provides=("${provides[@]}")
|
|
source=(https://www.cpan.org/src/5.0/perl-${pkgver}.tar.xz
|
|
# https://github.com/andk/cpanpm/commit/9c98370287.patch
|
|
sha256.txt::https://www.cpan.org/src/5.0/perl-$pkgver.tar.xz.sha256.txt
|
|
config.over
|
|
db_config.in
|
|
perlbin.csh
|
|
perlbin.fish
|
|
perlbin.sh
|
|
detect-old-perl-modules.hook
|
|
detect-old-perl-modules.sh)
|
|
options=('makeflags' '!purge' 'emptydirs')
|
|
|
|
prepare() {
|
|
cd "${pkgname}-${pkgver}"
|
|
|
|
# reproducible patchlevel_date
|
|
[ -n "${SOURCE_DATE_EPOCH}" ] && touch -h -d @$SOURCE_DATE_EPOCH patchlevel.h
|
|
|
|
cp -f ../db_config.in ./cpan/DB_File/config.in
|
|
|
|
# # CVE-2023-31484
|
|
# patch -Np1 -d cpan/CPAN -i "${srcdir}"/9c98370287.patch
|
|
|
|
}
|
|
|
|
build() {
|
|
cd "${pkgname}-${pkgver}"
|
|
|
|
# reproducible build overrides are only fully effective when loaded from file
|
|
cp ../config.over .
|
|
|
|
export TZ=UTC
|
|
./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \
|
|
-Dprefix=/usr -Dvendorprefix=/usr \
|
|
-Dprivlib=/usr/share/perl5/core_perl \
|
|
-Darchlib=/usr/lib/perl5/$_baseversion/core_perl \
|
|
-Dsitelib=/usr/share/perl5/site_perl \
|
|
-Dsitearch=/usr/lib/perl5/$_baseversion/site_perl \
|
|
-Dvendorlib=/usr/share/perl5/vendor_perl \
|
|
-Dvendorarch=/usr/lib/perl5/$_baseversion/vendor_perl \
|
|
-Dscriptdir=/usr/bin/core_perl \
|
|
-Dsitescript=/usr/bin/site_perl \
|
|
-Dvendorscript=/usr/bin/vendor_perl \
|
|
-Dinc_version_list=none \
|
|
-Dman1ext=1perl -Dman3ext=3perl \
|
|
-Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}"
|
|
make
|
|
}
|
|
|
|
## Jul 30 23 One test failed so we commented this section and rerun, you may have to do the same ##
|
|
check() {
|
|
cd "${pkgname}-${pkgver}"
|
|
# TEST_JOBS=$(echo "$MAKEFLAGS" | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness
|
|
make test
|
|
}
|
|
|
|
package() {
|
|
cd "${pkgname}-${pkgver}"
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
### Perl Settings ###
|
|
# Change man page extensions for site and vendor module builds.
|
|
# Set no mail address since bug reports should go to the bug tracker
|
|
# and not someone's email.
|
|
sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \
|
|
-e "/^cf_email=/ s/'.*'/''/" \
|
|
-e "/^perladmin=/ s/'.*'/''/" \
|
|
-i "${pkgdir}/usr/lib/perl5/$_baseversion/core_perl/Config_heavy.pl"
|
|
|
|
### CPAN Settings ###
|
|
# Set CPAN default config to use the site directories.
|
|
sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \
|
|
-e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
|
|
-i "${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm"
|
|
|
|
# Profile script to set paths to perl scripts.
|
|
install -D -m644 "${srcdir}/perlbin.sh" \
|
|
"${pkgdir}/etc/profile.d/perlbin.sh"
|
|
# Profile script to set paths to perl scripts on csh. (FS#22441)
|
|
install -D -m644 "${srcdir}/perlbin.csh" \
|
|
"${pkgdir}/etc/profile.d/perlbin.csh"
|
|
# Profile script to set paths to perl scripts on fish. (FS#51191)
|
|
install -D -m 755 "$srcdir/perlbin.fish" \
|
|
"$pkgdir/usr/share/fish/vendor_conf.d/perlbin.fish"
|
|
|
|
# Add the dirs so new installs will already have them in PATH once they
|
|
# install their first perl programm
|
|
install -d -m755 "$pkgdir/usr/bin/vendor_perl"
|
|
install -d -m755 "$pkgdir/usr/bin/site_perl"
|
|
|
|
#(cd ${pkgdir}/usr/bin; mv perl${pkgver} perl)
|
|
rm "$pkgdir/usr/bin/perl$pkgver"
|
|
|
|
install -D -m755 -t "$pkgdir/usr/share/libalpm/scripts" "$srcdir/detect-old-perl-modules.sh"
|
|
install -D -m644 -t "$pkgdir/usr/share/libalpm/hooks" "$srcdir/detect-old-perl-modules.hook"
|
|
|
|
find "$pkgdir" -name perllocal.pod -delete
|
|
find "$pkgdir" -name .packlist -delete
|
|
}
|
|
|
|
#---- arch license gpg-key & sha256sums ----
|
|
|
|
arch=(x86_64)
|
|
|
|
license=('GPL' 'PerlArtistic')
|
|
|
|
# https://www.cpan.org/src/5.0/perl-$pkgver.tar.xz.sha256.txt
|
|
|
|
sha256sums=(eca551caec3bc549a4e590c0015003790bdd1a604ffe19cc78ee631d51f7072e # perl-5.38.0.tar.xz
|
|
e74c62f22139dd92c1618399e5ec70cee08f33b67e6ee3c89f179fdc823d98fa # sha256.txt
|
|
84c7fae94f591f25d6568dd300f57bfe4924092559ab2d96f1038e67c353d190 # config.over
|
|
898dd20de9f9438cdcc0e5ca61fabea696a6eb0226647500f222dc4f8d8377af # db_config.in
|
|
3834ddced7051fd6e2d189db48c9266efe21bad467d2c6700c9c232830f6bfd9 # perlbin.csh
|
|
9b49a13607df8966a3f86f698d25f4b577be66405cc08f98869a03295617d3d1 # perlbin.fish
|
|
35491e903f0d93df995cda3c11a900a7e96df699d53f5ba49e1379150aaf0fbb # perlbin.sh
|
|
786f3c7938b0738337f7d47112ea7b84fd0e2d6c1af331b7d5e67b9865d6d2b4 # detect-old-perl-modules.hook
|
|
c5db3dcd1db71724fa4df5db34586688aa8db92ac6ffcbddaaa213c71cceff20) # detect-old-perl-modules.sh
|
|
|
|
## b4793adf613944fff6d2517ea762efa58037b5591c2a0df698a113f8e8189ecb perl-5.38.0-01-x86_64.pkg.tar.lz
|
|
|
|
|