summaryrefslogtreecommitdiff
path: root/binutils/ar.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2011-11-29 18:07:40 +0000
committerRoland McGrath <roland@gnu.org>2011-11-29 18:07:40 +0000
commit72ed053b009e9654ca49001a1ecf337ccdb9e3c3 (patch)
tree0487770a39cf294d8a56e71d917e206471b0e42a /binutils/ar.c
parentc87eb572737ae9fb8b749d55a070627806ca773b (diff)
downloadbinutils-redhat-72ed053b009e9654ca49001a1ecf337ccdb9e3c3.tar.gz
* ar.c (ranlib_usage): Describe -D.
(ranlib_main): Parse -D. (ranlib_touch): Set BFD_DETERMINISTIC_OUTPUT under -D. * doc/binutils.texi (ranlib): Describe -D, and also --help/-h/-H.
Diffstat (limited to 'binutils/ar.c')
-rw-r--r--binutils/ar.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/binutils/ar.c b/binutils/ar.c
index 882ef1ac0d..676e92cfd9 100644
--- a/binutils/ar.c
+++ b/binutils/ar.c
@@ -324,6 +324,7 @@ ranlib_usage (int help)
#endif
fprintf (s, _("\
-t Update the archive's symbol map timestamp\n\
+ -D Use zero for the symbol map timestamp\n\
-h --help Print this help message\n\
-v --version Print version information\n"));
@@ -559,10 +560,13 @@ ranlib_main (int argc, char **argv)
bfd_boolean touch = FALSE;
int c;
- while ((c = getopt_long (argc, argv, "hHvVt", long_options, NULL)) != EOF)
+ while ((c = getopt_long (argc, argv, "DhHvVt", long_options, NULL)) != EOF)
{
switch (c)
{
+ case 'D':
+ deterministic = TRUE;
+ break;
case 'h':
case 'H':
show_help = 1;
@@ -581,7 +585,7 @@ ranlib_main (int argc, char **argv)
ranlib_usage (0);
if (show_help)
- usage (1);
+ ranlib_usage (1);
if (show_version)
print_version ("ranlib");
@@ -1365,6 +1369,9 @@ ranlib_touch (const char *archname)
/* xgettext:c-format */
fatal (_("%s: no archive map to update"), archname);
+ if (deterministic)
+ arch->flags |= BFD_DETERMINISTIC_OUTPUT;
+
bfd_update_armap_timestamp (arch);
if (! bfd_close (arch))