OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [ld/] [emultempl/] [elf32.em] - Diff between revs 145 and 157

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 145 Rev 157
Line 2104... Line 2104...
 
 
EOF
EOF
fi
fi
fi
fi
 
 
if test -n "$PARSE_AND_LIST_ARGS_CASES" -o x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
 
 
if test -n "$PARSE_AND_LIST_PROLOGUE" ; then
if test -n "$PARSE_AND_LIST_PROLOGUE" ; then
fragment <
fragment <
 $PARSE_AND_LIST_PROLOGUE
 $PARSE_AND_LIST_PROLOGUE
EOF
EOF
fi
fi
Line 2128... Line 2126...
static void
static void
gld${EMULATION_NAME}_add_options
gld${EMULATION_NAME}_add_options
  (int ns, char **shortopts, int nl, struct option **longopts,
  (int ns, char **shortopts, int nl, struct option **longopts,
   int nrl ATTRIBUTE_UNUSED, struct option **really_longopts ATTRIBUTE_UNUSED)
   int nrl ATTRIBUTE_UNUSED, struct option **really_longopts ATTRIBUTE_UNUSED)
{
{
 
EOF
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
  static const char xtra_short[] = "${PARSE_AND_LIST_SHORTOPTS}z:P:";
  static const char xtra_short[] = "${PARSE_AND_LIST_SHORTOPTS}z:P:";
 
EOF
 
else
 
fragment <
 
  static const char xtra_short[] = "${PARSE_AND_LIST_SHORTOPTS}z:";
 
EOF
 
fi
 
fragment <
  static const struct option xtra_long[] = {
  static const struct option xtra_long[] = {
    {"build-id", optional_argument, NULL, OPTION_BUILD_ID},
EOF
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
    {"audit", required_argument, NULL, OPTION_AUDIT},
    {"audit", required_argument, NULL, OPTION_AUDIT},
    {"depaudit", required_argument, NULL, 'P'},
    {"Bgroup", no_argument, NULL, OPTION_GROUP},
 
EOF
 
fi
 
fragment <
 
    {"build-id", optional_argument, NULL, OPTION_BUILD_ID},
EOF
EOF
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
fragment <
fragment <
 
    {"depaudit", required_argument, NULL, 'P'},
    {"disable-new-dtags", no_argument, NULL, OPTION_DISABLE_NEW_DTAGS},
    {"disable-new-dtags", no_argument, NULL, OPTION_DISABLE_NEW_DTAGS},
    {"enable-new-dtags", no_argument, NULL, OPTION_ENABLE_NEW_DTAGS},
    {"enable-new-dtags", no_argument, NULL, OPTION_ENABLE_NEW_DTAGS},
    {"eh-frame-hdr", no_argument, NULL, OPTION_EH_FRAME_HDR},
    {"eh-frame-hdr", no_argument, NULL, OPTION_EH_FRAME_HDR},
    {"exclude-libs", required_argument, NULL, OPTION_EXCLUDE_LIBS},
    {"exclude-libs", required_argument, NULL, OPTION_EXCLUDE_LIBS},
    {"hash-style", required_argument, NULL, OPTION_HASH_STYLE},
    {"hash-style", required_argument, NULL, OPTION_HASH_STYLE},
    {"Bgroup", no_argument, NULL, OPTION_GROUP},
 
EOF
EOF
fi
fi
 
 
if test -n "$PARSE_AND_LIST_LONGOPTS" ; then
if test -n "$PARSE_AND_LIST_LONGOPTS" ; then
fragment <
fragment <
    $PARSE_AND_LIST_LONGOPTS
    $PARSE_AND_LIST_LONGOPTS
EOF
EOF
fi
fi
 
 
fragment <
fragment <
    {NULL, no_argument, NULL, 0}
    {NULL, no_argument, NULL, 0}
  };
  };
 
 
  *shortopts = (char *) xrealloc (*shortopts, ns + sizeof (xtra_short));
  *shortopts = (char *) xrealloc (*shortopts, ns + sizeof (xtra_short));
Line 2184... Line 2195...
      if (optarg == NULL)
      if (optarg == NULL)
        optarg = DEFAULT_BUILD_ID_STYLE;
        optarg = DEFAULT_BUILD_ID_STYLE;
      if (strcmp (optarg, "none"))
      if (strcmp (optarg, "none"))
        link_info.emit_note_gnu_build_id = xstrdup (optarg);
        link_info.emit_note_gnu_build_id = xstrdup (optarg);
      break;
      break;
 
 
 
EOF
 
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
    case OPTION_AUDIT:
    case OPTION_AUDIT:
        gld${EMULATION_NAME}_append_to_separated_string (&audit, optarg);
        gld${EMULATION_NAME}_append_to_separated_string (&audit, optarg);
        break;
        break;
 
 
    case 'P':
    case 'P':
        gld${EMULATION_NAME}_append_to_separated_string (&depaudit, optarg);
        gld${EMULATION_NAME}_append_to_separated_string (&depaudit, optarg);
        break;
        break;
 
 
EOF
 
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
 
    case OPTION_DISABLE_NEW_DTAGS:
    case OPTION_DISABLE_NEW_DTAGS:
      link_info.new_dtags = FALSE;
      link_info.new_dtags = FALSE;
      break;
      break;
 
 
    case OPTION_ENABLE_NEW_DTAGS:
    case OPTION_ENABLE_NEW_DTAGS:
Line 2234... Line 2247...
        }
        }
      else
      else
        einfo (_("%P%F: invalid hash style \`%s'\n"), optarg);
        einfo (_("%P%F: invalid hash style \`%s'\n"), optarg);
      break;
      break;
 
 
 
