print $fh "#ifdef STATIC3\n",(map {" newXS(\"$statics2[$_]::bootstrap\", boot_$statics1[$_], file);\n"} 0 .. $#statics),"#undef STATIC3\n#endif\n";
}
else {
- print map {/([^\/]+)$/;"$_/$1.lib "} @statics;
+ my %extralibs;
+ for (@statics) {
+ open my $fh, "<..\\lib\\auto\\$_\\extralibs.ld" or die "can't open <..\\lib\\auto\\$_\\extralibs.ld: $!";
+ $extralibs{$_}++ for grep {/\S/} split /\s+/, join '', <$fh>;
+ }
+ print map {/([^\/]+)$/;"..\\lib\\auto\\$_/$1.lib "} @statics;
+ print map {"$_ "} sort keys %extralibs;
}
exit;
}
# extensions if you change the default. Currently, this cannot be enabled
# if you ask for USE_IMP_SYS above.
#
-#PERL_MALLOC *= define
+PERL_MALLOC *= define
+
+#
+# set this to enable debugging mstats
+# This must be enabled to use the Devel::Peek::mstat() function. This cannot
+# be enabled without PERL_MALLOC as well.
+#
+DEBUG_MSTATS = define
#
# set the install locations of the compiler include/libraries
USE_LARGE_FILES *= undef
USE_PERLCRT *= undef
+.IF "$(PERL_MALLOC)" == "undef"
+PERL_MALLOC = undef
+DEBUG_MSTATS = undef
+.ENDIF
+
+.IF "$(DEBUG_MSTATS)" == "undef"
+DEBUG_MSTATS = undef
+.ENDIF
+
+.IF "$(DEBUG_MSTATS)" == "define"
+BUILDOPT += -DPERL_DEBUGGING_MSTATS
+.ENDIF
+
.IF "$(USE_IMP_SYS)$(USE_MULTI)" == "defineundef"
USE_MULTI != define
.ENDIF
perl.exp $(LKPOST))
.ELSE
$(LINK32) -dll -def:perldll.def -out:$@ \
- -base:0x28000000 $(BLINK_FLAGS) $(DELAYLOAD) $(LIBFILES) \
- $(foreach,i,$(shell $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --list-static-libs) \
- ..\lib\auto\$i) \
- $(PERLDLL_RES) $(PERLDLL_OBJ:s,\,\\)
+ $(shell $(MINIPERL) -I..\lib buildext.pl --list-static-libs) \
+ @$(mktmp -base:0x28000000 $(BLINK_FLAGS) $(DELAYLOAD) $(LIBFILES) \
+ $(PERLDLL_RES) $(PERLDLL_OBJ:s,\,\\))
.ENDIF
$(XCOPY) $(PERLIMPLIB) $(COREDIR)
$(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) --dynamic
$(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --dynamic
-Extensions_static : buildext.pl $(PERLDEP) $(CONFIGPM)
+Extensions_static : buildext.pl
$(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --static
$(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) --static