summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/gcc/package.py1
-rw-r--r--var/spack/repos/builtin/packages/jdk/package.py20
-rw-r--r--var/spack/repos/builtin/packages/lmod/fix_tclsh_paths.patch10
-rw-r--r--var/spack/repos/builtin/packages/lmod/package.py12
-rw-r--r--var/spack/repos/builtin/packages/openssl/package.py65
-rw-r--r--var/spack/repos/builtin/packages/r-rjava/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rmysql/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rodbc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rpostgresql/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rsqlite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnect/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnectjars/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-xlsx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xlsxjars/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcl/package.py2
15 files changed, 59 insertions, 77 deletions
diff --git a/var/spack/repos/builtin/packages/gcc/package.py b/var/spack/repos/builtin/packages/gcc/package.py
index 224105ea0f..72a5cb22f8 100644
--- a/var/spack/repos/builtin/packages/gcc/package.py
+++ b/var/spack/repos/builtin/packages/gcc/package.py
@@ -15,6 +15,7 @@ class Gcc(Package):
list_depth = 2
version('6.1.0', '8fb6cb98b8459f5863328380fbf06bd1')
+ version('5.4.0', '4c626ac2a83ef30dfb9260e6f59c2b30')
version('5.3.0', 'c9616fd448f980259c31de613e575719')
version('5.2.0', 'a51bcfeb3da7dd4c623e27207ed43467')
version('4.9.3', '6f831b4d251872736e8e9cc09746f327')
diff --git a/var/spack/repos/builtin/packages/jdk/package.py b/var/spack/repos/builtin/packages/jdk/package.py
index 2ec86f05e3..593a6d8340 100644
--- a/var/spack/repos/builtin/packages/jdk/package.py
+++ b/var/spack/repos/builtin/packages/jdk/package.py
@@ -22,34 +22,35 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-#------------------------------------------------------------------------------
+#
# Author: Justin Too <too1@llnl.gov>
-#------------------------------------------------------------------------------
+#
import distutils
-from distutils import dir_util
-from subprocess import call
import spack
from spack import *
import llnl.util.tty as tty
+
class Jdk(Package):
"""The Java Development Kit (JDK) released by Oracle Corporation
in the form of a binary product aimed at Java developers."""
- homepage = "http://www.oracle.com/technetwork/java/javase/downloads/index.html"
+ homepage = "http://www.oracle.com/technetwork/java/javase/downloads/index.html" # noqa: E501
version('8u66-linux-x64', '88f31f3d642c3287134297b8c10e61bf',
url="http://download.oracle.com/otn-pub/java/jdk/8u66-b17/jdk-8u66-linux-x64.tar.gz")
+ version('8u92-linux-x64', '65a1cc17ea362453a6e0eb4f13be76e4',
+ url="http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.tar.gz")
# Oracle requires that you accept their License Agreement in order
# to access the Java packages in download.oracle.com. In order to
# automate this process, we need to utilize these additional curl
# commandline options.
#
- # See http://stackoverflow.com/questions/10268583/how-to-automate-download-and-installation-of-java-jdk-on-linux
- curl_options=[
- '-j', # junk cookies
- '-H', # specify required License Agreement cookie
+ # See http://stackoverflow.com/questions/10268583/how-to-automate-download-and-installation-of-java-jdk-on-linux # noqa: E501
+ curl_options = [
+ '-j', # junk cookies
+ '-H', # specify required License Agreement cookie
'Cookie: oraclelicense=accept-securebackup-cookie']
def do_fetch(self, mirror_only=False):
@@ -65,6 +66,5 @@ class Jdk(Package):
# Now perform the actual fetch
super(Jdk, self).do_fetch(mirror_only)
-
def install(self, spec, prefix):
distutils.dir_util.copy_tree(".", prefix)
diff --git a/var/spack/repos/builtin/packages/lmod/fix_tclsh_paths.patch b/var/spack/repos/builtin/packages/lmod/fix_tclsh_paths.patch
new file mode 100644
index 0000000000..70f0d47925
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lmod/fix_tclsh_paths.patch
@@ -0,0 +1,10 @@
+--- a/Makefile.in 2016-07-21 13:03:27.861000000 -0400
++++ b/Makefile.in 2016-07-21 13:03:58.416000000 -0400
+@@ -197,6 +197,7 @@
+ -e 's|@colorize@|$(COLORIZE)|g' \
+ -e 's|@duplicate_paths@|$(DUPLICATE_PATHS)|g' \
+ -e 's|@allow_tcl_mfiles@|$(ALLOW_TCL_MFILES)|g' \
++ -e 's|@path_to_tclsh@|$(PATH_TO_TCLSH)|g' \
+ -e 's|@mpath_avail@|$(MPATH_AVAIL)|g' \
+ -e 's|@short_time@|$(SHORT_TIME)|g' \
+ -e 's|@cacheDirs@|$(SPIDER_CACHE_DIRS)|g' \
diff --git a/var/spack/repos/builtin/packages/lmod/package.py b/var/spack/repos/builtin/packages/lmod/package.py
index efa235f646..01911c1a30 100644
--- a/var/spack/repos/builtin/packages/lmod/package.py
+++ b/var/spack/repos/builtin/packages/lmod/package.py
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from glob import glob
class Lmod(Package):
@@ -44,6 +45,7 @@ class Lmod(Package):
depends_on('lua@5.2:')
depends_on('lua-luaposix', type=nolink)
depends_on('lua-luafilesystem', type=nolink)
+ depends_on('tcl', type=nolink)
parallel = False
@@ -53,6 +55,16 @@ class Lmod(Package):
spack_env.append_path('LUA_PATH', stage_lua_path.format(
version=self.version), separator=';')
+ patch('fix_tclsh_paths.patch')
+
+ def patch(self):
+ """The tcl scripts should use the tclsh that was discovered
+ by the configure script. Touch up their #! lines so that the
+ sed in the Makefile's install step has something to work on.
+ Requires the change in the associated patch file.fg"""
+ for tclscript in glob('src/*.tcl'):
+ filter_file(r'^#!.*tclsh', '#!@path_to_tclsh@', tclscript)
+
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make('install')
diff --git a/var/spack/repos/builtin/packages/openssl/package.py b/var/spack/repos/builtin/packages/openssl/package.py
index e7c105d5f5..b9eada9e83 100644
--- a/var/spack/repos/builtin/packages/openssl/package.py
+++ b/var/spack/repos/builtin/packages/openssl/package.py
@@ -22,7 +22,6 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import urllib
import llnl.util.tty as tty
from spack import *
@@ -50,61 +49,15 @@ class Openssl(Package):
parallel = False
def url_for_version(self, version):
- # This URL is computed pinging the place where the latest version is
- # stored. To avoid slowdown due to repeated pinging, we store the URL
- # in a private class attribute to do the job only once per version
- openssl_urls = getattr(Openssl, '_openssl_url', {})
- openssl_url = openssl_urls.get(version, None)
- # Same idea, but just to avoid issuing the same message multiple times
- warnings_given_to_user = getattr(Openssl, '_warnings_given', {})
- if openssl_url is None:
- if self.spec.satisfies('@system'):
- # The version @system is reserved to system openssl. In that
- # case return a fake url and exit
- openssl_url = '@system (reserved version for system openssl)'
- if not warnings_given_to_user.get(version, False):
- tty.msg('Using openssl@system: '
- 'the version @system is reserved for system openssl')
- warnings_given_to_user[version] = True
- else:
- openssl_url = self.check_for_outdated_release(
- version, warnings_given_to_user) # Store the computed URL
- openssl_urls[version] = openssl_url
- # Store the updated dictionary of URLS
- Openssl._openssl_url = openssl_urls
- # Store the updated dictionary of warnings
- Openssl._warnings_given = warnings_given_to_user
-
- return openssl_url
-
- def check_for_outdated_release(self, version, warnings_given_to_user):
- latest = 'ftp://ftp.openssl.org/source/openssl-{version}.tar.gz'
- older = 'http://www.openssl.org/source/old/{version_number}/openssl-{version_full}.tar.gz' # NOQA: ignore=E501
- # Try to use the url where the latest tarballs are stored.
- # If the url does not exist (404), then return the url for
- # older format
- version_number = '.'.join([str(x) for x in version[:-1]])
- try:
- openssl_url = latest.format(version=version)
- urllib.urlopen(openssl_url)
- except IOError:
- openssl_url = older.format(
- version_number=version_number, version_full=version)
- # Checks if we already warned the user for this particular
- # version of OpenSSL. If not we display a warning message
- # and mark this version
- if not warnings_given_to_user.get(version, False):
- tty.warn(
- 'This installation depends on an old version of OpenSSL, '
- 'which may have known security issues. ')
- tty.warn(
- 'Consider updating to the latest version of this package.')
- tty.warn('More details at {homepage}'.format(
- homepage=Openssl.homepage))
- warnings_given_to_user[version] = True
-
- return openssl_url
-
+ if '@system' in self.spec:
+ return '@system (reserved version for system openssl)'
+ else:
+ return super(Openssl, self).url_for_version(self.spec)
+
+ def handle_fetch_error(self, error):
+ tty.warn("Fetching OpenSSL failed. This may indicate that OpenSSL has "
+ "been updated, and the version in your instance of Spack is "
+ "insecure. Consider updating to the latest OpenSSL version.")
def install(self, spec, prefix):
# OpenSSL uses a variable APPS in its Makefile. If it happens to be set
diff --git a/var/spack/repos/builtin/packages/r-rjava/package.py b/var/spack/repos/builtin/packages/r-rjava/package.py
index 0ce0942602..47804bd7fc 100644
--- a/var/spack/repos/builtin/packages/r-rjava/package.py
+++ b/var/spack/repos/builtin/packages/r-rjava/package.py
@@ -37,6 +37,8 @@ class RRjava(Package):
extends('R')
+ depends_on('jdk')
+
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
self.stage.source_path)
diff --git a/var/spack/repos/builtin/packages/r-rmysql/package.py b/var/spack/repos/builtin/packages/r-rmysql/package.py
index 774c166f8b..086374df07 100644
--- a/var/spack/repos/builtin/packages/r-rmysql/package.py
+++ b/var/spack/repos/builtin/packages/r-rmysql/package.py
@@ -36,7 +36,7 @@ class RRmysql(Package):
extends('R')
- depends_on('r-DBI')
+ depends_on('r-dbi')
depends_on('mariadb')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/r-rodbc/package.py b/var/spack/repos/builtin/packages/r-rodbc/package.py
index 9cc9aebd9a..11fe0ace56 100644
--- a/var/spack/repos/builtin/packages/r-rodbc/package.py
+++ b/var/spack/repos/builtin/packages/r-rodbc/package.py
@@ -36,7 +36,7 @@ class RRodbc(Package):
extends('R')
- depends_on('unixODBC')
+ depends_on('unixodbc')
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
diff --git a/var/spack/repos/builtin/packages/r-rpostgresql/package.py b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
index 83c9b85525..53e1978ffe 100644
--- a/var/spack/repos/builtin/packages/r-rpostgresql/package.py
+++ b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
@@ -44,7 +44,7 @@ class RRpostgresql(Package):
extends('R')
- depends_on('r-DBI')
+ depends_on('r-dbi')
depends_on('postgresql')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/r-rsqlite/package.py b/var/spack/repos/builtin/packages/r-rsqlite/package.py
index 9602f6d927..7c03ab8950 100644
--- a/var/spack/repos/builtin/packages/r-rsqlite/package.py
+++ b/var/spack/repos/builtin/packages/r-rsqlite/package.py
@@ -38,7 +38,7 @@ class RRsqlite(Package):
extends('R')
- depends_on('r-DBI')
+ depends_on('r-dbi')
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
diff --git a/var/spack/repos/builtin/packages/r-xlconnect/package.py b/var/spack/repos/builtin/packages/r-xlconnect/package.py
index 919291a023..4ee7163be1 100644
--- a/var/spack/repos/builtin/packages/r-xlconnect/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnect/package.py
@@ -33,12 +33,13 @@ class RXlconnect(Package):
url = "https://cran.r-project.org/src/contrib/XLConnect_0.2-11.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/XLConnect"
- version('0.2-11', '9d1769a103cda05665df399cc335017d')
+ version('0.2-11', '9d1769a103cda05665df399cc335017d',
+ url='https://cran.r-project.org/src/contrib/Archive/XLConnect/XLConnect_0.2-11.tar.gz')
extends('R')
- depends_on('r-XLConnectJars')
- depends_on('r-rJava')
+ depends_on('r-xlconnectjars')
+ depends_on('r-rjava')
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
diff --git a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
index 15d08cc5af..c1fb365883 100644
--- a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
@@ -32,11 +32,12 @@ class RXlconnectjars(Package):
url = "https://cran.r-project.org/src/contrib/XLConnectJars_0.2-9.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/XLConnectJars"
- version('0.2-9', 'e6d6b1acfede26acaa616ee421bd30fb')
+ version('0.2-9', 'e6d6b1acfede26acaa616ee421bd30fb',
+ url='https://cran.r-project.org/src/contrib/Archive/XLConnectJars/XLConnectJars_0.2-9.tar.gz')
extends('R')
- depends_on('r-rJava')
+ depends_on('r-rjava')
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
diff --git a/var/spack/repos/builtin/packages/r-xlsx/package.py b/var/spack/repos/builtin/packages/r-xlsx/package.py
index 0aac6cdd1f..99d41dbb94 100644
--- a/var/spack/repos/builtin/packages/r-xlsx/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsx/package.py
@@ -37,7 +37,7 @@ class RXlsx(Package):
extends('R')
- depends_on('r-rJava')
+ depends_on('r-rjava')
depends_on('r-xlsxjars')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/r-xlsxjars/package.py b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
index cff6e7427e..80e86d0c73 100644
--- a/var/spack/repos/builtin/packages/r-xlsxjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
@@ -37,7 +37,7 @@ class RXlsxjars(Package):
extends('R')
- depends_on('r-rJava')
+ depends_on('r-rjava')
def install(self, spec, prefix):
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
diff --git a/var/spack/repos/builtin/packages/tcl/package.py b/var/spack/repos/builtin/packages/tcl/package.py
index ef922314d8..16d896acc6 100644
--- a/var/spack/repos/builtin/packages/tcl/package.py
+++ b/var/spack/repos/builtin/packages/tcl/package.py
@@ -57,3 +57,5 @@ class Tcl(Package):
configure("--prefix={0}".format(prefix))
make()
make("install")
+ with working_dir(prefix.bin):
+ symlink('tclsh{0}'.format(self.version.up_to(2)), 'tclsh')