Hi Manuel
Manuel López-Ibáñez wrote, On 25/04/10 22:37:
[.]
http://gcc.gnu.org/wiki/ChangeLog
Basically, in your case, do not repeat the filename and mention which
function is affected (if any).
2010-03-13 Jon Grant <0...@jguk.org>
* collect2.h: vflag extern changed to bool so true/false can
be used.
* collect2.c: "debug" global variable changed to bool so
true/false can be used.
* "helpflag" bool global variable added.
* (main) sets "debug" to true instead of 1 when -debug is
passed in argv
* --help now sets "helpflag" to true instead of 1
* --version now sets "vflag" global bool true instead of 1
* if "helpflag" is true, standard help information is output
on stderr
I have reworked it into that format. I've not created PR. As approved,
is this ok to go in without a PR?
Cheers, Jon
Index: collect2.c
===================================================================
--- collect2.c (revision 156482)
+++ collect2.c (working copy)
@@ -174,7 +174,7 @@
int number;
};
-int vflag; /* true if -v */
+bool vflag; /* true if -v or --version */
static int rflag; /* true if -r */
static int strip_flag; /* true if -s */
static const char *demangle_flag;
@@ -193,7 +193,8 @@
/* Current LTO mode. */
static enum lto_mode_d lto_mode = LTO_MODE_NONE;
-int debug; /* true if -debug */
+bool debug; /* true if -debug */
+bool helpflag; /* true if --help */
static int shared_obj; /* true if -shared */
@@ -1228,7 +1229,7 @@
for (i = 1; argv[i] != NULL; i ++)
{
if (! strcmp (argv[i], "-debug"))
- debug = 1;
+ debug = true;
else if (! strcmp (argv[i], "-flto") && ! use_plugin)
{
use_verbose = true;
@@ -1458,7 +1459,7 @@
if (use_verbose && *q == '-' && q[1] == 'v' && q[2] == 0)
{
/* Turn on trace in collect2 if needed. */
- vflag = 1;
+ vflag = true;
}
}
obstack_free (&temporary_obstack, temporary_firstobj);
@@ -1588,7 +1589,7 @@
case 'v':
if (arg[2] == '\0')
- vflag = 1;
+ vflag = true;
break;
case '-':
@@ -1619,6 +1620,10 @@
}
else if (strncmp (arg, "--sysroot=", 10) == 0)
target_system_root = arg + 10;
+ else if (strncmp (arg, "--version", 9) == 0)
+ vflag = true;
+ else if (strncmp (arg, "--help", 9) == 0)
+ helpflag = true;
break;
}
}
@@ -1720,6 +1725,20 @@
fprintf (stderr, "\n");
}
+ if (helpflag)
+ {
+ fprintf (stderr, "Usage: collect2 [options]\n");
+ fprintf (stderr, " Wrap linker and generate constructor code if needed.\n");
+ fprintf (stderr, " Options:\n");
+ fprintf (stderr, " -debug Enable debug output\n");
+ fprintf (stderr, " --help Display this information\n");
+ fprintf (stderr, " -v, --version Display this program's version number\n");
+ fprintf (stderr, "Overview: http://gcc.gnu.org/onlinedocs/gccint/Collect2.html\n");
+ fprintf (stderr, "Report bugs: %s\n", bug_report_url);
+
+ collect_exit (0);
+ }
+
if (debug)
{
const char *ptr;
Index: collect2.h
===================================================================
--- collect2.h (revision 156482)
+++ collect2.h (working copy)
@@ -38,7 +38,7 @@
extern const char *c_file_name;
extern struct obstack temporary_obstack;
extern char *temporary_firstobj;
-extern int vflag, debug;
+extern bool vflag, debug;
extern void error (const char *, ...) ATTRIBUTE_PRINTF_1;
extern void notice (const char *, ...) ATTRIBUTE_PRINTF_1;