EOF
 
fi
 
fragment <
    case 'z':
    case 'z':
      if (strcmp (optarg, "initfirst") == 0)
      if (strcmp (optarg, "defs") == 0)
 
        link_info.unresolved_syms_in_objects = RM_GENERATE_ERROR;
 
      else if (strcmp (optarg, "muldefs") == 0)
 
        link_info.allow_multiple_definition = TRUE;
 
      else if (CONST_STRNEQ (optarg, "max-page-size="))
 
        {
 
          char *end;
 
 
 
          config.maxpagesize = strtoul (optarg + 14, &end, 0);
 
          if (*end || (config.maxpagesize & (config.maxpagesize - 1)) != 0)
 
            einfo (_("%P%F: invalid maxium page size \`%s'\n"),
 
                   optarg + 14);
 
        }
 
      else if (CONST_STRNEQ (optarg, "common-page-size="))
 
        {
 
          char *end;
 
          config.commonpagesize = strtoul (optarg + 17, &end, 0);
 
          if (*end
 
              || (config.commonpagesize & (config.commonpagesize - 1)) != 0)
 
            einfo (_("%P%F: invalid common page size \`%s'\n"),
 
                   optarg + 17);
 
        }
 
      else if (strcmp (optarg, "execstack") == 0)
 
        {
 
          link_info.execstack = TRUE;
 
          link_info.noexecstack = FALSE;
 
        }
 
      else if (strcmp (optarg, "noexecstack") == 0)
 
        {
 
          link_info.noexecstack = TRUE;
 
          link_info.execstack = FALSE;
 
        }
 
EOF
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
 
      else if (strcmp (optarg, "initfirst") == 0)
        link_info.flags_1 |= (bfd_vma) DF_1_INITFIRST;
        link_info.flags_1 |= (bfd_vma) DF_1_INITFIRST;
      else if (strcmp (optarg, "interpose") == 0)
      else if (strcmp (optarg, "interpose") == 0)
        link_info.flags_1 |= (bfd_vma) DF_1_INTERPOSE;
        link_info.flags_1 |= (bfd_vma) DF_1_INTERPOSE;
      else if (strcmp (optarg, "loadfltr") == 0)
      else if (strcmp (optarg, "loadfltr") == 0)
        link_info.flags_1 |= (bfd_vma) DF_1_LOADFLTR;
        link_info.flags_1 |= (bfd_vma) DF_1_LOADFLTR;
Line 2264... Line 2315...
      else if (strcmp (optarg, "origin") == 0)
      else if (strcmp (optarg, "origin") == 0)
        {
        {
          link_info.flags |= (bfd_vma) DF_ORIGIN;
          link_info.flags |= (bfd_vma) DF_ORIGIN;
          link_info.flags_1 |= (bfd_vma) DF_1_ORIGIN;
          link_info.flags_1 |= (bfd_vma) DF_1_ORIGIN;
        }
        }
      else if (strcmp (optarg, "defs") == 0)
 
        link_info.unresolved_syms_in_objects = RM_GENERATE_ERROR;
 
      else if (strcmp (optarg, "muldefs") == 0)
 
        link_info.allow_multiple_definition = TRUE;
 
      else if (strcmp (optarg, "combreloc") == 0)
      else if (strcmp (optarg, "combreloc") == 0)
        link_info.combreloc = TRUE;
        link_info.combreloc = TRUE;
      else if (strcmp (optarg, "nocombreloc") == 0)
      else if (strcmp (optarg, "nocombreloc") == 0)
        link_info.combreloc = FALSE;
        link_info.combreloc = FALSE;
      else if (strcmp (optarg, "nocopyreloc") == 0)
      else if (strcmp (optarg, "nocopyreloc") == 0)
        link_info.nocopyreloc = TRUE;
        link_info.nocopyreloc = TRUE;
      else if (strcmp (optarg, "execstack") == 0)
 
        {
 
          link_info.execstack = TRUE;
 
          link_info.noexecstack = FALSE;
 
        }
 
      else if (strcmp (optarg, "noexecstack") == 0)
 
        {
 
          link_info.noexecstack = TRUE;
 
          link_info.execstack = FALSE;
 
        }
 
