Skip to content

Commit 0623388

Browse files
committed
lang/perl5.38: add latest Perl version (in RC2)
(cherry picked from commit b5cbd10fb4052bfe3f61536eabcdcf02a4fd606a)
1 parent 0623387 commit 0623388

21 files changed

+3070
-2
lines changed

‎Mk/Uses/perl5.mk‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ USE_PERL5?= run build
4848
.include "${PORTSDIR}/lang/perl5.34/version.mk"
4949
. elif ${PERL5_DEFAULT} == 5.36
5050
.include "${PORTSDIR}/lang/perl5.36/version.mk"
51+
. elif ${PERL5_DEFAULT} == 5.38
52+
.include "${PORTSDIR}/lang/perl5.38/version.mk"
5153
. elif ${PERL5_DEFAULT} == devel
5254
.include "${PORTSDIR}/lang/perl5-devel/version.mk"
5355
# Force PERL_PORT here in case two identical PERL_VERSION.
@@ -81,7 +83,9 @@ PERL_ARCH?= mach
8183
# perl5_default file, or up there in the default versions selection.
8284
# When adding a version, please keep the comment in
8385
# Mk/bsd.default-versions.mk in sync.
84-
. if ${PERL_LEVEL} >= 503600
86+
. if ${PERL_LEVEL} >= 503800
87+
PERL_PORT?= perl5.38
88+
. elif ${PERL_LEVEL} >= 503600
8589
PERL_PORT?= perl5.36
8690
. elif ${PERL_LEVEL} >= 503400
8791
PERL_PORT?= perl5.34

‎Mk/bsd.default-versions.mk‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ NINJA_DEFAULT?= ninja
101101
NODEJS_DEFAULT?= lts
102102
# Possible value: 24, 25, 26
103103
OPENLDAP_DEFAULT?= 26
104-
# Possible values: 5.32, 5.34, 5.36, devel
104+
# Possible values: 5.32, 5.34, 5.36, 5.38, devel
105105
. if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \
106106
defined(PACKAGE_BUILDING))
107107
PERL5_DEFAULT?= 5.32

‎lang/Makefile‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@
263263
SUBDIR += perl5.32
264264
SUBDIR += perl5.34
265265
SUBDIR += perl5.36
266+
SUBDIR += perl5.38
266267
SUBDIR += petite-chez
267268
SUBDIR += pfe
268269
SUBDIR += pharo

‎lang/perl5.38/Makefile‎

