Avoid link error on MacOS X 10.3 and 10.4.
authorBruno Haible <bruno@clisp.org>
Fri, 7 Aug 2009 07:06:45 +0000 (09:06 +0200)
committerBruno Haible <bruno@clisp.org>
Fri, 7 Aug 2009 07:06:45 +0000 (09:06 +0200)
ChangeLog
lib/argp-ba.c
lib/argp-pv.c

index 33eb324..1ce6194 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-08-07  Bruno Haible  <bruno@clisp.org>
+
+       Avoid link error on MacOS X 10.3 and 10.4.
+       * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
+       on non-ELF systems.
+       * lib/argp-pv.c (argp_program_version): Likewise.
+       Reported by Simon Josefsson.
+
 2009-08-07  Simon Josefsson  <simon@josefsson.org>
 
        * tests/test-version-etc.sh: Use $EXEEXT.
index 3e8bb96..5da64e6 100644 (file)
@@ -1,5 +1,5 @@
 /* Default definition for ARGP_PROGRAM_BUG_ADDRESS.
-   Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1999, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Miles Bader <miles@gnu.ai.mit.edu>.
 
    the ARGP_HELP_BUG_ADDR flag is set (as it is by various standard help
    messages), embedded in a sentence that says something like `Report bugs to
    ADDR.'.  */
-const char *argp_program_bug_address;
+const char *argp_program_bug_address
+/* This variable should be zero-initialized.  On most systems, putting it into
+   BSS is sufficient.  Not so on MacOS X 10.3 and 10.4, see
+   <http://lists.gnu.org/archive/html/bug-gnulib/2009-01/msg00329.html>
+   <http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00096.html>.  */
+#if defined __ELF__
+  /* On ELF systems, variables in BSS behave well.  */
+#else
+  = (const char *) 0
+#endif
+  ;
index 411f6ed..8add4b0 100644 (file)
@@ -1,5 +1,5 @@
 /* Default definition for ARGP_PROGRAM_VERSION.
-   Copyright (C) 1996, 1997, 1999, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1999, 2006, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Miles Bader <miles@gnu.ai.mit.edu>.
 
    --version is added (unless the ARGP_NO_HELP flag is used), which will
    print this string followed by a newline and exit (unless the
    ARGP_NO_EXIT flag is used).  Overridden by ARGP_PROGRAM_VERSION_HOOK.  */
-const char *argp_program_version;
+const char *argp_program_version
+/* This variable should be zero-initialized.  On most systems, putting it into
+   BSS is sufficient.  Not so on MacOS X 10.3 and 10.4, see
+   <http://lists.gnu.org/archive/html/bug-gnulib/2009-01/msg00329.html>
+   <http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00096.html>.  */
+#if defined __ELF__
+  /* On ELF systems, variables in BSS behave well.  */
+#else
+  = (const char *) 0
+#endif
+  ;