remove the disabled DO_FORCE_VERS chunks of this patch.

reminded by drahn@
This commit is contained in:
brad 2004-05-19 00:32:50 +00:00
parent 0b0e7ff81a
commit b7b68aa275

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
$OpenBSD: patch-ld_emultempl_elf32_em,v 1.7 2004/05/19 00:32:50 brad Exp $
--- ld/emultempl/elf32.em.orig 2003-02-28 17:55:11.000000000 -0500
+++ ld/emultempl/elf32.em 2004-01-11 19:03:23.000000000 -0500
@@ -87,6 +87,159 @@ static char *gld${EMULATION_NAME}_get_sc
+++ ld/emultempl/elf32.em 2004-05-18 19:24:48.000000000 -0400
@@ -87,6 +87,130 @@ static char *gld${EMULATION_NAME}_get_sc
PARAMS ((int *isfile));
EOF
@ -18,7 +18,6 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
+ const char *dirname;
+ const char *filename;
+{
+ int force_maj, force_min;
+ const char *dot;
+ unsigned int len;
+ char *alc;
@ -31,33 +30,9 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
+ int statval;
+ struct stat st;
+
+ force_maj = -1;
+ force_min = -1;
+ dot = strchr (filename, '.');
+#ifdef DO_FORCE_VERS
+ if (dot == NULL)
+ {
+#endif /* DO_FORCE_VERS */
+ len = strlen (filename);
+ alc = NULL;
+#ifdef DO_FORCE_VERS
+ }
+ else
+ {
+ force_maj = atoi (dot + 1);
+
+ len = dot - filename;
+ alc = (char *) xmalloc (len + 1);
+ strncpy (alc, filename, len);
+ alc[len] = '\0';
+ filename = alc;
+
+ dot = strchr (dot + 1, '.');
+ if (dot != NULL)
+ force_min = atoi (dot + 1);
+ }
+#endif /* DO_FORCE_VERS */
+
+ len = strlen (filename);
+ alc = NULL;
+ found = NULL;
+ max_maj = max_min = 0;
+
@ -117,10 +92,6 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
+ continue;
+ }
+
+ if ((force_maj != -1 && force_maj != found_maj)
+ || (force_min != -1 && force_min != found_min))
+ continue;
+
+ /* Make sure the file really exists (ignore broken symlinks). */
+ full_path = xmalloc (dirnamelen + 1 + strlen (entry->d_name) + 1);
+ sprintf (full_path, "%s/%s", dirname, entry->d_name);
@ -161,7 +132,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
# Import any needed special functions and/or overrides.
#
@@ -266,7 +419,7 @@ gld${EMULATION_NAME}_try_needed (name, f
@@ -266,7 +390,7 @@ gld${EMULATION_NAME}_try_needed (name, f
int force;
{
bfd *abfd;
@ -170,7 +141,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
abfd = bfd_openr (name, bfd_get_target (output_bfd));
if (abfd == NULL)
@@ -359,7 +512,7 @@ cat >>e${EMULATION_NAME}.c <<EOF
@@ -359,7 +483,7 @@ cat >>e${EMULATION_NAME}.c <<EOF
einfo ("%F%P:%B: bfd_stat failed: %E\n", abfd);
/* First strip off everything before the last '/'. */
@ -179,7 +150,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
if (trace_file_tries)
info_msg (_("found %s at %s\n"), soname, name);
@@ -370,6 +523,7 @@ cat >>e${EMULATION_NAME}.c <<EOF
@@ -370,6 +494,7 @@ cat >>e${EMULATION_NAME}.c <<EOF
{
/* Return TRUE to indicate that we found the file, even though
we aren't going to do anything with it. */
@ -187,7 +158,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
return TRUE;
}
@@ -684,7 +838,7 @@ gld${EMULATION_NAME}_after_open ()
@@ -684,7 +809,7 @@ gld${EMULATION_NAME}_after_open ()
rpath_link, rpath, then the environment variable
LD_LIBRARY_PATH (native only), then the DT_RPATH/DT_RUNPATH
entries (native only), then the linker script LIB_SEARCH_DIRS.
@ -196,7 +167,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
We search twice. The first time, we skip objects which may
introduce version mismatches. The second time, we force
@@ -696,7 +850,7 @@ gld${EMULATION_NAME}_after_open ()
@@ -696,7 +821,7 @@ gld${EMULATION_NAME}_after_open ()
EOF
if [ "x${USE_LIBPATH}" = xyes ] ; then
cat >>e${EMULATION_NAME}.c <<EOF
@ -205,7 +176,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
struct bfd_link_needed_list *rp;
int found;
EOF
@@ -716,15 +870,38 @@ EOF
@@ -716,15 +841,38 @@ EOF
fi
if [ "x${NATIVE}" = xyes ] ; then
cat >>e${EMULATION_NAME}.c <<EOF
@ -247,7 +218,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
if (gld${EMULATION_NAME}_search_needed (lib_path, l->name, force))
break;
EOF
@@ -976,7 +1153,17 @@ gld${EMULATION_NAME}_open_dynamic_archiv
@@ -976,7 +1124,17 @@ gld${EMULATION_NAME}_open_dynamic_archiv
return FALSE;
filename = entry->filename;
@ -266,7 +237,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
/* This allocates a few bytes too many when EXTRA_SHLIB_EXTENSION
is defined, but it does not seem worth the headache to optimize
away those two bytes of space. */
@@ -990,6 +1177,10 @@ gld${EMULATION_NAME}_open_dynamic_archiv
@@ -990,6 +1148,10 @@ gld${EMULATION_NAME}_open_dynamic_archiv
sprintf (string, "%s/lib%s%s.so", search->name, filename, arch);
@ -277,7 +248,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
#ifdef EXTRA_SHLIB_EXTENSION
/* Try the .so extension first. If that fails build a new filename
using EXTRA_SHLIB_EXTENSION. */
@@ -1486,6 +1677,8 @@ if test -n "$GENERATE_COMBRELOC_SCRIPT"
@@ -1486,6 +1648,8 @@ if test -n "$GENERATE_COMBRELOC_SCRIPT"
echo ' ; else if (link_info.combreloc) return' >> e${EMULATION_NAME}.c
sed $sc ldscripts/${EMULATION_NAME}.xc >> e${EMULATION_NAME}.c
fi
@ -286,7 +257,7 @@ $OpenBSD: patch-ld_emultempl_elf32_em,v 1.6 2004/01/12 06:26:22 brad Exp $
echo ' ; else return' >> e${EMULATION_NAME}.c
sed $sc ldscripts/${EMULATION_NAME}.x >> e${EMULATION_NAME}.c
echo '; }' >> e${EMULATION_NAME}.c
@@ -1530,6 +1723,8 @@ cat >>e${EMULATION_NAME}.c <<EOF
@@ -1530,6 +1694,8 @@ cat >>e${EMULATION_NAME}.c <<EOF
EOF
fi
cat >>e${EMULATION_NAME}.c <<EOF