On Fri, 31 Jul 2009, David Arturo Macias Corona wrote: Hi,
> Current Harbour under OS/2 > * $Id: ChangeLog 11949 2009-07-31 11:21:30Z druzus $ > 2009-07-31 13:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) > It fail with: > -------------------------------- > and make_ow.log contain: > -------------------------------- > wpp386 -zq -bt=OS2 -w3 -5r -fp5 -onaehtr -s -ei -zp4 -zt0 -oi+ -i. > -i../../../../../include -DHB_FM_STATISTICS_OFF wait.c -fo=wait.obj > echo ../../../../../lib/os2/watcom/hbrtl.lib > __lib__.tmp > make[3]: Leaving directory > `E:/harbour907e/harbour/source/rtl/obj/os2/watcom' > make[2]: Leaving directory `E:/harbour907e/harbour/source/rtl' > make[1]: Leaving directory `E:/harbour907e/harbour/source' > -------------------------------- > As old failure, can not create and fill __lib__.tmp Thank you for your test. In current os2/watcom.cf I added this lines to create libraries. # maximum size of command line in OS2 is limited to 1024 characters # the trick below with 'wordlist' is workaround for it define create_library echo $(LIB_DIR)/$@ > __lib__.tmp $(if $(wordlist 1, 50,$(^F)), echo $(wordlist 1, 50,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 51,100,$(^F)), echo $(wordlist 51,100,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 101,150,$(^F)), echo $(wordlist 101,150,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 151,200,$(^F)), echo $(wordlist 151,200,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 201,250,$(^F)), echo $(wordlist 201,250,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 250,300,$(^F)), echo $(wordlist 250,300,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 300,999,$(^F)), echo $(wordlist 300,999,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(AR) $(ARFLAGS) @__lib__.tmp endef Looks that it's not enough for OS2 GNU make 3.81 and it still GPFs. So I will have to ask you to make some tests to locate what exactly exploits the bug. If it's single line size the we have a chance to create workaround for it. If it's caused by total length of all commands then I'm afraid we cannot resolve it in such way. Please try to remove few lines from above command and reduce it to: define create_library echo $(LIB_DIR)/$@ > __lib__.tmp $(if $(wordlist 1, 50,$(^F)), echo $(wordlist 1, 50,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 51,100,$(^F)), echo $(wordlist 51,100,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(AR) $(ARFLAGS) @__lib__.tmp endef and check if GPFs is gone (of course RTL library create in such way will be uncomplited but it can give us important answer about the reason of problem. If it will still GPF then you can try to reduce single line length, i.e. define create_library echo $(LIB_DIR)/$@ > __lib__.tmp $(if $(wordlist 1, 20,$(^F)), echo $(wordlist 1, 20,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 21, 40,$(^F)), echo $(wordlist 21, 40,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 41, 60,$(^F)), echo $(wordlist 41, 60,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 61, 80,$(^F)), echo $(wordlist 61, 80,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 81,100,$(^F)), echo $(wordlist 81,100,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(AR) $(ARFLAGS) @__lib__.tmp endef If it still generates GPF then you can finally try sth like: define create_library echo $(LIB_DIR)/$@ > __lib__.tmp $(if $(wordlist 1, 10,$(^F)), echo $(wordlist 1, 10,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 11, 20,$(^F)), echo $(wordlist 11, 20,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(if $(wordlist 21, 30,$(^F)), echo $(wordlist 21, 30,$(addprefix -+,$(^F))) >> __lib__.tmp,) $(AR) $(ARFLAGS) @__lib__.tmp endef your results should help in locating the exact reason of problem. best regards, Przemek _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour