Mail Archives: cygwin/2003/01/30/07:23:38
Christopher Faylor wrote:
> On Thu, Jan 30, 2003 at 01:44:52AM -0000, Max Bowsher wrote:
>> This does not invalidate the proposal "do something at link time to
>> force POSIXLY_CORRECT if necessary for this app".
>
> I don't understand what it has to do with anything. Your proposed
> change (which I've already made) will still work. It will just
> require that executables be relinked before there is any change.
>
> To answer the question, no I don't think this calls for a binmode.o
> solution. That would just lend to exactly the kind of confusion that
> Larry was cautioning against.
OK, confusion == bad. But I don't think what I propose would cause
confusion, done right. So maybe I'm not explaining it very well:
* getopt reordering is helpful for most programs
* getopt reordering is annoying for programs which take invocations of other
programs as arguments
* Cygwin getopt penalizes all programs for the sake of the few.
* POSIXLY_INCORRECT_GETOPT goes a little way to fixing this, but is still
not ideal.
* Ideal would be for the default to be reordering-enabled, and the few
programs which don't work well with this to automatically switch it off.
Possible solutions include having the few programs which need to:
- Call setenv("POSIXLY_CORRECT", "1") before calling getopt.
- Call [the hypothetical] set_getopt_posixly_correct(1) before calling
getopt
- Have an optionally linked premain object which does on of these
The only possible flaw is:
How to determine which programs need to do this.
Off hand, I can think of strace, and find -exec.
Max.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -