Hi,
I'm building PDL. On linux, using make, there's no problem. On Win32, using nmake, there's a problem with an xs file.
When I compare the 2 relevant makefiles I find that the 'nmake' version has an empty 'MakeMaker xs_o section' - unlike the 'make' version which is filled in with the correct stuff.
If I copy the 'MakeMaker xs_o section' from the 'make' version into the 'nmake' version, then the nmake/Win32 build problem is fixed.
Anyone know why 'nmake' makefiles have an empty 'MakeMaker xs_o section' ? I can't find a module that I've *ever* built with 'nmake' that has the 'MakeMaker xs_o section' filled in.
Oh ... it's because that's what MM_Win32.pm says to do. Any reason that MM_Win32's sub xs_o() can't :
return
'
.xs$(OBJ_EXT):
$(PERLRUN) $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c
$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
';
(just like MM_Unix) ? I notice that the latest developer release of EU::MM still has MM_Win32 returning ''.
When I build with 'dmake' on Win32, I have exactly the same problem - the 'MakeMaker xs_o section' is empty. I suspect that the solution is the same, though I haven't actually verified that yet.
Sadly it doesn't fix the problem with dmake ... must be something else going on as well. I'll have to dig some more.
Cheers, Rob