EOF
 
 
 
  if test -n "$COMMONPAGESIZE"; then
 
fragment <
 
      else if (strcmp (optarg, "relro") == 0)
      else if (strcmp (optarg, "relro") == 0)
        link_info.relro = TRUE;
        link_info.relro = TRUE;
      else if (strcmp (optarg, "norelro") == 0)
      else if (strcmp (optarg, "norelro") == 0)
        link_info.relro = FALSE;
        link_info.relro = FALSE;
EOF
EOF
  fi
  fi
 
 
fragment <
fragment <
      else if (CONST_STRNEQ (optarg, "max-page-size="))
      else
        {
        einfo (_("%P: warning: -z %s ignored.\n"), optarg);
          char *end;
 
 
 
          config.maxpagesize = strtoul (optarg + 14, &end, 0);
 
          if (*end || (config.maxpagesize & (config.maxpagesize - 1)) != 0)
 
            einfo (_("%P%F: invalid maxium page size \`%s'\n"),
 
                   optarg + 14);
 
        }
 
      else if (CONST_STRNEQ (optarg, "common-page-size="))
 
        {
 
          char *end;
 
          config.commonpagesize = strtoul (optarg + 17, &end, 0);
 
          if (*end
 
              || (config.commonpagesize & (config.commonpagesize - 1)) != 0)
 
            einfo (_("%P%F: invalid common page size \`%s'\n"),
 
                   optarg + 17);
 
        }
 
      /* What about the other Solaris -z options? FIXME.  */
 
      break;
      break;
EOF
EOF
fi
 
 
 
if test -n "$PARSE_AND_LIST_ARGS_CASES" ; then
if test -n "$PARSE_AND_LIST_ARGS_CASES" ; then
fragment <
fragment <
 $PARSE_AND_LIST_ARGS_CASES
 $PARSE_AND_LIST_ARGS_CASES
