This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Command line length limit


Thanks for the response.

Unfortunately the problem is that make falls over when exec'ing the 
commandline, including of course exec'ing xargs with redirected input, 
or indeed echoing to a file.

The xargs solution would be perfect if it was implemented within make 
itself. Indeed we have used a similar technique with other makes which 
coped with exporting large amounts to the environment but not to the 
commandline or file.

I can't update the zip file for each out of date file as this of 
course changes the zipfile timestamp after the first file.

Neither can I find a way of splitting the filelist within make to echo 
it in parts to a file.

At the moment I simply ignore dependencies and simply zip up 
everything in the zipfile. This is not satisfactory in the medium to 
long term but at least I have more than I need.

Although I could split into multiple targets (zip up files starting a* 
then b* etc) at some point I may still bust the limit, so this would 
not be a robust solution.

Thanks anyway for taking the time to reply.
 Mark

P.S. Did this get copied to you by cygnus or did my mail get posted on 
some newsgroup?

-----Original Message-----
From:	Martyn J. Pearce [SMTP:fluffy@jyra.com]
Sent:	Tuesday, November 25, 1997 2:25 PM
To:	Mark Johnson
Cc:	'gnu-win32@cygnus.com'
Subject:	Command line length limit


Mark Johnson writes:
| I happen to have a makefile where a target has several hundred
| dependencies (it is a zipfile).
|
| Unfortunately the win32 make reports an execvp error when attempting 
| to exec the shell, either bash or cmd.exe, with the dependency list 
or
| export the dependency list as an environment variable.
|
| Any other possible workaround would also be appreciated. I have 
tried
| echoing to a tempfile or the environment, then invoking zip to read 
| from the appropriate source but with no success.

I think that xargs may be what you're after --- it's part of the
standard gnuwin32 package.  It takes a bundle of arguments, a 
command,
and repeats the command on sized chunks of those arguments, e.g., 
twenty
at a time.

Mx.

--------------------------------

Jyra Research
Hemel Hempstead
England



-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]