Updated Indonesian translation.
[deliverable/binutils-gdb.git] / ld / ldmain.c
index a7636dbcf2157327e307d96bd0205c0e91f076df..3ba0592b78f1f3c7f82b1ef81e839e383e871f3b 100644 (file)
@@ -1,6 +1,6 @@
 /* Main program of GNU linker.
    Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-   2002, 2003, 2004, 2005, 2006, 2007, 2008
+   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
    Free Software Foundation, Inc.
    Written by Steve Chamberlain steve@cygnus.com
 
@@ -93,13 +93,14 @@ bfd_boolean version_printed;
 /* Nonzero means link in every member of an archive.  */
 bfd_boolean whole_archive;
 
-/* Nonzero means create DT_NEEDED entries only if a dynamic library
-   actually satisfies some reference in a regular object.  */
-bfd_boolean as_needed;
+/* True means only create DT_NEEDED entries for dynamic libraries
+   if they actually satisfy some reference in a regular object.  */
+bfd_boolean add_DT_NEEDED_for_regular;
 
-/* Nonzero means never create DT_NEEDED entries for dynamic libraries
-   in DT_NEEDED tags.  */
-bfd_boolean add_needed = TRUE;
+/* True means create DT_NEEDED entries for dynamic libraries that
+   are DT_NEEDED by dynamic libraries specifically mentioned on
+   the command line.  */
+bfd_boolean add_DT_NEEDED_for_dynamic = TRUE;
 
 /* TRUE if we should demangle symbol names.  */
 bfd_boolean demangling;
@@ -399,7 +400,7 @@ main (int argc, char **argv)
        {
          static const int ld_bufsz = 8193;
          size_t n;
-         char *buf = xmalloc (ld_bufsz);
+         char *buf = (char *) xmalloc (ld_bufsz);
 
          rewind (saved_script_handle);
          while ((n = fread (buf, 1, ld_bufsz - 1, saved_script_handle)) > 0)
@@ -503,9 +504,9 @@ main (int argc, char **argv)
              FILE *src;
              FILE *dst;
              const int bsize = 4096;
-             char *buf = xmalloc (bsize);
+             char *buf = (char *) xmalloc (bsize);
              int l;
-             char *dst_name = xmalloc (len + 5);
+             char *dst_name = (char *) xmalloc (len + 5);
 
              strcpy (dst_name, output_filename);
              strcat (dst_name, ".exe");
@@ -540,7 +541,7 @@ main (int argc, char **argv)
   if (config.stats)
     {
 #ifdef HAVE_SBRK
-      char *lim = sbrk (0);
+      char *lim = (char *) sbrk (0);
 #endif
       long run_time = get_run_time () - start_time;
 
@@ -672,7 +673,8 @@ add_ysym (const char *name)
 {
   if (link_info.notice_hash == NULL)
     {
-      link_info.notice_hash = xmalloc (sizeof (struct bfd_hash_table));
+      link_info.notice_hash =
+          (struct bfd_hash_table *) xmalloc (sizeof (struct bfd_hash_table));
       if (!bfd_hash_table_init_n (link_info.notice_hash,
                                  bfd_hash_newfunc,
                                  sizeof (struct bfd_hash_entry),
@@ -691,7 +693,8 @@ add_wrap (const char *name)
 {
   if (link_info.wrap_hash == NULL)
     {
-      link_info.wrap_hash = xmalloc (sizeof (struct bfd_hash_table));
+      link_info.wrap_hash =
+          (struct bfd_hash_table *) xmalloc (sizeof (struct bfd_hash_table));
       if (!bfd_hash_table_init_n (link_info.wrap_hash,
                                  bfd_hash_newfunc,
                                  sizeof (struct bfd_hash_entry),
@@ -724,13 +727,14 @@ add_keepsyms_file (const char *filename)
       return;
     }
 
-  link_info.keep_hash = xmalloc (sizeof (struct bfd_hash_table));
+  link_info.keep_hash = (struct bfd_hash_table *)
+      xmalloc (sizeof (struct bfd_hash_table));
   if (!bfd_hash_table_init (link_info.keep_hash, bfd_hash_newfunc,
                            sizeof (struct bfd_hash_entry)))
     einfo (_("%P%F: bfd_hash_table_init failed: %E\n"));
 
   bufsize = 100;
-  buf = xmalloc (bufsize);
+  buf = (char *) xmalloc (bufsize);
 
   c = getc (file);
   while (c != EOF)
@@ -749,7 +753,7 @@ add_keepsyms_file (const char *filename)
              if (len >= bufsize)
                {
                  bufsize *= 2;
-                 buf = xrealloc (buf, bufsize);
+                 buf = (char *) xrealloc (buf, bufsize);
                }
              c = getc (file);
            }
@@ -780,7 +784,8 @@ add_archive_element (struct bfd_link_info *info,
 {
   lang_input_statement_type *input;
 
-  input = xcalloc (1, sizeof (lang_input_statement_type));
+  input = (lang_input_statement_type *)
+      xcalloc (1, sizeof (lang_input_statement_type));
   input->filename = abfd->filename;
   input->local_sym_name = abfd->filename;
   input->the_bfd = abfd;
@@ -1127,7 +1132,7 @@ warning_callback (struct bfd_link_info *info ATTRIBUTE_UNUSED,
 static void
 warning_find_reloc (bfd *abfd, asection *sec, void *iarg)
 {
-  struct warning_callback_info *info = iarg;
+  struct warning_callback_info *info = (struct warning_callback_info *) iarg;
   long relsize;
   arelent **relpp;
   long relcount;
@@ -1142,7 +1147,7 @@ warning_find_reloc (bfd *abfd, asection *sec, void *iarg)
   if (relsize == 0)
     return;
 
-  relpp = xmalloc (relsize);
+  relpp = (arelent **) xmalloc (relsize);
   relcount = bfd_canonicalize_reloc (abfd, sec, relpp, info->asymbols);
   if (relcount < 0)
     einfo (_("%B%F: could not read relocs: %E\n"), abfd);
@@ -1190,7 +1195,8 @@ undefined_symbol (struct bfd_link_info *info ATTRIBUTE_UNUSED,
       /* Only warn once about a particular undefined symbol.  */
       if (hash == NULL)
        {
-         hash = xmalloc (sizeof (struct bfd_hash_table));
+         hash = (struct bfd_hash_table *)
+              xmalloc (sizeof (struct bfd_hash_table));
          if (!bfd_hash_table_init (hash, bfd_hash_newfunc,
                                    sizeof (struct bfd_hash_entry)))
            einfo (_("%F%P: bfd_hash_table_init failed: %E\n"));
@@ -1376,7 +1382,7 @@ notice (struct bfd_link_info *info,
   if (name == NULL)
     {
       if (command_line.cref || nocrossref_list != NULL)
-       return handle_asneeded_cref (abfd, value);
+       return handle_asneeded_cref (abfd, (enum notice_asneeded_action) value);
       return TRUE;
     }
 
This page took 0.025752 seconds and 4 git commands to generate.