23.12.2011 16:18, Marco van de Voort пишет:
- syswin.inc code looks like any number of delimiters between parameters
   are skipped.

.. unless quoted.

- this extra whitespace is added by the makefile, suggesting some 
buggy/incorrect processing in
make.exe or makefile itself.

It could be that the makefile logic quotes every argument on windows, in
case of spaces. We would need a kind of strace tool for Windows to find out.

... it is the trailing backslash escaping the following character (C style).
I could reproduce the issue, by using the following command in 'packages' 
directory:

make install PP=f:\trunk\compiler\ppc386.exe PREFIX="f:\lazarus\fpc\2.7.1\"

Note the quotes, and also note where they end up in output:

make -C fcl-base install
make[1]: Entering directory `F:/trunk/packages/fcl-base'
.\fpmake.exe install --localunitdir=../.. --globalunitdir=.. --os=win32 --cpu=i386 -o -Fu../../rtl/units/i386-win32 -o -Fu../../packages/hash/units/i386-win32 -o -Fu../../packages/paszlib/units/i386-win32 -o -Fu../../packages/fcl-process/units/i386-win32 -o -Fu../../packages/fpmkunit/units/i386-win32 -o -FE. -o -FUunits/i386-win32 -o -di386 --compiler=f:/trunk/compiler/ppc386.exe --prefix=f:\lazarus\fpc\2.7.1" --unitinstalldir=f:\lazarus\fpc\2.7.1"/units/i386-win32/fcl-base
The installer encountered the following error:
Failed to create directory "f:\lazarus\fpc\2.7.1 --unitinstalldir=f:\lazarus\fpc\2.7.1\units\i386-win32\fcl-base\units\i386-win32\fcl-base\"
make[1]: *** [install] Error 1

Without quotes the result is basically the same:

.\fpmake.exe install --localunitdir=../.. --globalunitdir=.. --os=win32 --cpu=i386 -o -Fu../../rtl/units/i386-win32 -o -Fu../../packages/hash/units/i386-win32 -o -Fu../../packages/paszlib/units/i386-win32 -o -Fu../../packages/fcl-process/units/i386-win32 -o -Fu../../packages/fpmkunit/units/i386-win32 -o -FE. -o -FUunits/i386-win32 -o -di386 --compiler=f:/trunk/compiler/ppc386.exe --prefix=f:\lazarus\fpc\2.7.1\ --unitinstalldir=f:\lazarus\fpc\2.7.1\/units/i386-win32/fcl-base
The installer encountered the following error:
Failed to create directory "f:\lazarus\fpc\2.7.1 --unitinstalldir=f:\lazarus\fpc\2.7.1\\units\i386-win32\fcl-base\units\i386-win32\fcl-base\"

Finally, when trailing backslash is duplicated, everything runs successfully.

Sergei
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to