From: Ozkan S. <se...@gm...> - 2010-08-26 13:01:35
|
On Thu, Aug 26, 2010 at 3:26 PM, Chris Sutcliffe <ir0...@gm...> wrote: > On 26 August 2010 07:47, Ozkan Sezer <se...@gm...> wrote: >> Interesting. AFAIK, the only source difference between make-3.82-1 >> and make-3.82-3 from mingw.org is the size of an array (PATH_MAX >> definition change), so: does make-3.82-1 from mingw.org work for you? > > Actually that was an ill-advised patch by me in the make-3.82-2 source > (which I subsequently removed from mingw.org). The make-3.82-3 source > is a repackaging of the vanilla sources (as was make-3.82-1). > > The crux of the issue with make-3.82-1 was that I configured 'make' > via MSYS and I missed one important step. When configured via MSYS, > config.h contains: > > #define PATH_SEPARATOR=':' > > which obviously does not work in a DOS/Windows environment. The can > cause a rather nasty chain reaction in the 'make' code with things > like VPATH, etc. not getting parsed correctly which (as in the issue > reported on the MinGW-Users list) can possibly result in a crash. > > The reason for the '-2' patch was that I noticed that when built with > build_w32.bat, the resulting gnumake.exe didn't exhibit this > behaviour. Reason being, it defaulted to MAXPATHLEN being set to 1024 > (as per make.h, given that PATH_MAX and MAXPATHLEN aren't defined when > built with build_w32.bat). Which in the MinGW-Users case corrected > the issue, because the character array was sufficiently big enough to > house the VPATH specified in the problematic Makefile. > > For the 3.82-3 release, during the build process (after running > 'configure'), I ran a sed script to replace the PATH_SEPARATOR with: > > #define PATH_SEPARATOR=';' > > Which corrected the issue. Ah! Chris, thank you very much! That escaped my attention. What is the exact sed script you used? (escaping the ' : and ; are problematic and I feel rusty with sed.) > > I have not looked at the problematic Makefile supplied in this email > chain, not do I know how the mingw-w64 'make' executables were built, > so I can't comment as to whether this is another case of the > PATH_SEPARATOR being the issue. > > Cheers! > > Chris > > -- > Chris Sutcliffe > http://emergedesktop.org > http://www.google.com/profiles/ir0nh34d -- Ozkan |