This is the mail archive of the cygwin-apps@cygwin.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]
Other format: [Raw text]

Re: Setup patch: List command line options on stdout


On Thu, Nov 18, 2004 at 10:32:29AM +0100, Reini Urban wrote:
>Christopher Faylor schrieb:
>>On Wed, Nov 17, 2004 at 08:53:41PM +0100, Reini Urban wrote:
>>
>>>Christopher Faylor schrieb:
>>>
>>>>On Wed, Nov 17, 2004 at 10:10:58AM +0100, Reini Urban wrote:
>>>>
>>>>
>>>>>Dave schrieb:
>>>>>
>>>>>
>>>>>>Here's a simple and useful patch for setup. Might reduce queries about
>>>>>>unattended installs, and save people having to resort to source.
>>>>>>
>>>>>>Patch is against CVS (as of yesterday).
>>>>>>Modify the leader text as you see fit :)
>>>>>>
>>>>>>------------------------------------------------------------------------
>>>>>>
>>>>>>--- main.cc~	2004-10-25 19:34:32.000000000 +0100
>>>>>>+++ main.cc	2004-11-16 19:21:14.000000000 +0000
>>>>>>@@ -471,7 +471,11 @@
>>>>>>
>>>>>> if (HelpOption)
>>>>>> {
>>>>>>-      
>>>>>>GetOption::GetInstance().ParameterUsage(log(LOG_PLAIN)<<"\nCommand 
>>>>>>Line Options:\n");
>>>>>>+      log(LOG_PLAIN)<<"\nOutput command line options\n";
>>>>>>+      std::cout << "setup [options]\n\n"
>>>>>>+		<< "Cygwin setup installs and maintains cygwin packages\n\n"
>>>>>>+		<< "Command Line options:\n";
>>>>>>+      GetOption::GetInstance().ParameterUsage(std::cout);
>>>>>>   theLog->exit(0);
>>>>>> }
>>>>>
>>>>>you should really check if the parent isatty.
>>>>>nevertheless I consider this hack useful.
>>>>
>>>>
>>>>Actually, there was a thread about this on the cygwin list not too long 
>>>>ago.
>>>
>>>Yep. This suggested a complicated trick. I found an easier one.
>>>I just detect if the console title ends with "setup.exe" 
>>>(case-insensitive). If so it's new and can be hidden.
>>>
>>>
>>>>Applications linked with -mwindows (i.e., GUI apps) can't print to
>>>>stdout.  How does this actually work, in that case?  Is this expecting
>>>>to display something on the console?
>>>
>>>I added a patch to switch to the console subsystem and hide this concole 
>>>if it was a fresh new console. Otherwise, if called from a console or if 
>>>called with -h leave the console.
>>>
>>>Patch see http://sourceware.org/bugzilla/show_bug.cgi?id=556
>>
>>I really don't understand why we should stand on our heads to make
>>setup.exe a console subsystem program (you don't need to both specify
>>-mwindows and -Wl,--subsystem=console, btw) 
>
>Unfortunately we need -mwindows.

No.  We don't.  What do you think -mwindows implies?

 From the gcc spec file:

*link:
 %{mwindows:--subsystem windows}   %{mconsole:--subsystem console}

A program can only be subsystm windows or console.  It can't be both.
It is a bug in ld and in gcc that you are able to supply both.

>>...  when you can just open up a dialog box to display the options,
>>like every other windows program in the world.
>
>Like our beloved debug log messages in about 200 messageboxes?  This is
>imho the wrong way.

Implying that someone made an incredibly stupid point when there was
no hint of any intent in that regard is a particularly odious "usenet"
discussion technique.

I did not say that all log messages should show up in message boxes.  I
said that you should use dialog boxes to display option help and that
is it.

cgf


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