summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Scemama <scemama@irsamc.ups-tlse.fr>2020-02-29 14:47:44 +0100
committerGitHub <noreply@github.com>2020-02-29 14:47:44 +0100
commitece5ec8aded86b6bcb4036c2cd35bdb8b05c5e76 (patch)
treec442b1f730efa0210f55012a1925784610d504ec
parentecc7afdad68ac254b07c71a99adfaffc897fbf40 (diff)
downloadspack-ece5ec8aded86b6bcb4036c2cd35bdb8b05c5e76.tar.gz
spack-ece5ec8aded86b6bcb4036c2cd35bdb8b05c5e76.tar.bz2
spack-ece5ec8aded86b6bcb4036c2cd35bdb8b05c5e76.tar.xz
spack-ece5ec8aded86b6bcb4036c2cd35bdb8b05c5e76.zip
opam: added versions up to v2.0.6 (#15178)
-rw-r--r--var/spack/repos/builtin/packages/opam/package.py26
1 files changed, 24 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/opam/package.py b/var/spack/repos/builtin/packages/opam/package.py
index 179fad0bd9..d25999f89e 100644
--- a/var/spack/repos/builtin/packages/opam/package.py
+++ b/var/spack/repos/builtin/packages/opam/package.py
@@ -16,14 +16,35 @@ class Opam(AutotoolsPackage):
homepage = "https://opam.ocaml.org/"
url = "https://github.com/ocaml/opam/releases/download/1.2.2/opam-full-1.2.2.tar.gz"
+ maintainers = ['scemama']
+
+ version('2.0.6', sha256='7c4bff5e5f3628ad00c53ee1b044ced8128ffdcfbb7582f8773fb433e12e07f4')
+ version('2.0.5', sha256='776c7e64d6e24c2ef1efd1e6a71d36e007645efae94eaf860c05c1929effc76f')
+ version('2.0.4', sha256='debfb828b400fb511ca290f1bfc928db91cad74ec1ccbddcfdbfeff26f7099e5')
+ version('2.0.3', sha256='0589da4da184584a5445d59385009536534f60bc0e27772245b2f49e5fa8f0e2')
+ version('2.0.2', sha256='eeb99fdda4b10ad3467a700fa4d1dfedb30714837d18d2faf1ef9c87d94cf0bc')
+ version('2.0.1', sha256='81f7f1b661a0c1e04642fe02d0bea5524b32aa2cbed0ecf9b18d7145324ed97c')
+ version('2.0.0', sha256='9dad4fcb4f53878c9daa6285d8456ccc671e21bfa71544d1f926fb8a63bfed25')
version('1.2.2', sha256='15e617179251041f4bf3910257bbb8398db987d863dd3cfc288bdd958de58f00')
version('1.2.1', sha256='f210ece7a2def34b486c9ccfb75de8febd64487b2ea4a14a7fa0358f37eacc3b')
- depends_on('ocaml') # Not a strict dependency, but recommended
+ # OCaml 4.10.0 has removed the -safe-string flag, which is necessary
+ # for OPAM 1i (see docstring of setup_build_environment).
+ depends_on('ocaml@:4.09.0', type='build', when='@:1.2.2')
+ depends_on('ocaml', type='build', when='@2.0.0:')
parallel = False
+ sanity_check_is_file = ['bin/opam']
+
+ @when('@:1.2.2')
def setup_build_environment(self, env):
+ ''' In OCaml <4.06.1, the default was -safe-string=0, and this has
+ changed in OCaml >=4.06.1. OPAM version 1 was written before 4.06.1
+ was released, so OPAM <2.0 assumes mutable strings and requires the
+ safe-string=0 flag. This is not true with OPAM >=2.0, so the flag
+ should not be set.'''
+
# Environment variable setting taken from
# https://github.com/Homebrew/homebrew-core/blob/master/Formula/opam.rb
env.set('OCAMLPARAM', 'safe-string=0,_') # OCaml 4.06.0 compat
@@ -31,4 +52,5 @@ class Opam(AutotoolsPackage):
def build(self, spec, prefix):
make('lib-ext')
make()
- make('man')
+ if spec.satisfies('@:1.2.2'):
+ make('man')