Fix binutils regression on +gas~ld fix (#40292)

This commit is contained in:
Jordan Galby 2023-10-03 17:28:55 +02:00 committed by GitHub
parent 8746c75db0
commit f0260c84b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -96,13 +96,7 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
when="@2.37:",
)
variant("ld", default=False, description="Enable ld.")
# When you build binutils with ~ld and +gas and load it in your PATH, you
# may end up with incompatibilities between a potentially older system ld
# and a recent assembler. For instance the linker on ubuntu 16.04 from
# binutils 2.26 and the assembler from binutils 2.36.1 will result in:
# "unable to initialize decompress status for section .debug_info"
# when compiling with debug symbols on gcc.
variant("gas", default=False, when="+ld", description="Enable as assembler.")
variant("gas", default=False, description="Enable as assembler.")
variant("interwork", default=False, description="Enable interwork.")
variant("gprofng", default=False, description="Enable gprofng.", when="@2.39:")
variant(
@ -162,6 +156,14 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
"~lto", when="+pgo", msg="Profile-guided optimization enables link-time optimization"
)
# When you build binutils with ~ld and +gas and load it in your PATH, you
# may end up with incompatibilities between a potentially older system ld
# and a recent assembler. For instance the linker on ubuntu 16.04 from
# binutils 2.26 and the assembler from binutils 2.36.1 will result in:
# "unable to initialize decompress status for section .debug_info"
# when compiling with debug symbols on gcc.
conflicts("+gas", "~ld", msg="Assembler not always compatible with system ld")
@classmethod
def determine_version(cls, exe):
output = Executable(exe)("--version", output=str, error=str)