David Arturo Macias Corona <[EMAIL PROTECTED]> napisał(a): > Using > make_gnu.cmd clean > result in messages like these: > --------------------------------------- > SYS0002: The system cannot find the file specified. > Error occurred while processing: os2\gcc*.*.
I have restored double backslash in 'clean' target of makefile in my last commit so the command will be back "del /n os2\gcc\\*.*" I have no OS/2 installed to test it then I don't understand why it is nedded to have two backslashes and why the single backslash is eaten in gcc\*.* but it is left in os2\gcc part of the command - it seems that the backslash is some sort of 'escape' character for CMD. > Messages belong to this part of make_gnu.log: > --------------------------------------- > [E:\harbour802\source]make -C common clean > make[2]: Entering directory `/harbour802/source/common' > CMD.EXE /c IF EXIST os2\gcc del /n os2\gcc\*.* > CMD.EXE /c IF EXIST os2\gcc rmdir os2\gcc > CMD.EXE /c IF EXIST os2 rmdir os2 > CMD.EXE /c IF EXIST ..\..\lib\os2\gcc\hbcommon.a del /n > ..\..\lib\os2\gcc\hbcommon.a > make[2]: Leaving directory `/harbour802/source/common' > --------------------------------------- IMHO, the above verifies that the CMD.EXE is using \* in a special way and it removes \ during execution - probably CMD is using some other expansion and for example "\." is also processed into "." that will explain why "md ..\..\lib\os2" is failing - but it is only my hypothesis. > "md ..\..\lib\os2" and rest work fine from command line, located in > proper directory, but seem it does not work under make process > > Reviewing this line: > CMD.EXE /c IF NOT EXIST ..\..\lib\os2 md ..\..\lib\os2 > perhaps current directory for CMD.EXE instance is not that reported by > make process (make[2]: Entering directory `/harbour802/source/common'), > instead it seem to be directory where make process started ( > e:\harbour802 ) IMHO, it is not true because you definitely have "source/common/os2/gcc" directory (see bellow your log) which means that CMD.EXE /c IF NOT EXIST os2 md os2 is run in the same directory as CMD.EXE /c IF NOT EXIST ..\..\lib\os2 md ..\..\lib\os2 > [E:\harbour802\source]make -C common first > make[2]: Entering directory `/harbour802/source/common' > CMD.EXE /c IF NOT EXIST os2 md os2 > CMD.EXE /c IF NOT EXIST os2\gcc md os2\gcc > CMD.EXE /c IF NOT EXIST ..\..\lib\os2 md ..\..\lib\os2 > CMD.EXE /c IF NOT EXIST ..\..\lib\os2\gcc md ..\..\lib\os2\gcc > make[3]: Entering directory `/harbour802/source/common/os2/gcc' > gcc -I. -I../../include -I../../../../include -W -Wall -DHB_OS_OS2 -O2 > -c ../../hbfhnd.c -ohbfhnd.o Regards, Ryszard _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour