set X
shift
eval $find_extensions
+cd "$rsrc/dist"
+set X
+shift
+eval $find_extensions
cd "$rsrc/ext"
set X
shift
nonxs_list=' '
for f in $nonxs_ext; do
p=`echo "$f" | tr / -`
- for d in ext cpan; do
+ for d in ext dist cpan; do
if test -d $d/$p; then
nonxs_list="$nonxs_list $d/$p/pm_to_blib"
fi
my $ext;
for (@$perl_files) {
- if (m{^((?:ext|cpan)/[^/]+/)}) {
+ if (m{^((?:ext|dist|cpan)/[^/]+/)}) {
if (defined $ext and $ext ne $1) {
# more than one ext/$ext/
undef $ext;
# We're being run from the top level. Try to change directory, and set
# things up correctly. This is a 90% solution, but for hand-running tests,
# that's good enough
- if ($0 =~ s!^((?:ext|cpan)[\\/][^\\/]+)[\//](.*\.t)$!$2!) {
+ if ($0 =~ s!^((?:ext|dist|cpan)[\\/][^\\/]+)[\//](.*\.t)$!$2!) {
# Looks like a test in ext.
chdir $1 or die "Can't chdir '$1': $!";
new_inc(@up_2_t);
$ext_loop:
$ READ/END_OF_FILE=end_ext/ERROR=end_ext CONFIG line
$ IF F$EXTRACT(0,4,line) .NES. "ext/" .AND. -
+ F$EXTRACT(0,5,line) .NES. "dist/".AND. -
F$EXTRACT(0,5,line) .NES. "cpan/" THEN goto ext_loop
$ line = F$EDIT(line,"COMPRESS")
$ line = F$ELEMENT(0," ",line)
$ xxx = F$ELEMENT(1,"/",line)
$ IF F$SEARCH("[-.ext]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop
$ ENDIF
+$ IF F$EXTRACT(0,5,line) .EQS. "dist/"
+$ THEN
+$ xxx = F$ELEMENT(1,"/",line)
+$ IF F$SEARCH("[-.dist]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop
+$ ENDIF
$ IF F$EXTRACT(0,5,line) .EQS. "cpan/"
$ THEN
$ xxx = F$ELEMENT(1,"/",line)
$ ENDIF
$!
$ found_new_extension:
-$ IF F$SEARCH("[-.ext.''extension_dir_name']*.xs") .EQS. "" .AND. F$SEARCH("[-.cpan.''extension_dir_name']*.xs") .EQS. ""
+$ IF F$SEARCH("[-.ext.''extension_dir_name']*.xs") .EQS. "" .AND. F$SEARCH("[-.dist.''extension_dir_name']*.xs") .EQS. "" .AND. F$SEARCH("[-.cpan.''extension_dir_name']*.xs") .EQS. ""
$ THEN
$ nonxs_ext = nonxs_ext + " ''extspec'"
$ ELSE
--- /dev/null
+# ignore generated .c files, and other module build traces
+*.c
+*.bs
+blib
+pm_to_blib
+Makefile
+Makefile.PL
+ppport.h
ext/ExtUtils-Manifest/lib ext/Text-ParseWords/lib
cpan/File-Path/lib cpan/AutoLoader/lib);
-my @ext_dirs = qw(cpan ext);
+my @ext_dirs = qw(cpan dist ext);
my $ext_dirs_re = '(?:' . join('|', @ext_dirs) . ')';
# This script acts as a simple interface for building extensions.
my $dir = $1;
my $testswitch = $dir_to_switch{$dir};
if (!defined $testswitch) {
- if ($test =~ s!^(\.\./(?:cpan|ext)/[^/]+)/t!t!) {
+ if ($test =~ s!^(\.\./(?:cpan|dist|ext)/[^/]+)/t!t!) {
$run_dir = $1;
$return_dir = '../../t';
$lib = '../../lib';
my $mani = '../MANIFEST';
if (open(MANI, $mani)) {
while (<MANI>) {
- if (m!^((?:cpan|ext)/(\S+)/+(?:[^/\s]+\.t|test\.pl)|lib/\S+?(?:\.t|test\.pl))\s!) {
+ if (m!^((?:cpan|dist|ext)/(\S+)/+(?:[^/\s]+\.t|test\.pl)|lib/\S+?(?:\.t|test\.pl))\s!) {
my $t = $1;
my $extension = $2;
if (!$::core || $t =~ m!^lib/[a-z]!) {
my @todo = ('..');
while (@todo) {
my $todo = shift @todo;
- next if $todo ~~ ['../t', '../lib', '../ext', '../cpan'];
+ next if $todo ~~ ['../t', '../lib', '../ext', '../dist', '../cpan'];
# opmini.c is just a copy of op.c, so there's no need to check again.
next if $todo eq '../opmini.c';
if (-d $todo) {
AUTODIR = ..\lib\auto
LIBDIR = ..\lib
EXTDIR = ..\ext
+DISTDIR = ..\dist
CPANDIR = ..\cpan
PODDIR = ..\pod
EXTUTILSDIR = $(LIBDIR)\ExtUtils
# DynaLoader.pm, so this will have to do
Extensions: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --dynamic
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic
Extensions_reonly: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --dynamic +re
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re
Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --static
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --static
$(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static
Extensions_nonxs: ..\make_ext.pl $(PERLDEP) $(CONFIGPM)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --nonxs
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs
$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs
$(XCOPY) ..\*.h $(COREDIR)\*.*
$(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader
Extensions_clean:
- -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --all --target=clean
+ -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=clean
Extensions_realclean:
- -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --all --target=realclean
+ -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean
#-------------------------------------------------------------------------------
-del /f perl.base
-cd .. && del /s *.lib *.map *.pdb *.ilk *.bs *$(o) .exists pm_to_blib
-cd $(EXTDIR) && del /s *.def Makefile Makefile.old
+ -cd $(DISTDIR) && del /s *.def Makefile Makefile.old
-cd $(CPANDIR) && del /s *.def Makefile Makefile.old
-if exist $(AUTODIR) rmdir /s /q $(AUTODIR)
-if exist $(COREDIR) rmdir /s /q $(COREDIR)
AUTODIR = ..\lib\auto
LIBDIR = ..\lib
EXTDIR = ..\ext
+DISTDIR = ..\dist
CPANDIR = ..\cpan
PODDIR = ..\pod
EXTUTILSDIR = $(LIBDIR)\ExtUtils
# DynaLoader.pm, so this will have to do
Extensions : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --dynamic
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic
Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --dynamic +re
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re
Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --static
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --static
$(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static
Extensions_nonxs : ..\make_ext.pl $(PERLDEP) $(CONFIGPM)
$(XCOPY) ..\*.h $(COREDIR)\*.*
- $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --nonxs
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs
$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs
$(XCOPY) ..\*.h $(COREDIR)\*.*
$(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader
Extensions_clean :
- -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --all --target=clean
+ -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=clean
Extensions_realclean :
- -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(EXTDIR) --all --target=realclean
+ -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean
#-------------------------------------------------------------------------------
-del /f perl.base
-cd .. && del /s *$(a) *.map *.pdb *.ilk *.tds *.bs *$(o) .exists pm_to_blib
-cd $(EXTDIR) && del /s *.def Makefile Makefile.old
+ -cd $(DISTDIR) && del /s *.def Makefile Makefile.old
-cd $(CPANDIR) && del /s *.def Makefile Makefile.old
-if exist $(AUTODIR) rmdir /s /q $(AUTODIR)
-if exist $(COREDIR) rmdir /s /q $(COREDIR)