libdwarf: remove old versions with 0.10.1 (#45306)
This commit is contained in:
parent
51ac4686b4
commit
f3c21b0177
@ -12,7 +12,7 @@
|
||||
dwarf_dirs = ["libdwarf", "dwarfdump2"]
|
||||
|
||||
|
||||
class Libdwarf(Package):
|
||||
class Libdwarf(CMakePackage, Package):
|
||||
"""The DWARF Debugging Information Format is of interest to
|
||||
programmers working on compilers and debuggers (and any one
|
||||
interested in reading or writing DWARF information). It was
|
||||
@ -25,29 +25,97 @@ class Libdwarf(Package):
|
||||
MIPS/IRIX C compiler."""
|
||||
|
||||
homepage = "https://www.prevanders.net/dwarf.html"
|
||||
url = "https://www.prevanders.net/libdwarf-20160507.tar.gz"
|
||||
url = "https://www.prevanders.net/libdwarf-0.10.1.tar.xz"
|
||||
list_url = homepage
|
||||
|
||||
license("LGPL-2.1-only")
|
||||
|
||||
version("20180129", sha256="8bd91b57064b0c14ade5a009d3a1ce819f1b6ec0e189fc876eb8f42a8720d8a6")
|
||||
version("20160507", sha256="12ae39376e3915bf8fa92555989f3ad5f2f4f332b590a628541ce68987b337af")
|
||||
version("20130729", sha256="b6455d8616baf2883e2af91f006d6cbd583128fdfff46e3d1fae460bc223bb7b")
|
||||
version("20130207", sha256="5cb81459f0a1f6a2a10ef4635faddc2fa5e1a9e36901018c017759e491e708b8")
|
||||
version("20130126", sha256="c23c847935f8612f4fcdcfa0b3311f1553dcbd95bb683d3d5e030440201192fe")
|
||||
version("0.10.1", sha256="b511a2dc78b98786064889deaa2c1bc48a0c70115c187900dd838474ded1cc19")
|
||||
with default_args(deprecated=True):
|
||||
version(
|
||||
"20180129", sha256="8bd91b57064b0c14ade5a009d3a1ce819f1b6ec0e189fc876eb8f42a8720d8a6"
|
||||
)
|
||||
version(
|
||||
"20160507", sha256="12ae39376e3915bf8fa92555989f3ad5f2f4f332b590a628541ce68987b337af"
|
||||
)
|
||||
version(
|
||||
"20130729", sha256="b6455d8616baf2883e2af91f006d6cbd583128fdfff46e3d1fae460bc223bb7b"
|
||||
)
|
||||
version(
|
||||
"20130207", sha256="5cb81459f0a1f6a2a10ef4635faddc2fa5e1a9e36901018c017759e491e708b8"
|
||||
)
|
||||
version(
|
||||
"20130126", sha256="c23c847935f8612f4fcdcfa0b3311f1553dcbd95bb683d3d5e030440201192fe"
|
||||
)
|
||||
|
||||
build_system(
|
||||
conditional("generic", when="@20130126:20180130"),
|
||||
conditional("cmake", when="@0:"),
|
||||
default="generic",
|
||||
)
|
||||
|
||||
with when("@:20130126"):
|
||||
variant("shared", default=True, description="Build shared libs")
|
||||
variant("examples", default=False, description="Build examples")
|
||||
variant("pic", default=True, description="Build with position independent code")
|
||||
variant("dwarfdump", default=True, description="Build dwarfdump")
|
||||
variant("dwarfgen", default=False, description="Build dwarfgen")
|
||||
variant(
|
||||
"decompression",
|
||||
default=True,
|
||||
description="Enables support for compressed debug sections",
|
||||
)
|
||||
|
||||
conflicts("+shared ~pic")
|
||||
|
||||
depends_on("c", type="build")
|
||||
depends_on("cxx", type="build")
|
||||
|
||||
depends_on("cmake@3.5:", type="build", when="@:20130126")
|
||||
depends_on("gmake", type="build", when="@20130126:")
|
||||
|
||||
depends_on("c", type="build") # generated
|
||||
depends_on("cxx", type="build") # generated
|
||||
depends_on("elfutils@0.163", when="@20160507", type="link")
|
||||
depends_on("elf", type="link")
|
||||
depends_on("zlib-api", type="link")
|
||||
depends_on("elf", when="@20130126:", type="link")
|
||||
|
||||
depends_on("zlib-api", when="@20130126:", type="link")
|
||||
|
||||
with when("@:20130126 +decompression"):
|
||||
depends_on("zlib-api", type="link")
|
||||
depends_on("zstd", type="link")
|
||||
|
||||
parallel = False
|
||||
|
||||
def url_for_version(self, version):
|
||||
if version < Version("20130126"):
|
||||
return super().url_for_version(version)
|
||||
return f"https://www.prevanders.net/libdwarf-{version}.tar.gz"
|
||||
|
||||
|
||||
class CMakeBuilder(spack.build_systems.cmake.CMakeBuilder):
|
||||
def cmake_args(self):
|
||||
spec = self.spec
|
||||
define = self.define
|
||||
from_variant = self.define_from_variant
|
||||
|
||||
args = [
|
||||
from_variant("BUILD_SHARED", "shared"),
|
||||
from_variant("BUILD_DWARFEXAMPLE", "examples"),
|
||||
from_variant("PIC_ALWAYS", "pic"),
|
||||
from_variant("BUILD_DWARFDUMP", "dwarfdump"),
|
||||
from_variant("BUILD_DWARFGEN", "dwarfgen"),
|
||||
from_variant("ENABLE_DECOMPRESSION", "decompression"),
|
||||
define("BUILD_NON_SHARED", spec.satisfies("~shared")),
|
||||
define("DO_TESTING", self.pkg.run_tests),
|
||||
]
|
||||
|
||||
return args
|
||||
|
||||
|
||||
class GenericBuilder(spack.build_systems.generic.GenericBuilder):
|
||||
def patch(self):
|
||||
filter_file(r"^typedef struct Elf Elf;$", "", "libdwarf/libdwarf.h.in")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
def install(self, pkg, spec, prefix):
|
||||
# dwarf build does not set arguments for ar properly
|
||||
make.add_default_arg("ARFLAGS=rcs")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user