commit:     acc649995abf68f60667fd91dce2c47704f4130f
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 27 13:12:17 2020 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Fri Nov 27 13:38:56 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=acc64999

sys-devel/binutils-config: drop libmissing support

libmissing is masked and soon to be removed, it never really worked in
the way it was hoped it could

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 sys-devel/binutils-config/files/ldwrapper.c | 25 -------------------------
 1 file changed, 25 deletions(-)

diff --git a/sys-devel/binutils-config/files/ldwrapper.c 
b/sys-devel/binutils-config/files/ldwrapper.c
index 07dc6ebf2a..216747da5c 100644
--- a/sys-devel/binutils-config/files/ldwrapper.c
+++ b/sys-devel/binutils-config/files/ldwrapper.c
@@ -210,7 +210,6 @@ main(int argc, char *argv[])
        char is_darwin = 0;
        char darwin_use_rpath = 1;
        char is_aix = 0;
-       char has_missing = getenv("BINUTILS_CONFIG_DISABLE_MISSING") == NULL;
        char *p;
        size_t len;
        int i;
@@ -349,14 +348,6 @@ main(int argc, char *argv[])
                        /* AIX ld accepts -R only with -bsvr4 */
                        newargc++; /* -bsvr4 */
                }
-
-               /* BINUTILS_CONFIG_DISABLE_MISSING overrides this such that we
-                * can disable this behaviour */
-               if (has_missing && stat(EPREFIX "/usr/lib/libmissing.a", &st) 
== 0) {
-                       newargc++; /* -lmissing */
-               } else {
-                       has_missing = 0;
-               }
        }
 
        /* account the original arguments */
@@ -408,20 +399,6 @@ main(int argc, char *argv[])
                        }
                }
 
-               if (!is_cross && is_darwin && has_missing) {
-                       if (argv[i][0] == '-' && argv[i][1] == 'l' &&
-                                       (strcmp(&argv[i][2], "System") == 0 ||
-                                        strcmp(&argv[i][2], "SystemStubs") == 
0))
-                       {
-                               /* inject -lmissing before -lSystem or 
-lSystemStubs */
-                               memmove(&newargv[j + 1], &newargv[j],
-                                               sizeof(newargv[j]) * (k - j));
-                               newargv[j++] = "-lmissing";
-                               k++;
-                               has_missing = 0;  /* avoid duplicate insertion 
*/
-                       }
-               }
-
                newargv[j] = argv[i];
 
                if (is_cross || (is_darwin && !darwin_use_rpath))
@@ -498,8 +475,6 @@ main(int argc, char *argv[])
                        newargv[k++] = "-R" EPREFIX "/lib";
                }
 
-               if (has_missing)
-                       newargv[k++] = "-lmissing";
                if (is_aix)
                        newargv[k++] = "-bsvr4"; /* last one, see above */
        }

Reply via email to