[PATCH] D125624: [gold] Remove an external dependency to GNU binutils' header file

Tom Stellard via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 1 19:27:24 PDT 2022


tstellar added a comment.

In D125624#3552238 <https://reviews.llvm.org/D125624#3552238>, @ruiu wrote:

> The motivation of doing this is to be able to build LLVMgold.so without binutils' source files and make it clear that LLVMgold.so does not include any GPL code.

OK, as I mentioned.  I think we need an attorney to review this change and confirm that it actually accomplishes this goal.

> The header file defines the public interface between linker plugins and compilers (and other tools such as `ar` which has to read symbol table of LTO object files). New structs or constants may be added to this header, but the existing ones will never be deleted or altered in such a way that that breaks compatibility. So, the declarations in this file aren't different from other structs and types that are defined the same as they are in GNU systems. We already have lots of such structs and types in llvm/include, no?

So what happens if LLVMgold.so  uses one of the new structs or constants and then is built and run on system where binutils is old enough to not have these new structs  and constants?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D125624/new/

https://reviews.llvm.org/D125624



More information about the cfe-commits mailing list