Sisyphus wrote:
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



Reply via email to