mirror of
https://github.com/fosslinux/live-bootstrap.git
synced 2026-03-02 01:18:08 +01:00
Add perl 5.17.2
This commit is contained in:
parent
22ba86b6c3
commit
98af97b255
8 changed files with 542 additions and 0 deletions
5
steps/perl-5.17.2/files/Compress-Raw-Zlib_config.in
Normal file
5
steps/perl-5.17.2/files/Compress-Raw-Zlib_config.in
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
BUILD_ZLIB = False
|
||||
INCLUDE = /usr/include
|
||||
LIB = /usr/lib/i386-unknown-linux-musl
|
||||
OLD_ZLIB = False
|
||||
GZIP_OS_CODE = AUTO_DETECT
|
||||
102
steps/perl-5.17.2/pass1.sh
Executable file
102
steps/perl-5.17.2/pass1.sh
Executable file
|
|
@ -0,0 +1,102 @@
|
|||
# SPDX-FileCopyrightText: 2025 fosslinux <fosslinux@aussies.space>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
mv Compress-Raw-Zlib_config.in cpan/Compress-Raw-Zlib/config.in
|
||||
|
||||
# Remove miscellaneous pregenerated files
|
||||
rm -f Porting/Glossary \
|
||||
cpan/Devel-PPPort/parts/apidoc.fnc Configure config_h.SH \
|
||||
x2p/a2p.c cpan/Win32API-File/cFile.pc cpan/Sys-Syslog/win32/Win32.pm \
|
||||
utils/Makefile
|
||||
rm win32/perlexe.ico
|
||||
rm -r cpan/Compress-Raw-Zlib/zlib-src
|
||||
|
||||
# Generated tests
|
||||
rm cpan/Devel-PPPort/t/*.t cpan/Unicode-Collate/Collate/keys.txt
|
||||
|
||||
# Partially generated file
|
||||
#sed -i '/GENERATED CODE/q' utf8.h
|
||||
|
||||
# Regenerate other prebuilt header files
|
||||
# Taken from headers of regen scripts
|
||||
rm -f lib/warnings.pm warnings.h regnodes.h reentr.h reentr.c \
|
||||
overload.h overload.c opcode.h opnames.h pp_proto.h \
|
||||
keywords.h embed.h embedvar.h perlapi.c perlapi.h \
|
||||
proto.h lib/overload/numbers.pm regcharclass.h perly.{tab,h,act} \
|
||||
mg_{raw.h,vtable.h,names.c} keywords.c l1_char_class_tab.h \
|
||||
lib/feature.pm unicode_constants.h charclass_invlists.h
|
||||
perl regen.pl
|
||||
perl regen_perly.pl -b bison-2.3
|
||||
perl regen/keywords.pl
|
||||
perl regen/mk_PL_charclass.pl
|
||||
perl regen/mk_invlists.pl
|
||||
perl regen/regcharclass.pl
|
||||
|
||||
# regenerate configure
|
||||
ln -s ../metaconfig*/.package .
|
||||
ln -s ../metaconfig*/U .
|
||||
metaconfig -m
|
||||
|
||||
# Glossary
|
||||
pushd Porting
|
||||
ln -s /usr/lib/perl5/5.6.2/U .
|
||||
makegloss
|
||||
popd
|
||||
|
||||
bash cpan/Devel-PPPort/devel/mkapidoc.sh . \
|
||||
cpan/Devel-PPPort/parts/apidoc.fnc \
|
||||
cpan/Devel-PPPort/parts/embed.fnc
|
||||
|
||||
# Remove lines from MANIFEST that we have deleted
|
||||
while read -r line; do
|
||||
f="$(echo "${line}" | cut -d' ' -f1)"
|
||||
if [ -e "${f}" ]; then
|
||||
echo "${line}"
|
||||
fi
|
||||
done < MANIFEST > MANIFEST.new
|
||||
mv MANIFEST.new MANIFEST
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
./Configure -des \
|
||||
-Dprefix="${PREFIX}" \
|
||||
-Dcc=gcc \
|
||||
-Dusedl=false \
|
||||
-Ddate=':' \
|
||||
-Dusedevel \
|
||||
-Uversiononly \
|
||||
-Dccflags="-U__DATE__ -U__TIME__" \
|
||||
-Darchname="i386-linux" \
|
||||
-Dmyhostname="(none)" \
|
||||
-Dmaildomain="(none)"
|
||||
|
||||
# Remains unclear why this is necessary
|
||||
pushd x2p
|
||||
./Makefile.SH
|
||||
make depend
|
||||
popd
|
||||
|
||||
pushd utils
|
||||
bash Makefile.SH
|
||||
popd
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd x2p
|
||||
make BYACC=yacc run_byacc
|
||||
popd
|
||||
|
||||
# there are concurrency issues
|
||||
make -j1 PREFIX="${PREFIX}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
# Remove messed up manpages
|
||||
rm "${DESTDIR}/"*.0
|
||||
}
|
||||
|
|
@ -0,0 +1,326 @@
|
|||
From 8019286a366d5f8e64e5ca94b872123cb8661bc8 Mon Sep 17 00:00:00 2001
|
||||
From: Samuel Tyler <fosslinux@aussies.space>
|
||||
Date: Fri, 22 Aug 2025 22:50:37 +1000
|
||||
Subject: [PATCH] Revert "Upgrade Socket to 2.002"
|
||||
|
||||
This reverts commit 3be135d8cfe01725ff3bdfcc1b4a30206a1e0ed2.
|
||||
---
|
||||
MANIFEST | 1 -
|
||||
Porting/Maintainers.pl | 2 +-
|
||||
cpan/Socket/Makefile.PL | 26 +++----------
|
||||
cpan/Socket/Socket.pm | 38 +++----------------
|
||||
cpan/Socket/Socket.xs | 81 +++++------------------------------------
|
||||
cpan/Socket/t/ip_mreq.t | 29 ---------------
|
||||
6 files changed, 23 insertions(+), 154 deletions(-)
|
||||
delete mode 100644 cpan/Socket/t/ip_mreq.t
|
||||
|
||||
diff --git perl-5.17.2/MANIFEST perl-5.17.2/MANIFEST
|
||||
index ff1056a4c5..1396660928 100644
|
||||
--- perl-5.17.2/MANIFEST
|
||||
+++ perl-5.17.2/MANIFEST
|
||||
@@ -2205,7 +2205,6 @@ cpan/Socket/Socket.pm Socket extension Perl module
|
||||
cpan/Socket/Socket.xs Socket extension external subroutines
|
||||
cpan/Socket/t/getaddrinfo.t See if Socket::getaddrinfo works
|
||||
cpan/Socket/t/getnameinfo.t See if Socket::getnameinfo works
|
||||
-cpan/Socket/t/ip_mreq.t See if (un)pack_ip_mreq work
|
||||
cpan/Socket/t/ipv6_mreq.t See if (un)pack_ipv6_mreq work
|
||||
cpan/Socket/t/sockaddr.t
|
||||
cpan/Socket/t/socketpair.t See if socketpair works
|
||||
diff --git perl-5.17.2/Porting/Maintainers.pl perl-5.17.2/Porting/Maintainers.pl
|
||||
index ca2d4e314d..4848bae3ad 100755
|
||||
--- perl-5.17.2/Porting/Maintainers.pl
|
||||
+++ perl-5.17.2/Porting/Maintainers.pl
|
||||
@@ -1637,7 +1637,7 @@ use File::Glob qw(:case);
|
||||
|
||||
'Socket' => {
|
||||
'MAINTAINER' => 'pevans',
|
||||
- 'DISTRIBUTION' => 'PEVANS/Socket-2.002.tar.gz',
|
||||
+ 'DISTRIBUTION' => 'PEVANS/Socket-2.001.tar.gz',
|
||||
'FILES' => q[cpan/Socket],
|
||||
'UPSTREAM' => 'cpan',
|
||||
},
|
||||
diff --git perl-5.17.2/cpan/Socket/Makefile.PL perl-5.17.2/cpan/Socket/Makefile.PL
|
||||
index 3be198e024..9a8f65d274 100644
|
||||
--- perl-5.17.2/cpan/Socket/Makefile.PL
|
||||
+++ perl-5.17.2/cpan/Socket/Makefile.PL
|
||||
@@ -30,15 +30,10 @@ sub check_for
|
||||
open( my $file_source_fh, ">", $file_source ) or die "Cannot write $file_source - $!";
|
||||
print $file_source_fh <<"EOF";
|
||||
#include <sys/types.h>
|
||||
-#ifdef WIN32
|
||||
-# include <ws2tcpip.h>
|
||||
-# include <winsock.h>
|
||||
-#else
|
||||
-# include <sys/socket.h>
|
||||
-# include <netdb.h>
|
||||
-# include <netinet/in.h>
|
||||
-# include <arpa/inet.h>
|
||||
-#endif
|
||||
+#include <sys/socket.h>
|
||||
+#include <netdb.h>
|
||||
+#include <netinet/in.h>
|
||||
+#include <arpperl-5.17.2/inet.h>
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
(void)argc;
|
||||
@@ -108,13 +103,6 @@ check_for(
|
||||
main => "struct sockaddr_in6 sin6; sin6.sin6_scope_id = 0;"
|
||||
);
|
||||
|
||||
-# TODO: Needs adding to perl5 core before importing dual-life again
|
||||
-check_for(
|
||||
- confkey => "d_ip_mreq",
|
||||
- define => "HAS_IP_MREQ",
|
||||
- main => "struct ip_mreq mreq; mreq.imr_multiaddr.s_addr = INADDR_ANY;"
|
||||
-);
|
||||
-
|
||||
check_for(
|
||||
confkey => "d_ipv6_mreq",
|
||||
define => "HAS_IPV6_MREQ",
|
||||
@@ -161,9 +149,8 @@ my @names = (
|
||||
|
||||
IOV_MAX
|
||||
|
||||
- IP_ADD_MEMBERSHIP IP_DROP_MEMBERSHIP IP_HDRINCL IP_MULTICAST_IF
|
||||
- IP_MULTICAST_LOOP IP_MULTICAST_TTL IP_OPTIONS IP_RECVOPTS
|
||||
- IP_RECVRETOPTS IP_RETOPTS IP_TOS IP_TTL
|
||||
+ IP_OPTIONS IP_HDRINCL IP_TOS IP_TTL IP_RECVOPTS IP_RECVRETOPTS
|
||||
+ IP_RETOPTS
|
||||
|
||||
IPV6_ADD_MEMBERSHIP IPV6_DROP_MEMBERSHIP IPV6_MTU IPV6_MTU_DISCOVER
|
||||
IPV6_MULTICAST_HOPS IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP
|
||||
@@ -185,7 +172,6 @@ my @names = (
|
||||
SCM_CONNECT SCM_CREDENTIALS SCM_CREDS SCM_TIMESTAMP
|
||||
|
||||
SOCK_DGRAM SOCK_RAW SOCK_RDM SOCK_SEQPACKET SOCK_STREAM
|
||||
- SOCK_NONBLOCK SOCK_CLOEXEC
|
||||
|
||||
SOL_SOCKET
|
||||
|
||||
diff --git perl-5.17.2/cpan/Socket/Socket.pm perl-5.17.2/cpan/Socket/Socket.pm
|
||||
index 41f214d8fe..e12d8517de 100644
|
||||
--- perl-5.17.2/cpan/Socket/Socket.pm
|
||||
+++ perl-5.17.2/cpan/Socket/Socket.pm
|
||||
@@ -3,7 +3,7 @@ package Socket;
|
||||
use strict;
|
||||
{ use 5.006001; }
|
||||
|
||||
-our $VERSION = '2.002';
|
||||
+our $VERSION = '2.001';
|
||||
|
||||
=head1 NAME
|
||||
|
||||
@@ -87,13 +87,6 @@ functions as sockaddr_family().
|
||||
Socket type constants to use as the second argument to socket(), or the value
|
||||
of the C<SO_TYPE> socket option.
|
||||
|
||||
-=head2 SOCK_NONBLOCK. SOCK_CLOEXEC
|
||||
-
|
||||
-Linux-specific shortcuts to specify the C<O_NONBLOCK> and C<FD_CLOEXEC> flags
|
||||
-during a C<socket(2)> call.
|
||||
-
|
||||
- socket( my $sockh, PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, 0 )
|
||||
-
|
||||
=head2 SOL_SOCKET
|
||||
|
||||
Socket option level constant for setsockopt() and getsockopt().
|
||||
@@ -248,25 +241,13 @@ pack_sockaddr_un() or unpack_sockaddr_un() explicitly.
|
||||
|
||||
These are only supported if your system has E<lt>F<sys/un.h>E<gt>.
|
||||
|
||||
-=head2 $ip_mreq = pack_ip_mreq $multiaddr, $interface
|
||||
-
|
||||
-Takes an IPv4 multicast address and optionally an interface address (or
|
||||
-C<INADDR_ANY>). Returns the C<ip_mreq> structure with those arguments packed
|
||||
-in. Suitable for use with the C<IP_ADD_MEMBERSHIP> and C<IP_DROP_MEMBERSHIP>
|
||||
-sockopts.
|
||||
-
|
||||
-=head2 ($multiaddr, $interface) = unpack_ip_mreq $ip_mreq
|
||||
+=head2 $ipv6_mreq = pack_ipv6_mreq $ip6_address, $ifindex
|
||||
|
||||
-Takes an C<ip_mreq> structure. Returns a list of two elements; the IPv4
|
||||
-multicast address and interface address.
|
||||
+Takes an IPv6 address and an interface number. Returns the C<ipv6_mreq>
|
||||
+structure with those arguments packed in. Suitable for use with the
|
||||
+C<IPV6_ADD_MEMBERSHIP> and C<IPV6_DROP_MEMBERSHIP> sockopts.
|
||||
|
||||
-=head2 $ipv6_mreq = pack_ipv6_mreq $multiaddr6, $ifindex
|
||||
-
|
||||
-Takes an IPv6 multicast address and an interface number. Returns the
|
||||
-C<ipv6_mreq> structure with those arguments packed in. Suitable for use with
|
||||
-the C<IPV6_ADD_MEMBERSHIP> and C<IPV6_DROP_MEMBERSHIP> sockopts.
|
||||
-
|
||||
-=head2 ($multiaddr6, $ifindex) = unpack_ipv6_mreq $ipv6_mreq
|
||||
+=head2 ($ip6_address, $ifindex) = unpack_ipv6_mreq $ipv6_mreq
|
||||
|
||||
Takes an C<ipv6_mreq> structure. Returns a list of two elements; the IPv6
|
||||
address and an interface number.
|
||||
@@ -734,11 +715,6 @@ our @EXPORT = qw(
|
||||
our @EXPORT_OK = qw(
|
||||
CR LF CRLF $CR $LF $CRLF
|
||||
|
||||
- SOCK_NONBLOCK SOCK_CLOEXEC
|
||||
-
|
||||
- IP_ADD_MEMBERSHIP IP_DROP_MEMBERSHIP IP_MULTICAST_IF
|
||||
- IP_MULTICAST_LOOP IP_MULTICAST_TTL
|
||||
-
|
||||
IPPROTO_IP IPPROTO_IPV6 IPPROTO_RAW IPPROTO_ICMP IPPROTO_TCP
|
||||
IPPROTO_UDP
|
||||
|
||||
@@ -753,8 +729,6 @@ our @EXPORT_OK = qw(
|
||||
IPV6_MULTICAST_HOPS IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP
|
||||
IPV6_UNICAST_HOPS IPV6_V6ONLY
|
||||
|
||||
- pack_ip_mreq unpack_ip_mreq
|
||||
-
|
||||
pack_ipv6_mreq unpack_ipv6_mreq
|
||||
|
||||
inet_pton inet_ntop
|
||||
diff --git perl-5.17.2/cpan/Socket/Socket.xs perl-5.17.2/cpan/Socket/Socket.xs
|
||||
index f22c1f3001..5ddd0e9d8e 100644
|
||||
--- perl-5.17.2/cpan/Socket/Socket.xs
|
||||
+++ perl-5.17.2/cpan/Socket/Socket.xs
|
||||
@@ -44,10 +44,6 @@
|
||||
# include <netinet/tcp.h>
|
||||
#endif
|
||||
|
||||
-#ifdef WIN32
|
||||
-# include <ws2tcpip.h>
|
||||
-#endif
|
||||
-
|
||||
#ifdef NETWARE
|
||||
NETDB_DEFINE_CONTEXT
|
||||
NETINET_DEFINE_CONTEXT
|
||||
@@ -963,84 +959,27 @@ inet_pton(af, host)
|
||||
#endif
|
||||
|
||||
void
|
||||
-pack_ip_mreq(multiaddr, interface=&PL_sv_undef)
|
||||
- SV * multiaddr
|
||||
- SV * interface
|
||||
- CODE:
|
||||
- {
|
||||
-#ifdef HAS_IP_MREQ
|
||||
- struct ip_mreq mreq;
|
||||
- char * multiaddrbytes;
|
||||
- char * interfacebytes;
|
||||
- STRLEN len;
|
||||
- if (DO_UTF8(multiaddr) && !sv_utf8_downgrade(multiaddr, 1))
|
||||
- croak("Wide character in %s", "Socket::pack_ip_mreq");
|
||||
- multiaddrbytes = SvPVbyte(multiaddr, len);
|
||||
- if (len != sizeof(mreq.imr_multiaddr))
|
||||
- croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ip_mreq", (UV)len, (UV)sizeof(mreq.imr_multiaddr));
|
||||
- Zero(&mreq, sizeof(mreq), char);
|
||||
- Copy(multiaddrbytes, &mreq.imr_multiaddr, sizeof(mreq.imr_multiaddr), char);
|
||||
- if(SvOK(interface)) {
|
||||
- if (DO_UTF8(interface) && !sv_utf8_downgrade(interface, 1))
|
||||
- croak("Wide character in %s", "Socket::pack_ip_mreq");
|
||||
- interfacebytes = SvPVbyte(interface, len);
|
||||
- if (len != sizeof(mreq.imr_interface))
|
||||
- croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ip_mreq", (UV)len, (UV)sizeof(mreq.imr_interface));
|
||||
- Copy(interfacebytes, &mreq.imr_interface, sizeof(mreq.imr_interface), char);
|
||||
- }
|
||||
- else
|
||||
- mreq.imr_interface.s_addr = INADDR_ANY;
|
||||
- ST(0) = sv_2mortal(newSVpvn((char *)&mreq, sizeof(mreq)));
|
||||
-#else
|
||||
- not_here("pack_ip_mreq");
|
||||
-#endif
|
||||
- }
|
||||
-
|
||||
-void
|
||||
-unpack_ip_mreq(mreq_sv)
|
||||
- SV * mreq_sv
|
||||
- PPCODE:
|
||||
- {
|
||||
-#ifdef HAS_IP_MREQ
|
||||
- struct ip_mreq mreq;
|
||||
- STRLEN mreqlen;
|
||||
- char * mreqbytes = SvPVbyte(mreq_sv, mreqlen);
|
||||
- if (mreqlen != sizeof(mreq))
|
||||
- croak("Bad arg length for %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::unpack_ip_mreq", (UV)mreqlen, (UV)sizeof(mreq));
|
||||
- Copy(mreqbytes, &mreq, sizeof(mreq), char);
|
||||
- EXTEND(SP, 2);
|
||||
- mPUSHp((char *)&mreq.imr_multiaddr, sizeof(mreq.imr_multiaddr));
|
||||
- mPUSHp((char *)&mreq.imr_interface, sizeof(mreq.imr_interface));
|
||||
-#else
|
||||
- not_here("unpack_ip_mreq");
|
||||
-#endif
|
||||
- }
|
||||
-
|
||||
-void
|
||||
-pack_ipv6_mreq(multiaddr, interface)
|
||||
- SV * multiaddr
|
||||
+pack_ipv6_mreq(addr, interface)
|
||||
+ SV * addr
|
||||
unsigned int interface
|
||||
CODE:
|
||||
{
|
||||
#ifdef HAS_IPV6_MREQ
|
||||
struct ipv6_mreq mreq;
|
||||
- char * multiaddrbytes;
|
||||
- STRLEN len;
|
||||
- if (DO_UTF8(multiaddr) && !sv_utf8_downgrade(multiaddr, 1))
|
||||
+ char * addrbytes;
|
||||
+ STRLEN addrlen;
|
||||
+ if (DO_UTF8(addr) && !sv_utf8_downgrade(addr, 1))
|
||||
croak("Wide character in %s", "Socket::pack_ipv6_mreq");
|
||||
- multiaddrbytes = SvPVbyte(multiaddr, len);
|
||||
- if (len != sizeof(mreq.ipv6mr_multiaddr))
|
||||
+ addrbytes = SvPVbyte(addr, addrlen);
|
||||
+ if (addrlen != sizeof(mreq.ipv6mr_multiaddr))
|
||||
croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ipv6_mreq", (UV)len, (UV)sizeof(mreq.ipv6mr_multiaddr));
|
||||
+ "Socket::pack_ipv6_mreq", (UV)addrlen, (UV)sizeof(mreq.ipv6mr_multiaddr));
|
||||
Zero(&mreq, sizeof(mreq), char);
|
||||
- Copy(multiaddrbytes, &mreq.ipv6mr_multiaddr, sizeof(mreq.ipv6mr_multiaddr), char);
|
||||
+ Copy(addrbytes, &mreq.ipv6mr_multiaddr, sizeof(mreq.ipv6mr_multiaddr), char);
|
||||
mreq.ipv6mr_interface = interface;
|
||||
ST(0) = sv_2mortal(newSVpvn((char *)&mreq, sizeof(mreq)));
|
||||
#else
|
||||
- not_here("pack_ipv6_mreq");
|
||||
+ ST(0) = (SV*)not_here("pack_ipv6_mreq");
|
||||
#endif
|
||||
}
|
||||
|
||||
diff --git perl-5.17.2/cpan/Socket/t/ip_mreq.t perl-5.17.2/cpan/Socket/t/ip_mreq.t
|
||||
deleted file mode 100644
|
||||
index f08920c437..0000000000
|
||||
--- perl-5.17.2/cpan/Socket/t/ip_mreq.t
|
||||
+++ /dev/null
|
||||
@@ -1,29 +0,0 @@
|
||||
-use strict;
|
||||
-use warnings;
|
||||
-use Test::More;
|
||||
-
|
||||
-use Socket qw(
|
||||
- INADDR_ANY
|
||||
- pack_ip_mreq unpack_ip_mreq
|
||||
-);
|
||||
-
|
||||
-# Check that pack/unpack_ip_mreq either croak with "Not implemented", or
|
||||
-# roundtrip as identity
|
||||
-
|
||||
-my $packed;
|
||||
-eval {
|
||||
- $packed = pack_ip_mreq "\xe0\0\0\1", INADDR_ANY;
|
||||
-};
|
||||
-if( !defined $packed ) {
|
||||
- plan skip_all => "No pack_ip_mreq" if $@ =~ m/ not implemented /;
|
||||
- die $@;
|
||||
-}
|
||||
-
|
||||
-plan tests => 3;
|
||||
-
|
||||
-my @unpacked = unpack_ip_mreq $packed;
|
||||
-
|
||||
-is( $unpacked[0], "\xe0\0\0\1", 'unpack_ip_mreq multiaddr' );
|
||||
-is( $unpacked[1], INADDR_ANY, 'unpack_ip_mreq interface' );
|
||||
-
|
||||
-is( (unpack_ip_mreq pack_ip_mreq "\xe0\0\0\1")[1], INADDR_ANY, 'pack_ip_mreq interface defaults to INADDR_ANY' );
|
||||
--
|
||||
2.49.1
|
||||
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
From deca90bb9a589cdd796fae47d1dbe9d680f8884b Mon Sep 17 00:00:00 2001
|
||||
From: Samuel Tyler <fosslinux@aussies.space>
|
||||
Date: Fri, 22 Aug 2025 22:36:34 +1000
|
||||
Subject: [PATCH] Revert "regen/mk_invlists.pl: Fail if inversion list not
|
||||
found"
|
||||
|
||||
This reverts commit ad89228c5b795cc268ecf73cf29290f8bc70e979.
|
||||
---
|
||||
regen/mk_invlists.pl | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git perl-5.17.2/regen/mk_invlists.pl perl-5.17.2/regen/mk_invlists.pl
|
||||
index 65d6995285..6eefbe7f15 100644
|
||||
--- perl-5.17.2/regen/mk_invlists.pl
|
||||
+++ perl-5.17.2/regen/mk_invlists.pl
|
||||
@@ -126,7 +126,6 @@ for my $prop (qw(
|
||||
L1PosixWord
|
||||
PosixXDigit
|
||||
XPosixXDigit
|
||||
- _Perl_Non_Final_Folds
|
||||
)
|
||||
) {
|
||||
|
||||
@@ -146,7 +145,6 @@ for my $prop (qw(
|
||||
my $lookup_prop = $prop;
|
||||
$lookup_prop =~ s/^L1Posix/XPosix/ or $lookup_prop =~ s/^L1//;
|
||||
my @invlist = prop_invlist($lookup_prop);
|
||||
- die "Could not find inversion list for '$lookup_prop'" unless @invlist;
|
||||
|
||||
if ($lookup_prop ne $prop) {
|
||||
for my $i (0 .. @invlist - 1 - 1) {
|
||||
--
|
||||
2.49.1
|
||||
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
From b5bc060d03776870f3ead93e8c565069a66c2af9 Mon Sep 17 00:00:00 2001
|
||||
From: Karl Williamson <public@khwilliamson.com>
|
||||
Date: Mon, 18 Jun 2012 12:38:41 -0600
|
||||
Subject: [PATCH] Unicode::UCD::prop_invlist() Allow to return internal
|
||||
property
|
||||
|
||||
This creates an optional undocumented parameter to this function to
|
||||
allow it to return the inversion list of an internal-only Perl property.
|
||||
This will be used by other functions in Perl, but should not be
|
||||
documented, as we don't want to encourage the use of internal-only
|
||||
properties, which are subject to change or removal without notice.
|
||||
---
|
||||
lib/Unicode/UCD.pm | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git perl-5.17.2/lib/Unicode/UCD.pm perl-5.17.2/lib/Unicode/UCD.pm
|
||||
index 17b4fead23..a809c21adc 100644
|
||||
--- perl-5.17.2/lib/Unicode/UCD.pm
|
||||
+++ perl-5.17.2/lib/Unicode/UCD.pm
|
||||
@@ -1944,8 +1944,12 @@ properties, and will return C<undef> if called with one of those.
|
||||
our %loose_defaults;
|
||||
our $MAX_UNICODE_CODEPOINT;
|
||||
|
||||
-sub prop_invlist ($) {
|
||||
+sub prop_invlist ($;$) {
|
||||
my $prop = $_[0];
|
||||
+
|
||||
+ # Undocumented way to get at Perl internal properties
|
||||
+ my $internal_ok = defined $_[1] && $_[1] eq '_perl_core_internal_ok';
|
||||
+
|
||||
return if ! defined $prop;
|
||||
|
||||
require "utf8_heavy.pl";
|
||||
@@ -1962,7 +1966,7 @@ sub prop_invlist ($) {
|
||||
|| ref $swash eq ""
|
||||
|| $swash->{'BITS'} != 1
|
||||
|| $swash->{'USER_DEFINED'}
|
||||
- || $prop =~ /^\s*_/;
|
||||
+ || (! $internal_ok && $prop =~ /^\s*_/);
|
||||
|
||||
if ($swash->{'EXTRAS'}) {
|
||||
carp __PACKAGE__, "::prop_invlist: swash returned for $prop unexpectedly has EXTRAS magic";
|
||||
--
|
||||
2.49.1
|
||||
|
||||
11
steps/perl-5.17.2/patches/a2p-c-bison.patch
Normal file
11
steps/perl-5.17.2/patches/a2p-c-bison.patch
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
--- perl-5.17.2/x2p/Makefile.SH 2025-07-17 18:07:55.350717970 +1000
|
||||
+++ perl-5.17.2/x2p/Makefile.SH 2025-07-17 18:09:02.340711269 +1000
|
||||
@@ -123,7 +123,7 @@
|
||||
sed -e 's/(yyn = yydefred\[yystate\])/((yyn = yydefred[yystate]))/' \
|
||||
-e 's/(yys = getenv("YYDEBUG"))/((yys = getenv("YYDEBUG")))/' \
|
||||
-e 's/^yyerrlab://' \
|
||||
- -e 's/^ goto yyerrlab;//' \
|
||||
+ -e 's/^ *goto yyerrlab;//' \
|
||||
-e 's/^yynewerror://' \
|
||||
-e 's/^ goto yynewerror;//' \
|
||||
-e 's|^static char yysccsid\(.*\)|/* static char yysccsid\1 */|' \
|
||||
17
steps/perl-5.17.2/reenable-regcharclass.patch
Normal file
17
steps/perl-5.17.2/reenable-regcharclass.patch
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
diff --git perl-5.18.4/regen/regcharclass.pl perl-5.18.4/regen/regcharclass.pl
|
||||
index f5cf315a54..81dcdc578d 100755
|
||||
--- perl-5.18.4/regen/regcharclass.pl
|
||||
+++ perl-5.18.4/regen/regcharclass.pl
|
||||
@@ -1468,9 +1468,9 @@ GCB_V: Grapheme_Cluster_Break=V
|
||||
# million code points. The results would not change unless utf8.h decides it
|
||||
# wants a maximum other than 4 bytes, or this program creates better
|
||||
# optimizations
|
||||
-#UTF8_CHAR: Matches utf8 from 1 to 4 bytes
|
||||
-#=> UTF8 :safe only_ascii_platform
|
||||
-#0x0 - 0x1FFFFF
|
||||
+UTF8_CHAR: Matches utf8 from 1 to 4 bytes
|
||||
+=> UTF8 :safe only_ascii_platform
|
||||
+0x0 - 0x1FFFFF
|
||||
|
||||
# This hasn't been commented out, because we haven't an EBCDIC platform to run
|
||||
# it on, and the 3 types of EBCDIC allegedly supported by Perl would have
|
||||
2
steps/perl-5.17.2/sources
Normal file
2
steps/perl-5.17.2/sources
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
https://www.cpan.org/src/5.0/perl-5.17.2.tar.bz2 a47c59fd3667011205be4d384f4da2deb0a7544bdf1cc2efa66e9fefea435576
|
||||
git://github.com/Perl/metaconfig~79b14e84d83fb88c2b1a07e0dec3b62ccb9a388c https://github.com/Perl/metaconfig/archive/79b14e84d83fb88c2b1a07e0dec3b62ccb9a388c.tar.gz 857e295a3e3ff3121339b348fd295e03459ce8dc3a382870e94f98c2da99a573
|
||||
Loading…
Add table
Add a link
Reference in a new issue