On Mon, 10 Aug 2009, David Arturo Macias Corona wrote:

Hi David,

> Przemek:
> - having the sources and possibility to rebuild os2make381, have some 
> benefit ?
> - The problem is with os2make381, and/or OS/2 command shell (CMD.exe) ? If 
> later, can we use other ?
> - Is any other kind of environment limit (command line size, environment, 
> ... ) ?
> - I think if you get contact with Andreas Buening to exchange info about 
> these problems can help us to understand/solve them

Thank you for all your test.
The problem looks like some buffer overflow inside os2make381 when
the total length of all actions for given rulle is very long.
We tried to replace:
   for %i in ( *$(OBJ_EXT) ) do @echo ADDMOD %i >> __lib__.tmp
with explicit list of commands like:
   @echo ADDMOD mod1$(OBJ_EXT) >> __lib__.tmp
   @echo ADDMOD mod2$(OBJ_EXT) >> __lib__.tmp
   @echo ADDMOD mod3$(OBJ_EXT) >> __lib__.tmp
   ...
and when this list is to long some internal os2make381 memory corruption
happens with different side effect depending on total length of all
commands (usually GPF).

It's not very safe to use rules like:
   for %i in ( *$(OBJ_EXT) ) do @echo ADDMOD %i >> __lib__.tmp
and some times it can cause wrong results anyhow in our current
SVN code it creates problems only for hbpp library which have
temporary file hbpp.obj added unintentionally to this library.

I'll commit workaround which explicitly removes hbpp$(OBJ_EXT) to
source/pp/Makefile and this problem will be resolved. Anyhow if
in the future we will find GNU make for OS2 without above problem
then we should replace
   for %i in ( *$(OBJ_EXT) ) do @echo ADDMOD %i >> __lib__.tmp
with native make list of commands.
Please test it.

best regards,
Przemek
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to