Lines changed: 289 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,289 @@
1+
PORTNAME= perl
2+
DISTVERSION= ${PERL_VERSION}-RC2 # TODO: set EXPIRATION_DATE when .0 is released and remove .r from version.mk
3+
PORTREVISION= 2
4+
CATEGORIES= lang devel perl5
5+
MASTER_SITES= CPAN/../../src/5.0
6+
DIST_SUBDIR= perl
7+
8+
MAINTAINER= mat@FreeBSD.org
9+
COMMENT= Practical Extraction and Report Language
10+
WWW= https://www.perl.org/
11+
12+
LICENSE= ART10 GPLv1+
13+
LICENSE_COMB= dual
14+
LICENSE_FILE_ART10= ${WRKSRC}/Artistic
15+
LICENSE_FILE_GPLv1+ = ${WRKSRC}/Copying
16+
17+
# Uncomment when the default Perl is switched to 5.40
18+
#DEPRECATED= Support end three years after .0 release, please upgrade to a more recent version of Perl
19+
#EXPIRATION_DATE=<Release date of .0 + 3 years>
20+
21+
USES= cpe tar:xz
22+
23+
# Give a hint of where libperl.so can be found.
24+
USE_LDCONFIG= ${PREFIX}/${_ARCH_LIB}/CORE
25+
26+
TEST_TARGET= test_harness
27+
TEST_ENV= ${MAKE_ENV} \
28+
LD_LIBRARY_PATH=${WRKSRC} \
29+
TEST_JOBS=${MAKE_JOBS_NUMBER}
30+
31+
PORTSCOUT= limit:^${PERL_VER}.
32+
33+
HAS_CONFIGURE= yes
34+
CONFIGURE_SCRIPT= Configure
35+
CONFIGURE_ARGS= -Darchlib=${PREFIX}/${_ARCH_LIB} \
36+
-Dcc="${CC}" \
37+
-Dcf_by=${MAINTAINER:C,@.*,,} \
38+
-Dcf_email=${MAINTAINER} \
39+
-Dcf_time="`${STAT} -t \"%a %b %d %T %Z %Y\" -f %Sm ${_DISTDIR}/${DISTNAME}${EXTRACT_SUFX}`" \
40+
-Dinc_version_list=none \
41+
-Dlibperl=libperl.so.${PERL_VERSION} \
42+
-Dman1dir=${PREFIX}/${PERLMANPREFIX_REL}/man/man1 \
43+
-Dman3dir=${PREFIX}/${PERLMANPREFIX_REL}/man/man3 \
44+
-Dprefix=${PREFIX} \
45+
-Dprivlib=${PREFIX}/${_PRIV_LIB} \
46+
-Dscriptdir=${PREFIX}/bin \
47+
-Dsitearch=${SITE_ARCH} \
48+
-Dsitelib=${SITE_PERL} \
49+
-Dsiteman1dir=${SITE_MAN1} \
50+
-Dsiteman3dir=${SITE_MAN3} \
51+
-Dusenm=n \
52+
-Duseshrplib \
53+
-sde \
54+
-Ui_iconv \
55+
-Ui_malloc \
56+
-Uinstallusrbinperl
57+
# Keep the following two in sync.
58+
# lddlflags is used for all .so linking
59+
# shrpldflags is used for libperl.so, so remove all the extra bits inherited from lddlflags.
60+
CONFIGURE_ARGS+= -Alddlflags='-L${WRKSRC} -L${PREFIX}/${_ARCH_LIB}/CORE -lperl' \
61+
-Dshrpldflags='$$(LDDLFLAGS:N-L${WRKSRC}:N-L${PREFIX}/${_ARCH_LIB}/CORE:N-lperl) -Wl,-soname,$$(LIBPERL:R)'
62+
63+
# When built from a git repository, newvers.sh can put a = in the version.
64+
CONFIGURE_ENV= UNAME_v="$$(uname -v | sed 'y/=/ /')"
65+
66+
SUB_FILES= perl-man.conf
67+
68+
INSTALL_TARGET= install-strip
69+
70+
.if defined(PERL_VENDOR_PREFIX)
71+
CONFIGURE_ARGS+= -Dvendorarch=${PERL_VENDOR_PREFIX}/${_ARCH_LIB} \
72+
-Dvendorbin=${PERL_VENDOR_PREFIX}/bin \
73+
-Dvendorlib=${PERL_VENDOR_PREFIX}/${_PRIV_LIB} \
74+
-Dvendorman1dir=${PERL_VENDOR_PREFIX}/man/man1 \
75+
-Dvendorman3dir=${PERL_VENDOR_PREFIX}/${_PRIV_LIB}/man/man3 \
76+
-Dvendorprefix=${PERL_VENDOR_PREFIX}
77+
.endif
78+
79+
# http://perl5.git.perl.org/perl.git/commit/b83080de5c4254
80+
# PERLIOBUF_DEFAULT_BUFSIZ size in bytes (default: 8192 bytes)
81+
.if defined(PERLIOBUF_DEFAULT_BUFSIZ)
82+
CONFIGURE_ARGS+= -Accflags=-DPERLIOBUF_DEFAULT_BUFSIZ=${PERLIOBUF_DEFAULT_BUFSIZ}
83+
.endif
84+
85+
PLIST_SUB= ARCH_LIB=${_ARCH_LIB} \
86+
MAN1=${PERLMANPREFIX_REL}/man/man1 \
87+
MAN3=${PERLMANPREFIX_REL}/man/man3 \
88+
PERL_ARCH=${PERL_ARCH} \
89+
PERL_ARCH_regex=[[:<:]]${PERL_ARCH}[[:>:]] \
90+
PERL_VER=${PERL_VER} \
91+
PERL_VERSION=${PERL_VERSION} \
92+
PERLMANPREFIX=${PERLMANPREFIX_REL} \
93+
PERLMANPREFIX_regex=${PERLMANPREFIX_REL}[[:>:]] \
94+
PKGNAMESUFFIX=${PKGNAMESUFFIX} \
95+
PRIV_LIB=${_PRIV_LIB} \
96+
SITE_ARCH=${SITE_ARCH_REL} \
97+
SITE_PERL=${SITE_PERL_REL} \
98+
SITEMANPREFIX=${SITE_MAN_PREFIX}
99+
100+
SUB_LIST= PERL_ARCH=${PERL_ARCH} \
101+
PERL_VER=${PERL_VER} \
102+
PERL_VERSION=${PERL_VERSION} \
103+
PERLMANPREFIX=${PERLMANPREFIX_REL} \
104+
PRIV_LIB=${_PRIV_LIB} \
105+
SITE_PERL=${SITE_PERL_REL} \
106+
SITEMANPREFIX=${SITE_MAN_PREFIX}
107+
108+
.include "version.mk"
109+
PERL_VER?= ${PERL_VERSION:C/\.[0-9]+$//}
110+
PERL_ARCH= mach
111+
SITE_PERL_REL?= lib/perl5/site_perl
112+
SITE_PERL?= ${PREFIX}/${SITE_PERL_REL}
113+
SITE_ARCH_REL?= ${SITE_PERL_REL}/${PERL_ARCH}/${PERL_VER}
114+
SITE_ARCH?= ${PREFIX}/${SITE_ARCH_REL}
115+
SITE_MAN_PREFIX= ${SITE_PERL_REL}
116+
SITE_MAN3_REL?= ${SITE_MAN_PREFIX}/man/man3
117+
SITE_MAN3?= ${PREFIX}/${SITE_MAN3_REL}
118+
SITE_MAN1_REL?= ${SITE_MAN_PREFIX}/man/man1
119+
SITE_MAN1?= ${PREFIX}/${SITE_MAN1_REL}
120+
121+
_PRIV_LIB= lib/perl5/${PERL_VER}
122+
_ARCH_LIB= ${_PRIV_LIB}/${PERL_ARCH}
123+
124+
PERLMANPREFIX_REL= ${_PRIV_LIB}/perl
125+
PERLMANPREFIX= ${PREFIX}/${PERLMANPREFIX_REL}
126+
MANDIRS= ${PERLMANPREFIX}/man
127+
128+
OPTIONS_DEFINE= DEBUG DOT_INC DTRACE GDBM MULTIPLICITY PERL_64BITINT \
129+
PERL_MALLOC SITECUSTOMIZE THREADS
130+
OPTIONS_DEFAULT= DTRACE MULTIPLICITY PERL_64BITINT THREADS
131+
132+
.if !exists(/usr/sbin/dtrace)
133+
OPTIONS_EXCLUDE= DTRACE
134+
.endif
135+
.for a in aarch64 arm armv6 armv7 \
136+
mips mips64 mips64el mips64elhf mips64hf mipsel mipselhf mipshf mipsn32 \
137+
riscv64 riscv64sf sparc64
138+
OPTIONS_EXCLUDE_${a}= DTRACE
139+
.endfor
140+
OPTIONS_SUB= yes
141+
142+
DOT_INC_DESC= Add '.' to @INC (unsafe)
143+
GDBM_DESC= GDBM_File extension
144+
MULTIPLICITY_DESC= Use multiplicity
145+
PERL_64BITINT_DESC= Use 64 bit integers (on i386)
146+
PERL_MALLOC_DESC= Use Perl malloc
147+
SITECUSTOMIZE_DESC= Run-time customization of @INC
148+
THREADS_DESC= Build threaded perl
149+
150+
DEBUG_CONFIGURE_ON= -DDEBUGGING \
151+
-Doptimize="-g"
152+
DEBUG_CONFIGURE_OFF= -Doptimize="${CFLAGS}"
153+
DOT_INC_CONFIGURE_ON= -Ddefault_inc_excludes_dot=n
154+
DTRACE_CONFIGURE_ON= -Dusedtrace
155+
DTRACE_CONFIGURE_OFF= -Uusedtrace
156+
GDBM_CONFIGURE_ON= -Di_gdbm
157+
GDBM_CONFIGURE_OFF= -Ui_gdbm
158+
GDBM_LIB_DEPENDS= libgdbm.so:databases/gdbm
159+
MULTIPLICITY_CONFIGURE_ON= -Dusemultiplicity=y
160+
MULTIPLICITY_CONFIGURE_OFF= -Dusemultiplicity=n
161+
PERL_64BITINT_CONFIGURE_ON= -Duse64bitint
162+
PERL_MALLOC_CONFIGURE_ON= -Dusemymalloc=y
163+
PERL_MALLOC_CONFIGURE_OFF= -Dusemymalloc=n
164+
SITECUSTOMIZE_CONFIGURE_ON= -Dusesitecustomize
165+
THREADS_CONFIGURE_ON= -Dusethreads=y
166+
THREADS_CONFIGURE_OFF= -Dusethreads=n
167+
168+
# Why this is required is explained in:
169+
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227356#c5
170+
_PERL5_DEFAULT_FILE= /tmp/PERL5_DEFAULT
171+
172+
# Get the default version, and possibly, overwrite it.
173+
.include <bsd.port.options.mk>
174+
.sinclude "${_PERL5_DEFAULT_FILE}"
175+
176+
# if this port is default due PERL5_DEFAULT
177+
# change PKGNAME to reflect this
178+
.if ${PERL_VER} == ${PERL5_DEFAULT}
179+
PKGNAMESUFFIX= 5
180+
IAMDEFAULTPERL= yes
181+
.else
182+
# make PKGNAME unique among other lang/perl5.x
183+
PKGNAMESUFFIX= ${PERL_VER}
184+
.endif
185+
186+
# Am I building the default Perl ?
187+
.if defined(IAMDEFAULTPERL)
188+
PLIST_SUB+= BINSUFFIX="" \
189+
DEFAULT=""
190+
.else
191+
BINSUFFIX= ${PERL_VERSION}
192+
PLIST_SUB+= BINSUFFIX=${PERL_VERSION} \
193+
DEFAULT="@comment "
194+
CONFIGURE_ARGS+= -Dversiononly
195+
.endif
196+
197+
.if !defined(IAMDEFAULTPERL)
198+
pre-everything::
199+
@${ECHO_MSG} "##################################################"
200+
@${ECHO_MSG} ""
201+
@${ECHO_MSG} " This is *NOT* the DEFAULT perl version"
202+
@${ECHO_MSG} ""
203+
@${ECHO_MSG} "It will *NOT* install ${PREFIX}/bin/perl"
204+
@${ECHO_MSG} ""
205+
@${ECHO_MSG} "It will *ONLY* install ${PREFIX}/bin/perl${PERL_VERSION}"
206+
@${ECHO_MSG} ""
207+
@${ECHO_MSG} "The default Perl version currently is ${PERL5_DEFAULT}."
208+
@${ECHO_MSG} ""
209+
@${ECHO_MSG} "If you want to use this version as the default,"
210+
@${ECHO_MSG} "stop the build now, add this line to your"
211+
@${ECHO_MSG} "/etc/make.conf, and then restart the build."
212+
@${ECHO_MSG} ""
213+
@${ECHO_MSG} "DEFAULT_VERSIONS+=perl5=${PERL_VER}"
214+
@${ECHO_MSG} ""
215+
@${ECHO_MSG} "##################################################"
216+
. if !(defined(PACKAGE_BUILDING) || defined(BATCH))
217+
@sleep 30
218+
. endif
219+
.endif
220+
221+
# Put a symlink to the future libperl.so.x.yy so that -lperl works.
222+
# Also, save PERL5_DEFAULT in case someone is not using the default Perl
223+
# version whilst not having set DEFAULT_VERSIONS=perl5=blah. While upgrading,
224+
# portmaster/portupgrade will remove the installed Perl version, and it will
225+
# remove any way to guess what the default Perl version is needed.
226+
post-extract:
227+
${LN} -s libperl.so.${PERL_VERSION} ${WRKSRC}/libperl.so
228+
${LN} -s libperl.so.${PERL_VERSION} ${WRKSRC}/libperl.so.${PERL_VER}
229+
.if !defined(PACKAGE_BUILDING)
230+
@${ECHO_CMD} "PERL5_DEFAULT=${PERL5_DEFAULT}" > ${_PERL5_DEFAULT_FILE}
231+
.endif
232+
233+
.if !defined(PACKAGE_BUILDING)
234+
post-clean:
235+
@${RM} ${_PERL5_DEFAULT_FILE}
236+
.endif
237+
238+
post-patch:
239+
.if ${LOCALBASE} != /usr/local
240+
${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \
241+
${WRKSRC}/Configure ${WRKSRC}/hints/freebsd.sh
242+
.endif
243+
.if !defined(IAMDEFAULTPERL)
244+
${REINPLACE_CMD} -e '/do_installprivlib = 0 if .versiononly/d; \
245+
/^if.*nopods.*versiononly || /s/.*/if (1) {/' \
246+
${WRKSRC}/installperl
247+
.endif
248+
249+
post-install:
250+
@${REINPLACE_CMD} -e '/^lddlflags/s|-L${WRKSRC} ||' \
251+
${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl
252+
@${TOUCH} -r ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl.bak ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl
253+
@${RM} ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl.bak
254+
.if ${CC} == /nxb-bin/usr/bin/cc
255+
@${REINPLACE_CMD} -e 's=/nxb-bin==' \
256+
${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config.pm ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl
257+
# Restore Config.pm's timestamp so that Perl's build system does not think it
258+
# needs to rebuild everything.
259+
@${TOUCH} -r ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config.pm.bak ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config.pm
260+
@${TOUCH} -r ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl.bak ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl
261+
@${RM} ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config.pm.bak ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/Config_heavy.pl.bak
262+
.endif
263+
264+
${MKDIR} ${STAGEDIR}${SITE_MAN1} ${STAGEDIR}${SITE_MAN3}
265+
${MKDIR} ${STAGEDIR}${SITE_ARCH}/auto
266+
${MKDIR} ${STAGEDIR}${SITE_PERL}/auto
267+
.if defined(IAMDEFAULTPERL)
268+
${LN} -sf perl ${STAGEDIR}${PREFIX}/bin/perl${PERL_VERSION}
269+
.endif
270+
${LN} -sf libperl.so.${PERL_VERSION} ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/CORE/libperl.so
271+
${LN} -sf libperl.so.${PERL_VERSION} ${STAGEDIR}${PREFIX}/${_ARCH_LIB}/CORE/libperl.so.${PERL_VER}
272+
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/perl${PERL_VERSION}
273+
${MKDIR} ${STAGEDIR}${SITE_ARCH}/machine
274+
${MKDIR} ${STAGEDIR}${SITE_ARCH}/sys
275+
# h2ph needs perl, but perl is not installed, it's only
276+
# staged, so, use the one in WRKDIR
277+
(cd /usr/include && ${SETENV} LD_LIBRARY_PATH=${WRKSRC} \
278+
${WRKSRC}/perl -I ${WRKSRC}/lib ${STAGEDIR}${PREFIX}/bin/h2ph${BINSUFFIX} \
279+
-d ${STAGEDIR}${SITE_ARCH} *.h machine/*.h sys/*.h >/dev/null)
280+
@${FIND} ${STAGEDIR}${SITE_ARCH} -name '*.ph' | sed -e 's|${STAGEDIR}||' >> ${TMPPLIST}
281+
${FIND} ${STAGEDIR} -name '*.so*' -type f | while read f; \
282+
do \
283+
${CHMOD} 644 $$f; \
284+
${STRIP_CMD} $$f; \
285+
${CHMOD} 444 $$f; \
286+
done
287+
${INSTALL_DATA} ${WRKDIR}/perl-man.conf ${STAGEDIR}${PREFIX}/etc/man.d/perl${PKGNAMESUFFIX}.conf
288+
289+
.include <bsd.port.mk>

‎lang/perl5.38/distinfo‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
TIMESTAMP = 1687631585
2+
SHA256 (perl/perl-5.38.0-RC2.tar.xz) = 1bb4b25a99378eea914263d6078390e90413b72711d7b9a9ccfe0c0d65559509
3+
SIZE (perl/perl-5.38.0-RC2.tar.xz) = 13557644
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
- Allow setting cf_time (reproducible builds)
2+
- ?
3+
- ?
4+
5+
--- Configure.orig 2023-05-16 23:36:32 UTC
6+
+++ Configure
7+
@@ -3907,7 +3907,10 @@ esac
8+
. ./posthint.sh
9+
10+
: who configured the system
11+
-cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`
12+
+case "$cf_time" in
13+
+"")
14+
+ cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1` ;;
15+
+esac
16+
case "$cf_by" in
17+
"")
18+
cf_by=`(logname) 2>/dev/null`
19+
@@ -5035,7 +5038,7 @@ esac
20+
: Now check and see which directories actually exist, avoiding duplicates
21+
for xxx in $dlist
22+
do
23+
- if $test -d $xxx; then
24+
+ if $test -d $xxx || [ $xxx = $prefix/lib ]; then
25+
case " $libpth " in
26+
*" $xxx "*) ;;
27+
*) libpth="$libpth $xxx";;
28+
@@ -9586,8 +9589,7 @@ prefixvar=siteman3dir
29+
30+
: determine where add-on public executable scripts go
31+
case "$sitescript" in
32+
-'') dflt=$siteprefix/script
33+
- $test -d $dflt || dflt=$sitebin ;;
34+
+'') dflt=$sitebin ;;
35+
*) dflt="$sitescript" ;;
36+
esac
37+
fn=d~+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
Allow customisation of shrpldflags.
2+
3+
--- Makefile.SH.orig 2022-06-19 19:29:35 UTC
4+
+++ Makefile.SH
5+
@@ -40,7 +40,6 @@ linklibperl_nonshr=''
6+
pwd="`pwd`"
7+
linklibperl='$(LIBPERL)'
8+
linklibperl_nonshr=''
9+
-shrpldflags='$(LDDLFLAGS)'
10+
ldlibpth=''
11+
DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB'
12+
DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL'
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
Make installed files writable by the installing user.
2+
3+
--- cpan/ExtUtils-Install/lib/ExtUtils/Install.pm.orig 2021-01-04 00:39:17 UTC
4+
+++ cpan/ExtUtils-Install/lib/ExtUtils/Install.pm
5+
@@ -795,7 +795,7 @@ sub install { #XXX OS-SPECIFIC
6+
utime($atime,$mtime + _Is_VMS,$targetfile) unless $dry_run>1;
7+
8+
9+
- $mode = 0444 | ( $mode & 0111 ? 0111 : 0 );
10+
+ $mode = 0644 | ( $mode & 0111 ? 0111 : 0 );
11+
$mode = $mode | 0222
12+
if $realtarget ne $targetfile;
13+
_chmod( $mode, $targetfile, $verbose );

0 commit comments

Comments
 (0)