main/perl: improve

- patch install scripts to not write
   `.packlist` instead of removing it
   after the fact with a `find -delete`.
   also, reorder the patches alphabetically.

 - split `make install` up into
   `install.perl` and `install.man`.
   the issue of conflicting man pages
   was brought up again, and it was
   suggested that instead of manually
   deleting man pages after a conflict
   is discovered, it would be much better
   to guarantee that such conflicts cannot
   occur in the first place by renaming the
   man pages in `perl-doc`. so, set up the
   necessary conditions in `make install.man`
   for a rename to take place, but do not
   rename anything for the time being as,
   at the time of writing, a suitable new
   man page extension to replace `.3pm`
   has not yet been agreed upon. among the
   `install*` targets in the Makefile, only
   `install.man` allows us to pass
   `INSTALLFLAGS` to `installman`, the rest
   all pass that to `installperl` instead.

Both changes are just different (hopefully,
better) ways of accomplishing the same thing,
so functionally nothing has changed, and
no pkgrel bump is required.
This commit is contained in:
Celeste 2024-06-11 01:18:56 +00:00
parent 74a4d6eed0
commit f537ce0a05
2 changed files with 31 additions and 7 deletions

View File

@ -13,9 +13,10 @@ makedepends="bzip2-dev zlib-dev"
subpackages="$pkgname-doc $pkgname-dev $pkgname-utils::noarch miniperl"
source="https://www.cpan.org/src/5.0/perl-$pkgver.tar.xz
digest-sha-cflags.patch
dont-write-packlist.patch
musl-skip-dst-test.patch
skip-test-due-to-busybox-ps.patch
musl-stack-size.patch
skip-test-due-to-busybox-ps.patch
"
# creates empty usr/local/{lib,share} for local sitedirs
options="!fhs"
@ -118,7 +119,13 @@ check() {
}
package() {
make DESTDIR="$pkgdir" install
make DESTDIR="$pkgdir" install.perl
if subpackages_has "$pkgname-doc"; then
make install.man \
DESTDIR="$pkgdir" \
INSTALLFLAGS="--man3ext=3pm"
fi
# omit global flto afterward
# perl saves compile-time cflags and applies them to every future build
@ -133,10 +140,6 @@ package() {
install -Dm755 miniperl \
-t "$pkgdir"/usr/bin/
# delete files starting with a dot,
# but really just usr/lib/perl5/core_perl/.packlist
find "$pkgdir" -name '.*' -delete
}
miniperl() {
@ -190,7 +193,8 @@ utils() {
sha512sums="
a2fb1a24c6367b4043f4e929b2d74fc3bad1415e53b791ed1f219f1701064ae21b2bd3164ba95fcf24eaf458bd54433024ccae43725c0bb82a1ec6a98dc7052d perl-5.40.0.tar.xz
59afa4c166e4808d355e19cd70748540ffce9da5c6919c71648be7678de328409f9121ddea33415add73fc01a22e95ed9d9629f31b8ba20b3bbfc04dab926c63 digest-sha-cflags.patch
abae709290306a8fbc96b604b9b38fc09a46ae178f3e77944813f1b46c78e2e3654e5c3b3a6aca96684a2d1061e2871376d508fbe82604864055309156b4d0d8 dont-write-packlist.patch
3eaec691bc38e208ba4f34130ae45e50b6c339fa50093d0b0f6d7f24cb5b7c2a3734ca714a279c4b51173f82e46a8e7a3e70bfc7d7471a18c55a2102140e4186 musl-skip-dst-test.patch
ba9cb1ff4a6e8e4c31bf4ef132c071ac919ffe45842cf5e98c8ca72d78ef4803883b57a0e7b8037da0079561a6ce9e6bd8d127892ac1bcb047638cb3ba3157f6 skip-test-due-to-busybox-ps.patch
c004d6612ec754e5947255a2e2d15b5581f187c32495aeeec9f4fa286919bd9f40c72b63db61e3f4004b09288af2063a6a14b67e5c289e9a8b23ebd7c216e16f musl-stack-size.patch
ba9cb1ff4a6e8e4c31bf4ef132c071ac919ffe45842cf5e98c8ca72d78ef4803883b57a0e7b8037da0079561a6ce9e6bd8d127892ac1bcb047638cb3ba3157f6 skip-test-due-to-busybox-ps.patch
"

View File

@ -0,0 +1,20 @@
--- a/installman
+++ b/installman
@@ -182,7 +182,6 @@
}
}
-$packlist->write() unless $opts{notify};
print " Installation complete\n" if $opts{verbose};
# ex: set ts=8 sts=4 sw=4 et:
--- a/installperl
+++ b/installperl
@@ -507,7 +507,6 @@
}
-$packlist->write() unless $opts{notify};
print " Installation complete\n" if $opts{verbose};
exit 0;