OCaml 4.14.0 rebuild
[arch-packages.git] / perl / trunk / PKGBUILD
blob582a4c6bdd0498cfdf749fc8285ad93b147e2676
1 # Maintainer: Florian Pritz <bluewind@xinu.at>
2 # Contributor: Angel Velasquez <angvp@archlinux.org>
3 # Contributor: kevin <kevin.archlinux.org>
4 # Contributor: judd <jvinet.zeroflux.org>
5 # Contributor: francois <francois.archlinux.org>
7 pkgname=perl
8 pkgver=5.36.0
9 _baseversion="${pkgver%.*}"
10 pkgrel=1
11 pkgdesc="A highly capable, feature-rich programming language"
12 arch=(x86_64)
13 license=('GPL' 'PerlArtistic')
14 url="https://www.perl.org"
15 depends=('gdbm>=1.17' 'db' 'glibc' 'libxcrypt' 'libcrypt.so')
16 checkdepends=('procps-ng')
17 # NOTE: This array is automatically generated by `./patchprov`.
18 #       If you want to add entries, do so in the next array.
19 provides=('perl-archive-tar=2.40'
20           'perl-attribute-handlers=1.02'
21           'perl-autodie=2.34'
22           'perl-autoloader=5.74'
23           'perl-autouse=1.11'
24           'perl-base=2.27'
25           'perl-bignum=0.65'
26           'perl-carp=1.52'
27           'perl-compress-raw-bzip2=2.103'
28           'perl-compress-raw-zlib=2.105'
29           'perl-config-perl-v=0.33'
30           'perl-constant=1.33'
31           'perl-cpan-meta-requirements=2.140'
32           'perl-cpan-meta-yaml=0.018'
33           'perl-cpan-meta=2.150010'
34           'perl-cpan=2.33'
35           'perl-data-dumper=2.184'
36           'perl-db_file=1.857'
37           'perl-devel-ppport=3.68'
38           'perl-devel-selfstubber=1.06'
39           'perl-digest-md5=2.58'
40           'perl-digest-sha=6.02'
41           'perl-digest=1.20'
42           'perl-dumpvalue=1.21'
43           'perl-encode=3.17'
44           'perl-encoding-warnings=0.13'
45           'perl-env=1.05'
46           'perl-experimental=0.028'
47           'perl-exporter=5.77'
48           'perl-extutils-cbuilder=0.280236'
49           'perl-extutils-constant=0.25'
50           'perl-extutils-install=2.20'
51           'perl-extutils-makemaker=7.64'
52           'perl-extutils-manifest=1.73'
53           'perl-extutils-parsexs=3.45'
54           'perl-extutils-pl2bat=0.004'
55           'perl-file-fetch=1.04'
56           'perl-file-path=2.18'
57           'perl-file-temp=0.2311'
58           'perl-filter-simple=0.96'
59           'perl-filter-util-call=1.60'
60           'perl-findbin=1.53'
61           'perl-getopt-long=2.52'
62           'perl-http-tiny=0.080'
63           'perl-i18n-collate=1.02'
64           'perl-i18n-langtags=0.45'
65           'perl-if=0.0610'
66           'perl-io-compress=2.106'
67           'perl-io-socket-ip=0.41'
68           'perl-io-zlib=1.11'
69           'perl-io=1.50'
70           'perl-ipc-cmd=1.04'
71           'perl-ipc-sysv=2.09'
72           'perl-json-pp=4.07'
73           'perl-lib=0.65'
74           'perl-libnet=3.13'
75           'perl-locale-maketext-simple=0.21_01'
76           'perl-locale-maketext=1.31'
77           'perl-math-bigint-fastcalc=0.5012'
78           'perl-math-bigint=1.999830'
79           'perl-math-bigrat=0.2621'
80           'perl-math-complex=1.5902'
81           'perl-memoize=1.03_01'
82           'perl-mime-base64=3.16'
83           'perl-module-corelist=5.20220520'
84           'perl-module-load-conditional=0.74'
85           'perl-module-load=0.36'
86           'perl-module-loaded=0.08'
87           'perl-module-metadata=1.000037'
88           'perl-net-ping=2.74'
89           'perl-params-check=0.38'
90           'perl-parent=0.238'
91           'perl-pathtools=3.84'
92           'perl-perl-ostype=1.010'
93           'perl-perlfaq=5.20210520'
94           'perl-perlio-via-quotedprint=0.09'
95           'perl-pod-checker=1.74'
96           'perl-pod-escapes=1.07'
97           'perl-pod-perldoc=3.2801'
98           'perl-pod-simple=3.43'
99           'perl-pod-usage=2.01'
100           'perl-podlators=5.008'
101           'perl-safe=2.43'
102           'perl-scalar-list-utils=1.62'
103           'perl-search-dict=1.07'
104           'perl-selfloader=1.26'
105           'perl-socket=2.033'
106           'perl-storable=3.26'
107           'perl-sys-syslog=0.36'
108           'perl-term-ansicolor=5.01'
109           'perl-term-cap=1.17'
110           'perl-term-complete=1.403'
111           'perl-term-readline=1.17'
112           'perl-test-harness=3.44'
113           'perl-test-simple=1.302190'
114           'perl-test=1.31'
115           'perl-text-abbrev=1.02'
116           'perl-text-balanced=2.04'
117           'perl-text-parsewords=3.31'
118           'perl-text-tabs=2021.0814'
119           'perl-thread-queue=3.14'
120           'perl-thread-semaphore=2.13'
121           'perl-threads-shared=1.64'
122           'perl-threads=2.27'
123           'perl-tie-file=1.06'
124           'perl-tie-refhash=1.40'
125           'perl-time-hires=1.9770'
126           'perl-time-local=1.30'
127           'perl-time-piece=1.3401'
128           'perl-unicode-collate=1.31'
129           'perl-unicode-normalize=1.31'
130           'perl-version=0.9929'
131           'perl-xsloader=0.31')
132 # Add your own provides here
133 provides=("${provides[@]}")
134 source=(https://www.cpan.org/src/5.0/perl-${pkgver}.tar.xz
135         config.over
136         perlbin.sh
137         perlbin.csh
138         perlbin.fish
139         detect-old-perl-modules.sh
140         detect-old-perl-modules.hook)
141 options=('makeflags' '!purge' 'emptydirs')
142 sha512sums=('6dd6ac2a77566c173c5ab9c238cf555f2c3e592e89abb5600bc23ce1cbd0c349e0233f6417cbbf1f6d0aefc6a734ba491285af0d3dc68a605b658b65c89f1dab'
143             '1c924b5bf7413d097f62638a574d7decf36d98598b84cdb5fb31ff633b6f953371e14b004a2558a1a0b74b6b60b90b481af0f68555a49208fe6b226381fed79f'
144             '6ed5bc6dbdc47bc7f4c0fedbe18deaf35ab02a2e6700988beb545954bb1d0fe20ff1a4de39d6d9fc882ef1741f7bf6d85ba165d0cd8dc0d9939b789c894f48a1'
145             '53eb0cddfd637014f3d3a101665db8dcafe5ac5bf3d319a259974334eb89c1c405097518ae96b6d18e520194633c7be57c9b2cd9ae6398443eb08f1a2008d112'
146             '881e2efe05ba818cd7300f126800b56bb0685cb5c9c5fb7e67ef6aaf5abd17d2391a979d5d16d109c5111f4b35504ba83d19b0e6eda4431e8421fcbea19d2f1a'
147             'bd48af7a6209f2ad51aa1747a7238ecb11607a53f61460d873202bf14b55c3b7dd6f66f4a9f2cac8a24240313789a9a44dbc81b73587de46a6b1866bdfca5e26'
148             '063624b6fc3728339e4f352597e6913c476c4eaa8e1004b2a46c480b5cce9c42f3083d1e6960081202099acf2b7d0b5d13dc6b7ee0aa303c272826febdcd311e')
149 # https://www.cpan.org/src/5.0/perl-$pkgver.tar.xz.sha256.txt
151 prepare() {
152   cd "${srcdir}/${pkgname}-${pkgver}"
154   # reproducible patchlevel_date
155   [ -n "${SOURCE_DATE_EPOCH}" ] && touch -h -d @$SOURCE_DATE_EPOCH patchlevel.h
158 build() {
159   cd "${srcdir}/${pkgname}-${pkgver}"
161   if [ "${CARCH}" = "x86_64" ]; then
162     # for x86_64
163     arch_opts="-Dcccdlflags='-fPIC'"
164   else
165     # for i686
166     arch_opts=""
167   fi
169   # reproducible builds overrides are only fully effective when loaded from file
170   cp ../config.over .
172   export TZ=UTC
173   ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \
174     -Dprefix=/usr -Dvendorprefix=/usr \
175     -Dprivlib=/usr/share/perl5/core_perl \
176     -Darchlib=/usr/lib/perl5/$_baseversion/core_perl \
177     -Dsitelib=/usr/share/perl5/site_perl \
178     -Dsitearch=/usr/lib/perl5/$_baseversion/site_perl \
179     -Dvendorlib=/usr/share/perl5/vendor_perl \
180     -Dvendorarch=/usr/lib/perl5/$_baseversion/vendor_perl \
181     -Dscriptdir=/usr/bin/core_perl \
182     -Dsitescript=/usr/bin/site_perl \
183     -Dvendorscript=/usr/bin/vendor_perl \
184     -Dinc_version_list=none \
185     -Dman1ext=1perl -Dman3ext=3perl ${arch_opts} \
186     -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}"
187   make
190 check() {
191   cd "${srcdir}/${pkgname}-${pkgver}"
192 #  TEST_JOBS=$(echo "$MAKEFLAGS" | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness
193   make test
196 package() {
197   cd "${srcdir}/${pkgname}-${pkgver}"
198   make DESTDIR="$pkgdir" install
200   ### Perl Settings ###
201   # Change man page extensions for site and vendor module builds.
202   # Set no mail address since bug reports should go to the bug tracker
203   # and not someone's email.
204   sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \
205       -e "/^cf_email=/ s/'.*'/''/" \
206       -e "/^perladmin=/ s/'.*'/''/" \
207       -i "${pkgdir}/usr/lib/perl5/$_baseversion/core_perl/Config_heavy.pl"
209   ### CPAN Settings ###
210   # Set CPAN default config to use the site directories.
211   sed -e '/(makepl_arg =>/   s/""/"INSTALLDIRS=site"/' \
212       -e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
213       -i "${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm"
215   # Profile script to set paths to perl scripts.
216   install -D -m644 "${srcdir}/perlbin.sh" \
217                    "${pkgdir}/etc/profile.d/perlbin.sh"
218   # Profile script to set paths to perl scripts on csh. (FS#22441)
219   install -D -m644 "${srcdir}/perlbin.csh" \
220                   "${pkgdir}/etc/profile.d/perlbin.csh"
221   # Profile script to set paths to perl scripts on fish. (FS#51191)
222   install -D -m 755 "$srcdir/perlbin.fish" \
223                   "$pkgdir/usr/share/fish/vendor_conf.d/perlbin.fish"
225   # Add the dirs so new installs will already have them in PATH once they
226   # install their first perl programm
227   install -d -m755 "$pkgdir/usr/bin/vendor_perl"
228   install -d -m755 "$pkgdir/usr/bin/site_perl"
230   #(cd ${pkgdir}/usr/bin; mv perl${pkgver} perl)
231   rm "$pkgdir/usr/bin/perl$pkgver"
233   install -D -m755 -t "$pkgdir/usr/share/libalpm/scripts" "$srcdir/detect-old-perl-modules.sh"
234   install -D -m644 -t "$pkgdir/usr/share/libalpm/hooks" "$srcdir/detect-old-perl-modules.hook"
236   find "$pkgdir" -name perllocal.pod -delete
237   find "$pkgdir" -name .packlist -delete