various package version updates and build fixes (#10775)

* various package version updates and build fixes
This commit is contained in:
Gregory Lee 2019-03-05 11:59:47 -08:00 committed by Greg Becker
parent c939e36ed9
commit bad485a221
9 changed files with 80 additions and 6 deletions

View File

@ -0,0 +1,34 @@
# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
import os
class ArmForge(Package):
"""Arm Forge is the complete toolsuite for software development - with
everything needed to debug, profile, optimize, edit and build C, C++ and
Fortran applications on Linux for high performance - from single threads
through to complex parallel HPC codes with MPI, OpenMP, threads or CUDA."""
homepage = "http://www.allinea.com/products/develop-allinea-forge"
version('19.0.3', 'ca58987e2f4cc17c5d235cda0ac3771f')
# Licensing
license_required = True
license_comment = '#'
license_files = ['licences/Licence']
license_vars = ['ALLINEA_LICENSE_DIR', 'ALLINEA_LICENCE_DIR',
'ALLINEA_LICENSE_FILE', 'ALLINEA_LICENCE_FILE']
license_url = 'http://www.allinea.com/user-guide/forge/Installation.html'
def url_for_version(self, version):
# TODO: add support for other architectures/distributions
url = "http://content.allinea.com/downloads/"
return url + "arm-forge-%s-Redhat-7.0-x86_64.tar" % version
def install(self, spec, prefix):
os.system('./textinstall.sh --accept-licence ' + prefix)

View File

@ -40,7 +40,11 @@ def patch(self):
Note that this approach is also recommended by Linux from Scratch: Note that this approach is also recommended by Linux from Scratch:
http://www.linuxfromscratch.org/blfs/view/svn/pst/gs.html http://www.linuxfromscratch.org/blfs/view/svn/pst/gs.html
""" """
directories = ['freetype', 'jpeg', 'lcms2', 'libpng', 'zlib'] directories = ['freetype', 'jpeg', 'libpng', 'zlib']
if self.spec.satisfies('@:9.21'):
directories.append('lcms2')
else:
directories.append('lcms2mt')
for directory in directories: for directory in directories:
shutil.rmtree(directory) shutil.rmtree(directory)

View File

@ -11,6 +11,7 @@ class Harfbuzz(AutotoolsPackage):
homepage = "http://www.freedesktop.org/wiki/Software/HarfBuzz/" homepage = "http://www.freedesktop.org/wiki/Software/HarfBuzz/"
url = "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.37.tar.bz2" url = "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.37.tar.bz2"
version('2.3.1', sha256='f205699d5b91374008d6f8e36c59e419ae2d9a7bb8c5d9f34041b9a5abcae468')
version('2.1.3', sha256='613264460bb6814c3894e3953225c5357402915853a652d40b4230ce5faf0bee') version('2.1.3', sha256='613264460bb6814c3894e3953225c5357402915853a652d40b4230ce5faf0bee')
version('1.4.6', '21a78b81cd20cbffdb04b59ac7edfb410e42141869f637ae1d6778e74928d293') version('1.4.6', '21a78b81cd20cbffdb04b59ac7edfb410e42141869f637ae1d6778e74928d293')
version('0.9.37', 'bfe733250e34629a188d82e3b971bc1e') version('0.9.37', 'bfe733250e34629a188d82e3b971bc1e')
@ -27,6 +28,7 @@ def configure_args(self):
# disable building of gtk-doc files following #9771 # disable building of gtk-doc files following #9771
args.append('--disable-gtk-doc-html') args.append('--disable-gtk-doc-html')
true = which('true') true = which('true')
args.append('CXXFLAGS={0}'.format(self.compiler.cxx11_flag))
args.append('GTKDOC_CHECK={0}'.format(true)) args.append('GTKDOC_CHECK={0}'.format(true))
args.append('GTKDOC_CHECK_PATH={0}'.format(true)) args.append('GTKDOC_CHECK_PATH={0}'.format(true))
args.append('GTKDOC_MKPDF={0}'.format(true)) args.append('GTKDOC_MKPDF={0}'.format(true))

View File

@ -14,7 +14,7 @@ class Mpip(AutotoolsPackage):
version("3.4.1", "1168adc83777ac31d6ebd385823aabbd") version("3.4.1", "1168adc83777ac31d6ebd385823aabbd")
depends_on("libelf") depends_on("elf")
depends_on("libdwarf") depends_on("libdwarf")
depends_on('libunwind', when=os.uname()[4] == "x86_64") depends_on('libunwind', when=os.uname()[4] == "x86_64")
depends_on("mpi") depends_on("mpi")

View File

@ -20,7 +20,8 @@ class Pgi(Package):
homepage = "http://www.pgroup.com/" homepage = "http://www.pgroup.com/"
version('18.10', sha256='4cc24b1c7c7a1e4b3a72f3dc3318367fe75502f93585997f2cdd0c8cc7616fd7') version('19.1', sha256='3e05a6db2bf80b5d15f6ff83188f20cb89dc23e233417921e5c0822e7e57d34f')
version('18.10', sha256='4b3ff83d2a13de6001bed599246eff8e63ef711b8952d4a9ee12efd666b3e326')
version('18.4', 'b55461f9f0986acbd51902c51c2074b9') version('18.4', 'b55461f9f0986acbd51902c51c2074b9')
version('17.10', '85ad6506e7ada610ab11ddb35d697efa') version('17.10', '85ad6506e7ada610ab11ddb35d697efa')
version('17.4', 'a311d2756ddda657860bad8e5725597b') version('17.4', 'a311d2756ddda657860bad8e5725597b')
@ -51,8 +52,12 @@ class Pgi(Package):
license_url = 'http://www.pgroup.com/doc/pgiinstall.pdf' license_url = 'http://www.pgroup.com/doc/pgiinstall.pdf'
def url_for_version(self, version): def url_for_version(self, version):
return "file://{0}/pgilinux-20{1}-{2}-x86_64.tar.gz".format( if int(str(version.up_to(1))) <= 17:
os.getcwd(), version.up_to(1), version.joined) return "file://{0}/pgilinux-20{1}-{2}-x86_64.tar.gz".format(
os.getcwd(), version.up_to(1), version.joined)
else:
return "file://{0}/pgilinux-20{1}-{2}-x86-64.tar.gz".format(
os.getcwd(), version.up_to(1), version.joined)
def install(self, spec, prefix): def install(self, spec, prefix):
# Enable the silent installation feature # Enable the silent installation feature

View File

@ -14,6 +14,7 @@ class QtCreator(QMakePackage):
list_url = 'http://download.qt.io/official_releases/qtcreator/' list_url = 'http://download.qt.io/official_releases/qtcreator/'
list_depth = 2 list_depth = 2
version('4.8.0', '9e75b07f068d8577ca7160a827bcecae')
version('4.4.0', 'bae2e08bb5087aba65d41eb3f9328d9a') version('4.4.0', 'bae2e08bb5087aba65d41eb3f9328d9a')
version('4.3.1', '6769ea47f287e2d9e30ff92acb899eef') version('4.3.1', '6769ea47f287e2d9e30ff92acb899eef')
version('4.1.0', '657727e4209befa4bf5889dff62d9e0a') version('4.1.0', '657727e4209befa4bf5889dff62d9e0a')
@ -24,7 +25,8 @@ class QtCreator(QMakePackage):
# built with a different version of sqlite than the bundled copy, it will # built with a different version of sqlite than the bundled copy, it will
# cause symbol conflict. Force Spack to build with the same version of # cause symbol conflict. Force Spack to build with the same version of
# sqlite as the bundled copy. # sqlite as the bundled copy.
depends_on('sqlite@3.8.10.2') depends_on('sqlite@3.8.10.2', when='@:4.4.0')
depends_on('sqlite@3.8.10.3:', when='@4.8.0:')
# Qt Creator 4.3.0+ requires a C++14 compiler # Qt Creator 4.3.0+ requires a C++14 compiler
conflicts('%gcc@:4.8', when='@4.3.0:') conflicts('%gcc@:4.8', when='@4.3.0:')

View File

@ -26,6 +26,8 @@ class Serf(SConsPackage):
depends_on('openssl') depends_on('openssl')
depends_on('zlib') depends_on('zlib')
patch('py3syntax.patch')
def build_args(self, spec, prefix): def build_args(self, spec, prefix):
args = [ args = [
'PREFIX={0}'.format(prefix), 'PREFIX={0}'.format(prefix),

View File

@ -0,0 +1,24 @@
--- serf-1.3.9.orig/SConstruct 2019-03-05 08:54:56.706442496 -0800
+++ serf-1.3.9/SConstruct 2019-03-05 08:54:38.505529206 -0800
@@ -163,9 +163,9 @@
suffix='.def', src_suffix='.h')
})
-match = re.search('SERF_MAJOR_VERSION ([0-9]+).*'
- 'SERF_MINOR_VERSION ([0-9]+).*'
- 'SERF_PATCH_VERSION ([0-9]+)',
+match = re.search(b'SERF_MAJOR_VERSION ([0-9]+).*'
+ b'SERF_MINOR_VERSION ([0-9]+).*'
+ b'SERF_PATCH_VERSION ([0-9]+)',
env.File('serf.h').get_contents(),
re.DOTALL)
MAJOR, MINOR, PATCH = [int(x) for x in match.groups()]
@@ -183,7 +183,7 @@
unknown = opts.UnknownVariables()
if unknown:
- print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
+ print('Warning: Used unknown variables:', ', '.join(unknown.keys()))
apr = str(env['APR'])
apu = str(env['APU'])

View File

@ -35,6 +35,7 @@ class Stat(AutotoolsPackage):
depends_on('automake', type='build') depends_on('automake', type='build')
depends_on('libtool', type='build') depends_on('libtool', type='build')
depends_on('dyninst', when='~dysect') depends_on('dyninst', when='~dysect')
depends_on('dyninst@:9.99', when='@:4.0.1')
depends_on('dyninst@8.2.1+stat_dysect', when='+dysect') depends_on('dyninst@8.2.1+stat_dysect', when='+dysect')
depends_on('fast-global-file-status', when='+fgfs') depends_on('fast-global-file-status', when='+fgfs')
depends_on('graphlib@2.0.0', when='@2.0.0:2.2.0') depends_on('graphlib@2.0.0', when='@2.0.0:2.2.0')