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


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.


... 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.


If the caller is a tty I would like have this logs to stderr and not each and every message in a new dialog.
--
Crime does not pay ... as well as politics. (Alfred E. Newman)



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