libdwarf: remove old versions with 0.10.1 (#45306)
This commit is contained in:
		| @@ -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") | ||||
| 
 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Pranav Sivaraman
					Pranav Sivaraman