Change 31388 by [EMAIL PROTECTED] on 2007/06/15 11:17:50
Subject: [PATCH] miscellanea
From: Jarkko Hietaniemi <[EMAIL PROTECTED]>
Date: Thu, 14 Jun 2007 22:32:49 -0400
Message-ID: <[EMAIL PROTECTED]>
Affected files ...
... //depot/perl/Makefile.SH#383 edit
... //depot/perl/embed.fnc#502 edit
... //depot/perl/hv.h#109 edit
... //depot/perl/op.c#944 edit
... //depot/perl/proto.h#839 edit
... //depot/perl/sv.c#1412 edit
... //depot/perl/util.c#629 edit
Differences ...
==== //depot/perl/Makefile.SH#383 (text) ====
Index: perl/Makefile.SH
--- perl/Makefile.SH#382~31366~ 2007-06-12 01:32:26.000000000 -0700
+++ perl/Makefile.SH 2007-06-15 04:17:50.000000000 -0700
@@ -242,6 +242,9 @@
# the dynamic loader path you are building a shared libperl.
LDLIBPTH = $ldlibpth
+# Sometimes running an executable is an adventure.
+RUN = $run
+
dynamic_ext = $dynamic_list
static_ext = $static_list
nonxs_ext = $nonxs_list
@@ -631,7 +634,7 @@
$(CC) -o miniperl $(CLDFLAGS) \
`echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
- $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+ $(LDLIBPTH) $(RUN) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE)
minitest
!NO!SUBS!
;;
next4*)
@@ -639,7 +642,7 @@
miniperl: $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
$(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
- $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+ $(LDLIBPTH) $(RUN) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE)
minitest
!NO!SUBS!
;;
darwin*)
@@ -661,7 +664,7 @@
$(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o miniperl \
`echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
- $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+ $(LDLIBPTH) $(RUN) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE)
minitest
!NO!SUBS!
;;
*)
@@ -671,7 +674,7 @@
$(LDLIBPTH) $(CC) $(CLDFLAGS) -o miniperl \
`echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
- $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+ $(LDLIBPTH) $(RUN) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE)
minitest
!NO!SUBS!
;;
esac
@@ -811,23 +814,23 @@
preplibrary: miniperl$(EXE_EXT) $(CONFIGPM) lib/lib.pm $(PREPLIBRARY_LIBPERL)
@sh ./makedir lib/auto
@echo " AutoSplitting perl library"
- $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
+ $(LDLIBPTH) $(RUN) ./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*.pm
- $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
+ $(LDLIBPTH) $(RUN) ./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*/*.pm
$(MAKE) lib/re.pm
.PHONY: makeppport
makeppport: miniperl$(EXE_EXT) $(CONFIGPM)
- $(LDLIBPTH) ./miniperl$(EXE_EXT) -Ilib mkppport
+ $(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib mkppport
lib/Config.pod: config.sh miniperl$(EXE_EXT) configpm Porting/Glossary
- $(LDLIBPTH) ./miniperl -Ilib configpm
+ $(LDLIBPTH) $(RUN) ./miniperl -Ilib configpm
$(CONFIGPM): lib/Config.pod
lib/ExtUtils/Miniperl.pm: miniperlmain.c miniperl$(EXE_EXT) minimod.pl
$(CONFIGPM)
- $(LDLIBPTH) ./miniperl minimod.pl > lib/ExtUtils/Miniperl.pm
+ $(LDLIBPTH) $(RUN) ./miniperl minimod.pl > lib/ExtUtils/Miniperl.pm
lib/re.pm: ext/re/re.pm
@-rm -f $@
@@ -835,19 +838,19 @@
$(plextract): miniperl$(EXE_EXT) $(CONFIGPM) x2p/s2p
@-rm -f $@
- $(LDLIBPTH) ./miniperl -I`pwd`/lib [EMAIL PROTECTED]
+ $(LDLIBPTH) $(RUN) ./miniperl -I`pwd`/lib [EMAIL PROTECTED]
x2p/s2p: miniperl$(EXE_EXT) $(CONFIGPM) x2p/s2p.PL
cd x2p; $(LDLIBPTH) $(MAKE) s2p
lib/lib.pm: miniperl$(EXE_EXT) $(CONFIGPM)
@-rm -f $@
- $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
+ $(LDLIBPTH) $(RUN) ./miniperl -Ilib lib/lib_pm.PL
unidatafiles $(unidatafiles): uni.data
uni.data: miniperl$(EXE_EXT) $(CONFIGPM) lib/unicore/mktables
- cd lib/unicore && $(LDLIBPTH) ../../miniperl -I../../lib mktables -w
+ cd lib/unicore && $(LDLIBPTH) $(RUN) ../../miniperl -I../../lib
mktables -w
touch uni.data
extra.pods: miniperl$(EXE_EXT)
@@ -876,7 +879,7 @@
no-install install.perl install.man install.html
META.yml: Porting/makemeta Porting/Maintainers.pl Porting/Maintainers.pm
- $(LDLIBPTH) ./miniperl -Ilib Porting/makemeta
+ $(LDLIBPTH) $(RUN) ./miniperl -Ilib Porting/makemeta
install-strip:
$(MAKE) STRIPFLAGS=-s install DESTDIR="$(DESTDIR)"
@@ -1079,7 +1082,7 @@
[EMAIL PROTECTED] x in $(DYNALOADER) $(dynamic_ext) $(static_ext)
$(nonxs_ext) ; do \
$(LDLIBPTH) sh ext/util/make_ext $(CLEAN) $$x MAKE=$(MAKE) ; \
done
- [EMAIL PROTECTED] ! -f ./miniperl$(EXE_EXT) || $(LDLIBPTH)
./miniperl$(EXE_EXT) -Ilib mkppport --clean
+ [EMAIL PROTECTED] ! -f $(RUN) ./miniperl$(EXE_EXT) || $(LDLIBPTH)
$(RUN) ./miniperl$(EXE_EXT) -Ilib mkppport --clean
# Some systems do not support "?", so keep these files separate.
_cleaner2:
@@ -1177,10 +1180,10 @@
cd t && $(PERL_DEBUG) PERL_SKIP_TTY_TEST=1 $(LDLIBPTH) $(PERL)
$(TESTFILE) $(TEST_ARGS)
unpack_files:
- $(LDLIBPTH) ./miniperl$(EXE_EXT) -Ilib uupacktool.pl -u -m
+ $(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib uupacktool.pl -u -m
cleanup_unpacked_files:
- [EMAIL PROTECTED] ! -f ./miniperl$(EXE_EXT) || $(LDLIBPTH)
./miniperl$(EXE_EXT) -Ilib uupacktool.pl -c
+ [EMAIL PROTECTED] ! -f $(RUN) ./miniperl$(EXE_EXT) || $(LDLIBPTH)
$(RUN) ./miniperl$(EXE_EXT) -Ilib uupacktool.pl -c
# The second branch is for testing without a tty or controlling terminal,
# see t/op/stat.t
==== //depot/perl/embed.fnc#502 (text) ====
Index: perl/embed.fnc
--- perl/embed.fnc#501~31369~ 2007-06-12 01:43:55.000000000 -0700
+++ perl/embed.fnc 2007-06-15 04:17:50.000000000 -0700
@@ -1101,8 +1101,8 @@
Ap |void |sys_intern_init
#endif
-ApR |char * |custom_op_name |NN const OP* op
-ApR |char * |custom_op_desc |NN const OP* op
+ApR |const char * |custom_op_name |NN const OP* op
+ApR |const char * |custom_op_desc |NN const OP* op
Adp |void |sv_nosharing |NULLOK SV *sv
Adpbm |void |sv_nolocking |NULLOK SV *sv
==== //depot/perl/hv.h#109 (text) ====
Index: perl/hv.h
--- perl/hv.h#108~31312~ 2007-05-30 08:21:10.000000000 -0700
+++ perl/hv.h 2007-06-15 04:17:50.000000000 -0700
@@ -259,7 +259,7 @@
#define HvRITER_set(hv,r) Perl_hv_riter_set(aTHX_ (HV*)(hv), r)
#define HvEITER_set(hv,e) Perl_hv_eiter_set(aTHX_ (HV*)(hv), e)
#define HvRITER_get(hv) (SvOOK(hv) ? HvAUX(hv)->xhv_riter : -1)
-#define HvEITER_get(hv) (SvOOK(hv) ? HvAUX(hv)->xhv_eiter : 0)
+#define HvEITER_get(hv) (SvOOK(hv) ? HvAUX(hv)->xhv_eiter : NULL)
#define HvNAME(hv) HvNAME_get(hv)
/* Checking that hv is a valid package stash is the
@@ -271,9 +271,9 @@
/* FIXME - all of these should use a UTF8 aware API, which should also involve
getting the length. */
/* This macro may go away without notice. */
-#define HvNAME_HEK(hv) (SvOOK(hv) ? HvAUX(hv)->xhv_name : 0)
+#define HvNAME_HEK(hv) (SvOOK(hv) ? HvAUX(hv)->xhv_name : NULL)
#define HvNAME_get(hv) ((SvOOK(hv) && (HvAUX(hv)->xhv_name)) \
- ? HEK_KEY(HvAUX(hv)->xhv_name) : 0)
+ ? HEK_KEY(HvAUX(hv)->xhv_name) : NULL)
#define HvNAMELEN_get(hv) ((SvOOK(hv) && (HvAUX(hv)->xhv_name)) \
? HEK_LEN(HvAUX(hv)->xhv_name) : 0)
==== //depot/perl/op.c#944 (text) ====
Index: perl/op.c
--- perl/op.c#943~31333~ 2007-06-05 03:10:33.000000000 -0700
+++ perl/op.c 2007-06-15 04:17:50.000000000 -0700
@@ -8404,7 +8404,7 @@
LEAVE;
}
-char*
+const char*
Perl_custom_op_name(pTHX_ const OP* o)
{
dVAR;
@@ -8424,7 +8424,7 @@
return SvPV_nolen(HeVAL(he));
}
-char*
+const char*
Perl_custom_op_desc(pTHX_ const OP* o)
{
dVAR;
==== //depot/perl/proto.h#839 (text+w) ====
Index: perl/proto.h
--- perl/proto.h#838~31369~ 2007-06-12 01:43:55.000000000 -0700
+++ perl/proto.h 2007-06-15 04:17:50.000000000 -0700
@@ -2957,11 +2957,11 @@
PERL_CALLCONV void Perl_sys_intern_init(pTHX);
#endif
-PERL_CALLCONV char * Perl_custom_op_name(pTHX_ const OP* op)
+PERL_CALLCONV const char * Perl_custom_op_name(pTHX_ const OP* op)
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
-PERL_CALLCONV char * Perl_custom_op_desc(pTHX_ const OP* op)
+PERL_CALLCONV const char * Perl_custom_op_desc(pTHX_ const OP* op)
__attribute__warn_unused_result__
__attribute__nonnull__(pTHX_1);
==== //depot/perl/sv.c#1412 (text) ====
Index: perl/sv.c
--- perl/sv.c#1411~31376~ 2007-06-13 15:41:33.000000000 -0700
+++ perl/sv.c 2007-06-15 04:17:50.000000000 -0700
@@ -467,7 +467,7 @@
SvOBJECT(GvSV(sv))) ||
(GvAV(sv) && SvOBJECT(GvAV(sv))) ||
(GvHV(sv) && SvOBJECT(GvHV(sv))) ||
- (GvIO(sv) && SvOBJECT(GvIO(sv))) ||
+ (GvIO(sv) && GvIOp(sv) && SvOBJECT(GvIO(sv))) || /* In certain
rare cases GvIOP(sv) can be NULL, which would make SvOBJECT(GvIO(sv))
dereference NULL. */
(GvCV(sv) && SvOBJECT(GvCV(sv))) )
{
DEBUG_D((PerlIO_printf(Perl_debug_log, "Cleaning named glob
object:\n "), sv_dump(sv)));
==== //depot/perl/util.c#629 (text) ====
Index: perl/util.c
--- perl/util.c#628~31387~ 2007-06-15 02:52:07.000000000 -0700
+++ perl/util.c 2007-06-15 04:17:50.000000000 -0700
@@ -1909,7 +1909,10 @@
char c[sizeof(long)];
} u;
-#if BYTEORDER == 0x1234
+#if BYTEORDER == 0x1234 || BYTEORDER == 0x12345678
+#if BYTEORDER == 0x12345678
+ u.result = 0;
+#endif
u.c[0] = (l >> 24) & 255;
u.c[1] = (l >> 16) & 255;
u.c[2] = (l >> 8) & 255;
@@ -2508,7 +2511,7 @@
#if defined(atarist) || defined(EPOC)
FILE *popen();
PerlIO *
-Perl_my_popen((pTHX_ const char *cmd, const char *mode)
+Perl_my_popen(pTHX_ const char *cmd, const char *mode)
{
PERL_FLUSHALL_FOR_CHILD;
/* Call system's popen() to get a FILE *, then import it.
@@ -2521,7 +2524,7 @@
#if defined(DJGPP)
FILE *djgpp_popen();
PerlIO *
-Perl_my_popen((pTHX_ const char *cmd, const char *mode)
+Perl_my_popen(pTHX_ const char *cmd, const char *mode)
{
PERL_FLUSHALL_FOR_CHILD;
/* Call system's popen() to get a FILE *, then import it.
End of Patch.