summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MANIFEST2
-rw-r--r--NetWare/Makefile6
-rw-r--r--NetWare/splittree.pl24
-rw-r--r--win32/Makefile6
-rw-r--r--win32/makefile.mk6
-rw-r--r--win32/splittree.pl24
6 files changed, 65 insertions, 3 deletions
diff --git a/MANIFEST b/MANIFEST
index 30ba2e05f5..ce6279c05c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -3679,6 +3679,7 @@ NetWare/NWUtil.c NetWare port
NetWare/nwutil.h NetWare port
NetWare/nwvmem.h NetWare port
NetWare/perllib.cpp NetWare port
+NetWare/splittree.pl NetWare port
NetWare/sv_nw.c NetWare port
NetWare/testnlm/echo/echo.c NetWare port
NetWare/testnlm/type/type.c NetWare port
@@ -4617,6 +4618,7 @@ win32/perlmaince.c WinCE port
win32/perl.rc WinCE port
win32/pod.mak Win32 port
win32/runperl.c Win32 port
+win32/splittree.pl Win32 port
win32/sync_ext.pl Win32 port
win32/vdir.h Perl "host" virtual directory manager for CE
win32/vmem.h Perl "host" memory manager for CE
diff --git a/NetWare/Makefile b/NetWare/Makefile
index 0696df1485..9ae1c7a2dd 100644
--- a/NetWare/Makefile
+++ b/NetWare/Makefile
@@ -1041,6 +1041,8 @@ $(NLM_NAME): MESSAGE HEADERS $(BLDDIR)\nul $(NLM_OBJ) $(NEWTARE_OBJ_DEP) $(NEWTA
!endif
## $(LINK) $(LDFLAGS) $(BS_CFLAGS) -desc "Perl 5.6.1 for NetWare" $(NEWTARE_OBJ_DEP:.obj=.obj) $(NLM_OBJ:.obj=.obj) $(PERL_IO_OBJ_DEP:.obj=.obj) $(DLL_OBJ:.obj=.obj) $(NEWTARE_CPP_OBJ_DEP:.obj=.obj) -commandfile $*.def -o .\$(BLDDIR)\$@
$(LINK) $(LDFLAGS) -desc $(MODULE_DESC) $(NEWTARE_OBJ_DEP:.obj=.obj) $(NLM_OBJ:.obj=.obj) $(PERL_IO_OBJ_DEP:.obj=.obj) $(DLL_OBJ:.obj=.obj) $(NEWTARE_CPP_OBJ_DEP:.obj=.obj) -commandfile $*.def -o .\$(BLDDIR)\$@
+ copy splittree.pl ..
+ $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR)
@echo ========Linked $@ ==========
@echo======= Finished building $(BUILT).
@@ -1417,7 +1419,7 @@ distclean: clean nwclean
-del /f /q *.bat *.exe
-del /f /q *.obj *.map *.link *.xdc *.err
cd ..\netware
- -del /f /q ..\config.sh dlutils.c config.h.new
+ -del /f /q ..\config.sh ..\splittree.pl dlutils.c config.h.new
-del /f /q $(CONFIGPM)
-del /f /q bin\*.bat
cd $(EXTDIR)
@@ -1463,6 +1465,8 @@ install_tests :
nwinstall: utils installnw install_tests
inst_lib : $(CONFIGPM)
+ copy ..\win32\splittree.pl ..
+ $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR)
$(RCOPY) ..\lib $(INST_LIB)\*.*
clean :
diff --git a/NetWare/splittree.pl b/NetWare/splittree.pl
new file mode 100644
index 0000000000..3c76daadb1
--- /dev/null
+++ b/NetWare/splittree.pl
@@ -0,0 +1,24 @@
+use DirHandle;
+use AutoSplit;
+
+sub splitthis {
+my ($top,$base,$dest) = @_;
+my $d = new DirHandle $base;
+if (defined $d) {
+ while (defined($_ = $d->read)) {
+ next if $_ eq ".";
+ next if $_ eq "..";
+ my $entry = "$base\\$_";
+ my $entrywithouttop = $entry;
+ $entrywithouttop =~ s/^$top//;
+ if (-d $entry) {splitthis ($top,$entry,$dest);}
+ else {
+ next unless ($entry=~/pm$/i);
+ #print "Will run autosplit on $entry to $dest\n";
+ autosplit($entry,$dest,0,1,1);
+ };
+ };
+ };
+}
+
+splitthis $ARGV[0],$ARGV[0],$ARGV[1];
diff --git a/win32/Makefile b/win32/Makefile
index f737f52a21..d4eb178f86 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -1026,6 +1026,8 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
$(EMBED_EXE_MANI)
copy $(PERLEXE) $(WPERLEXE)
$(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
+ copy splittree.pl ..
+ $(MINIPERL) -I..\lib -I..\ext\Cwd ..\splittree.pl "../LIB" $(AUTODIR)
$(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES)
$(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS) \
@@ -1222,7 +1224,7 @@ distclean: realclean
perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \
xsubpp instmodsh prove ptar ptardiff cpanp-run-perl cpanp cpan2dist shasum corelist config_data
-cd ..\x2p && del /f find2perl s2p psed *.bat
- -del /f ..\config.sh perlmain.c dlutils.c config.h.new \
+ -del /f ..\config.sh ..\splittree.pl perlmain.c dlutils.c config.h.new \
perlmainst.c
-del /f $(CONFIGPM)
-del /f ..\lib\Config_git.pl
@@ -1253,6 +1255,8 @@ installhtml : doc
$(RCOPY) $(HTMLDIR)\*.* $(INST_HTML)\*.*
inst_lib : $(CONFIGPM)
+ copy splittree.pl ..
+ $(MINIPERL) -I..\lib -I..\ext\Cwd ..\splittree.pl "../LIB" $(AUTODIR)
$(RCOPY) ..\lib $(INST_LIB)\*.*
$(UNIDATAFILES) : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs
diff --git a/win32/makefile.mk b/win32/makefile.mk
index 83387c74c2..a4dc36ab3a 100644
--- a/win32/makefile.mk
+++ b/win32/makefile.mk
@@ -1346,6 +1346,8 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
.ENDIF
copy $(PERLEXE) $(WPERLEXE)
$(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
+ copy splittree.pl ..
+ $(MINIPERL) -I..\lib -I..\ext\Cwd ..\splittree.pl "../LIB" $(AUTODIR)
$(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES)
.IF "$(CCTYPE)" == "BORLAND"
@@ -1547,7 +1549,7 @@ distclean: realclean
perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \
xsubpp instmodsh prove ptar ptardiff cpanp-run-perl cpanp cpan2dist shasum corelist config_data
-cd ..\x2p && del /f find2perl s2p psed *.bat
- -del /f ..\config.sh perlmain.c dlutils.c config.h.new \
+ -del /f ..\config.sh ..\splittree.pl perlmain.c dlutils.c config.h.new \
perlmainst.c
-del /f $(CONFIGPM)
-del /f ..\lib\Config_git.pl
@@ -1578,6 +1580,8 @@ installhtml : doc
$(RCOPY) $(HTMLDIR)\*.* $(INST_HTML)\*.*
inst_lib : $(CONFIGPM)
+ copy splittree.pl ..
+ $(MINIPERL) -I..\lib -I..\ext\Cwd ..\splittree.pl "../LIB" $(AUTODIR)
$(RCOPY) ..\lib $(INST_LIB)\*.*
$(UNIDATAFILES) .UPDATEALL : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs
diff --git a/win32/splittree.pl b/win32/splittree.pl
new file mode 100644
index 0000000000..3c76daadb1
--- /dev/null
+++ b/win32/splittree.pl
@@ -0,0 +1,24 @@
+use DirHandle;
+use AutoSplit;
+
+sub splitthis {
+my ($top,$base,$dest) = @_;
+my $d = new DirHandle $base;
+if (defined $d) {
+ while (defined($_ = $d->read)) {
+ next if $_ eq ".";
+ next if $_ eq "..";
+ my $entry = "$base\\$_";
+ my $entrywithouttop = $entry;
+ $entrywithouttop =~ s/^$top//;
+ if (-d $entry) {splitthis ($top,$entry,$dest);}
+ else {
+ next unless ($entry=~/pm$/i);
+ #print "Will run autosplit on $entry to $dest\n";
+ autosplit($entry,$dest,0,1,1);
+ };
+ };
+ };
+}
+
+splitthis $ARGV[0],$ARGV[0],$ARGV[1];