|
From: | Raleigh Rinehart |
Subject: | Re: delete large list of files |
Date: | Mon, 04 Apr 2011 14:57:48 -0500 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Lightning/1.0b2 Thunderbird/3.1.9 |
This is using gnu-make 3.81 on windows:i don't know if this is still the case, but back when i used Windows its default shell had a very small command-line-length limit (128 characters, maybe? 256?). Unix shells tend to have a much higher limit. In the off chance that you have "xargs" on Windows, that tool is made for breaking up long argument lists, e.g.: ~> xargs rm< list_of_files.txt
Indeed, this is the very issue I am trying to work around. The limit seems to be much higher that 256, but It doesn't seem to match the microsoft docs of 32K (for CreateProcess) either. I'm guessing it is around the limits of cmd.exe's 8192 chars. However I am not sure of the exact limit as I have not done any empirical testing to determine it. In any case a very long list still causes make to barf.
Unfortunately, using xargs won't work either. To do that we would need to write the list of things, files in this instance, to a text file, which of course brings back around to the first problem. There is no way that I have found to get the list of things, out of make in one chunk (on win32). Hence the rather esoteric function to break the list up into smaller pieces.
thanks, -raleigh
[Prev in Thread] | Current Thread | [Next in Thread] |