diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/glibc/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/glibc/package.py | 61 |
1 files changed, 22 insertions, 39 deletions
diff --git a/var/spack/repos/builtin/packages/glibc/package.py b/var/spack/repos/builtin/packages/glibc/package.py index b0566f0427..38c568c9e4 100644 --- a/var/spack/repos/builtin/packages/glibc/package.py +++ b/var/spack/repos/builtin/packages/glibc/package.py @@ -44,17 +44,11 @@ class Glibc(AutotoolsPackage, GNUMirrorPackage): version("2.19", sha256="18ad6db70724699d264add80b1f813630d0141cf3a3558b4e1a7c15f6beac796") version("2.18", sha256="c8e727b5feef883184241a4767725ec280c0288794bc5cd4432497370db47734") version("2.17", sha256="a3b2086d5414e602b4b3d5a8792213feb3be664ffc1efe783a829818d3fca37a") - version("2.16.0", sha256="a75be51658cc1cfb6324ec6dbdbed416526c44c14814823129f0fcc74c279f6e") - version("2.15", sha256="da6b95d14b722539c2ec02e7ae1221318dba3d27f19c098a882ffa71bb429c20") - version("2.14.1", sha256="f80c40897df49c463a6d5a45f734acbfe1bf42ef209a92a5c217aeb383631bdb") - version("2.13", sha256="bd90d6119bcc2898befd6e1bbb2cb1ed3bb1c2997d5eaa6fdbca4ee16191a906") - version("2.12.2", sha256="6b7392a7b339a3f2db6e4bc8d5418cf29116d9e7e36b313e845cb65e449c5346") - version("2.11.3", sha256="ddc3210f4029991f5142fda7f269f9bfb197917e5d9445ba2d90d31f74cc2765") - version("2.10.1", sha256="cd9743db33389e7b4eb2942a4f365d12fc015f115113b230152280c43ccc7e3f") - version("2.9", sha256="e0210dec2a4ca0a03d8ee26e2a4ebccc915d99f4cdb1489ff0f9f4ce7bda3e30") - version("2.8", sha256="a5b91339355a7bbafc5f44b524556f7f25de83dd56f2c00ef9240dabd6865663") - version("2.7", sha256="f5ef515cb70f8d4cfcee0b3aac05b73def60d897bdb7a71f4356782febfe415a") - version("2.6.1", sha256="6be7639ccad715d25eef560ce9d1637ef206fb9a162714f6ab8167fc0d971cae") + + # Spack commit 29aa7117f42f758bc537e03e4bedf66ced0accfa has older versions + # of glibc, but they are removed, because glibc < 2.17 links against + # libgcc_s and libgcc_eh, see glibc commit "Avoid use of libgcc_s and + # libgcc_eh when building glibc." 95f5a9a866695da4e038aa4e6ccbbfd5d9cf63b7 # Fix for newer GCC, related to -fno-common patch("locs.patch", when="@2.23:2.25") @@ -63,21 +57,9 @@ class Glibc(AutotoolsPackage, GNUMirrorPackage): # _obstack_compat symbol is not initialized patch("39b1f61.patch", when="@:2.17") - # docs: install fails with "unknown command hsep / vsep" - patch("texi.patch", when="@2.16.0") - - # rpc/types.h include issue, should be from local version, not system. - patch("fb21f89.patch", when="@:2.16") - - # Use init_array (modified commit 4a531bb to unconditionally define - # NO_CTORS_DTORS_SECTIONS) - patch("4a531bb.patch", when="@:2.12") - - # make: mixed implicit and static pattern rules (trivial issue in docs) - patch("32cf406.patch", when="@:2.10") - - # linker flag output regex - patch("7c8a673.patch", when="@:2.9") + def setup_build_environment(self, env): + if self.spec.satisfies("@:2.21"): + env.append_flags("LDFLAGS", "-no-pie") def patch(self): # Support gmake >= 4 @@ -88,15 +70,13 @@ class Glibc(AutotoolsPackage, GNUMirrorPackage): string=True, ) - # Suport gcc >= 5 + # Support gcc >= 10 filter_file( - "3.4* | 4.[0-9]* )", - "3.4* | 4.[0-9]* | [5-9].* | [1-9][0-9]*)", + "4.[3-9].* | 4.[1-9][0-9].* | [5-9].* )", + "4.[3-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9]*)", "configure", string=True, ) - - # Support gcc >= 10 filter_file( "4.[4-9].* | 4.[1-9][0-9].* | [5-9].* )", "4.[4-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9]*)", @@ -104,18 +84,20 @@ class Glibc(AutotoolsPackage, GNUMirrorPackage): string=True, ) - # Support binutils - filter_file( - "2.1[3-9]*)", - "2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*)", - "configure", - string=True, - ) - depends_on("bison", type="build") depends_on("texinfo", type="build") depends_on("gettext", type="build") depends_on("perl", type="build") + depends_on("gawk", type="build") + depends_on("sed", type="build") + depends_on("gmake", type="build") + + # See 2d7ed98add14f75041499ac189696c9bd3d757fe + depends_on("gmake@:4.3", type="build", when="@:2.36") + + # From 2.29: generates locale/C-translit.h + # before that it's a test dependency. + depends_on("python@3.4:", type="build", when="@2.29:") depends_on("linux-headers") @@ -128,6 +110,7 @@ class Glibc(AutotoolsPackage, GNUMirrorPackage): return [ "--enable-kernel=4.4.1", "--with-headers={}".format(self.spec["linux-headers"].prefix.include), + "--without-selinux", ] def build(self, spec, prefix): |