Hello, perl-5.8.6 builds cleanly on Win32 with only MinGW and dmake installed (provided it's not the latest version of dmake, which has a little problem with makefile.mk). However, maintperl and bleadperl don't, because change 23762 introduced a dependency on tr, which is not present on such a system. Links:
http://public.activestate.com/gsar/APC/diffs/23762.gz http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2005-01/msg00132.html Change 23762 went into maintperl as part of change 23784: http://public.activestate.com/gsar/APC/perl-5.8.x-diffs/23784.gz This might not have come up when people tested the changes (e.g. http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2005-01/msg00160.html ) because they had 'tr' in the path on their machine, from msys or cygwin. Is it possible to avoid this use of tr and/or to integrate it into buildext.pl, to avoid the external dependency? The crucial lines are $(LINK32) -mdll -o $@ -Wl,--base-file -Wl,perl.base $(BLINK_FLAGS) \ - $(mktmp $(LKPRE) $(PERLDLL_OBJ:s,\,\\) $(LIBFILES) $(LKPOST)) + $(mktmp $(LKPRE) $(PERLDLL_OBJ:s,\,\\) \ + $(shell $(MINIPERL) -I..\lib buildext.pl --list-static-libs|tr \\\\ /) \ + $(LIBFILES) $(LKPOST)) [...] $(LINK32) -mdll -o $@ $(BLINK_FLAGS) \ - $(mktmp $(LKPRE) $(PERLDLL_OBJ:s,\,\\) $(LIBFILES) \ - perl.exp $(LKPOST)) + $(mktmp $(LKPRE) $(PERLDLL_OBJ:s,\,\\) \ + $(shell $(MINIPERL) -I..\lib buildext.pl --list-static-libs|tr \\\\ /) \ + $(LIBFILES) perl.exp $(LKPOST)) On a non-cygwin MinGW system, running the output of buildext.pl --list-static-libs though 'tr \\ /' is certainly superfluous, because the linker understands the backslashes. I don't know enough about Cygwin to determine whether this is needed there; but if it is, it could probably be done inside buildext.pl? -- avva "There's nothing simply good, nor ill alone" -- John Donne