EOF
EOF
Line 2339... Line 2354...
fragment <
fragment <
 
 
static void
static void
gld${EMULATION_NAME}_list_options (FILE * file)
gld${EMULATION_NAME}_list_options (FILE * file)
{
{
  fprintf (file, _("\
EOF
  --build-id[=STYLE]          Generate build ID note\n"));
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  --audit=AUDITLIB            Specify a library to use for auditing\n"));
  --audit=AUDITLIB            Specify a library to use for auditing\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -P AUDITLIB, --depaudit=AUDITLIB\n" "\
  -Bgroup                     Selects group name lookup rules for DSO\n"));
                              Specify a library to use for auditing dependencies\n"));
EOF
 
fi
 
fragment <
 
  fprintf (file, _("\
 
  --build-id[=STYLE]          Generate build ID note\n"));
EOF
EOF
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
fragment <
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  -Bgroup                     Selects group name lookup rules for DSO\n"));
  -P AUDITLIB, --depaudit=AUDITLIB\n" "\
 
                              Specify a library to use for auditing dependencies\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  --disable-new-dtags         Disable new dynamic tags\n"));
  --disable-new-dtags         Disable new dynamic tags\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  --enable-new-dtags          Enable new dynamic tags\n"));
  --enable-new-dtags          Enable new dynamic tags\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  --eh-frame-hdr              Create .eh_frame_hdr section\n"));
  --eh-frame-hdr              Create .eh_frame_hdr section\n"));
  fprintf (file, _("\
  fprintf (file, _("\
 
  --exclude-libs=LIBS         Make all symbols in LIBS hidden\n"));
 
  fprintf (file, _("\
  --hash-style=STYLE          Set hash style to sysv, gnu or both\n"));
  --hash-style=STYLE          Set hash style to sysv, gnu or both\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z combreloc                Merge dynamic relocs into one section and sort\n"));
  -z combreloc                Merge dynamic relocs into one section and sort\n"));
 
EOF
 
fi
 
 
 
fragment <
 
  fprintf (file, _("\
 
  -z common-page-size=SIZE    Set common page size to SIZE\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z defs                     Report unresolved symbols in object files.\n"));
  -z defs                     Report unresolved symbols in object files.\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z execstack                Mark executable as requiring executable stack\n"));
  -z execstack                Mark executable as requiring executable stack\n"));
 
EOF
 
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  -z initfirst                Mark DSO to be initialized first at runtime\n"));
  -z initfirst                Mark DSO to be initialized first at runtime\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z interpose                Mark object to interpose all DSOs but executable\n"));
  -z interpose                Mark object to interpose all DSOs but executable\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z lazy                     Mark object lazy runtime binding (default)\n"));
  -z lazy                     Mark object lazy runtime binding (default)\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z loadfltr                 Mark object requiring immediate process\n"));
  -z loadfltr                 Mark object requiring immediate process\n"));
 
EOF
 
fi
 
 
 
fragment <
 
  fprintf (file, _("\
 
  -z max-page-size=SIZE       Set maximum page size to SIZE\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z muldefs                  Allow multiple definitions\n"));
  -z muldefs                  Allow multiple definitions\n"));
 
EOF
 
 
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
 
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  -z nocombreloc              Don't merge dynamic relocs into one section\n"));
  -z nocombreloc              Don't merge dynamic relocs into one section\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z nocopyreloc              Don't create copy relocs\n"));
  -z nocopyreloc              Don't create copy relocs\n"));
  fprintf (file, _("\
  fprintf (file, _("\
Line 2388... Line 2430...
  -z nodelete                 Mark DSO non-deletable at runtime\n"));
  -z nodelete                 Mark DSO non-deletable at runtime\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z nodlopen                 Mark DSO not available to dlopen\n"));
  -z nodlopen                 Mark DSO not available to dlopen\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z nodump                   Mark DSO not available to dldump\n"));
  -z nodump                   Mark DSO not available to dldump\n"));
 
EOF
 
fi
 
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  -z noexecstack              Mark executable as not requiring executable stack\n"));
  -z noexecstack              Mark executable as not requiring executable stack\n"));
EOF
EOF
 
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
  if test -n "$COMMONPAGESIZE"; then
 
fragment <
fragment <
  fprintf (file, _("\
  fprintf (file, _("\
  -z norelro                  Don't create RELRO program header\n"));
  -z norelro                  Don't create RELRO program header\n"));
EOF
 
  fi
 
 
 
fragment <
 
  fprintf (file, _("\
  fprintf (file, _("\
  -z now                      Mark object non-lazy runtime binding\n"));
  -z now                      Mark object non-lazy runtime binding\n"));
  fprintf (file, _("\
  fprintf (file, _("\
  -z origin                   Mark object requiring immediate \$ORIGIN\n\
  -z origin                   Mark object requiring immediate \$ORIGIN\n\
                                processing at runtime\n"));
                                processing at runtime\n"));
EOF
 
 
 
  if test -n "$COMMONPAGESIZE"; then
 
fragment <
 
  fprintf (file, _("\
  fprintf (file, _("\
  -z relro                    Create RELRO program header\n"));
  -z relro                    Create RELRO program header\n"));
EOF
EOF
  fi
  fi
 
 
fragment <
 
  fprintf (file, _("\
 
  -z max-page-size=SIZE       Set maximum page size to SIZE\n"));
 
  fprintf (file, _("\
 
  -z common-page-size=SIZE    Set common page size to SIZE\n"));
 
  fprintf (file, _("\
 
  -z KEYWORD                  Ignored for Solaris compatibility\n"));
 
EOF
 
fi
 
 
 
if test -n "$PARSE_AND_LIST_OPTIONS" ; then
if test -n "$PARSE_AND_LIST_OPTIONS" ; then
fragment <
fragment <
 $PARSE_AND_LIST_OPTIONS
 $PARSE_AND_LIST_OPTIONS
EOF
EOF
fi
fi
Line 2440... Line 2466...
fragment <
fragment <
 $PARSE_AND_LIST_EPILOGUE
 $PARSE_AND_LIST_EPILOGUE
EOF
EOF
fi
fi
fi
fi
else
 
fragment <
 
#define gld${EMULATION_NAME}_add_options NULL
 
#define gld${EMULATION_NAME}_handle_option NULL
 
EOF
 
if test x"$LDEMUL_LIST_OPTIONS" != xgld"$EMULATION_NAME"_list_options; then
 
fragment <
 
#define gld${EMULATION_NAME}_list_options NULL
 
EOF
 
fi
 
fi
 
 
 
fragment <
fragment <
 
 
struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
{
{

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.