Skip to content

Commit

Permalink
Merge pull request #574 from hpcugent/develop
Browse files Browse the repository at this point in the history
release EasyBuild v2.0.0
  • Loading branch information
boegel committed Mar 6, 2015
2 parents 9b1638d + efcc798 commit 8bd3a34
Show file tree
Hide file tree
Showing 143 changed files with 1,020 additions and 428 deletions.
40 changes: 36 additions & 4 deletions RELEASE_NOTES
Expand Up @@ -3,7 +3,39 @@ For more detailed information, please see the git log.

These release notes can also be consulted at http://easybuild.readthedocs.org/en/latest/Release_notes.html.

The latest version of easybuild-easyblocks provides 141 software-specific easyblocks and 20 generic easyblocks.
The latest version of easybuild-easyblocks provides 143 software-specific easyblocks and 21 generic easyblocks.


v2.0.0 (March 6th 2015)
-----------------------

feature + bugfix release
- one new generic easyblock for installing a bundle of modules: Bundle (#550)
- and let the Toolchain generic easyblock derive from Bundle
- new easyblocks for 2 software packages that require customized support:
- GAMESS-US (#470, #544, #558), Hadoop (#563)
- various other enhancements, including:
- move support for staged_install from CPLEX easyblock to generic Binary easyblock (#502)
- fix sanity check in picard easyblock for v1.119 that doesn't include sam.jar (#522)
- log warning message when unlinking jellyfish symlink fails in Trinity easyblock (#534)
- revamp EB_libint2 easyblock into EB_Libint that works for both Libint v1x and v2.x (#536)
- update CP2K easyblock for recent versions (no more 'fes') (#537)
- update SuiteSparse easyblock for recent versions (#541)
- fix easyblock unit tests after dropping support for deprecated behaviour in framework (#543)
- rework PSI easyblock to support future releases (#545)
- enable always generating a 'verbose' Makefile in the generic CMakeMake easyblock (#546)
- remove functionality in (generic) easyblocks that was deprecated for EasyBuild v2.0 (#547)
- enhance generic RPackage easyblock to support installing extensions in a separate prefix (#551)
- deprecate GenomeAnalysisTK easyblock, since it's basically equivalent to Tarball (#557)
- update SAMtools easyblock for v1.2 (#562)
- take preconfigopts easyconfig parameter into account in ROOT easyblock (#566)
- update easyblock for installing EasyBuild
- to support bootstrapping with provided source tarballs (#559)
- to also cover vsc-base dependency, and verify easy-install.pth (#567)
- update disabling sanitizer tests for Clang 3.6 (#570)
- various bug fixes, including:
- fix handling of LTO in GCC easyblock (#535)
- relocate FDTD RPM to fix installation on SL6 (#538)

v1.16.2 (March 6th 2015)
------------------------
Expand All @@ -19,7 +51,7 @@ v1.16.0 (December 18th 2014)
----------------------------

feature + bugfix release
- new easyblocks for 2 software packages that requires customized support:
- new easyblocks for 2 software packages that require customized support:
- Chimera (#524), GATE (#518)
- fix use of deprecated functionality, enhance unit tests to check for it (#523)
- various other enhancements, including:
Expand Down Expand Up @@ -65,7 +97,7 @@ v1.15.0 (September 12th 2014)
-----------------------------

feature + bugfix release
- added support for 2 new software packages that requires customized support: Modeller (#392), NAMD (#397)
- added support for 2 new software packages that require customized support: Modeller (#392), NAMD (#397)
- various enhancements, including:
- fix locale used for running Perl unit tests (#425)
- fix Rmpi easyblock to correctly configure for Intel MPI (#435)
Expand All @@ -90,7 +122,7 @@ v1.14.0 (July 9th 2014)

feature + bugfix release
- added one new generic easyblock: CmdCp (#395)
- added support for 2 new software packages that requires customized support: ANSYS (#398), HPCG (#408)
- added support for 2 new software packages that require customized support: ANSYS (#398), HPCG (#408)
- various enhancements, including:
- updated ABAQUS easyblock so that it works for version 13.2 (#406)
- enhance BLAT easyblock by using super's build_step and prebuildopts/buildopts (#423)
Expand Down
8 changes: 4 additions & 4 deletions easybuild/__init__.py
@@ -1,10 +1,10 @@
##
# Copyright 2009-2012 Ghent University
# Copyright 2009-2012 Stijn De Weirdt
# Copyright 2009-2015 Ghent University
# Copyright 2009-2015 Stijn De Weirdt
# Copyright 2010 Dries Verdegem
# Copyright 2010-2012 Kenneth Hoste
# Copyright 2010-2015 Kenneth Hoste
# Copyright 2011 Pieter De Baets
# Copyright 2011-2012 Jens Timmerman
# Copyright 2011-2015 Jens Timmerman
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
10 changes: 5 additions & 5 deletions easybuild/easyblocks/__init__.py
@@ -1,10 +1,10 @@
# #
# Copyright 2009-2014 Ghent University
# Copyright 2009-2014 Stijn De Weirdt
# Copyright 2009-2015 Ghent University
# Copyright 2009-2015 Stijn De Weirdt
# Copyright 2010 Dries Verdegem
# Copyright 2010-2014 Kenneth Hoste
# Copyright 2010-2015 Kenneth Hoste
# Copyright 2011 Pieter De Baets
# Copyright 2011-2014 Jens Timmerman
# Copyright 2011-2015 Jens Timmerman
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down Expand Up @@ -33,7 +33,7 @@

# note: release candidates should be versioned as a pre-release, e.g. "1.1rc1"
# 1.1-rc1 would indicate a post-release, i.e., and update of 1.1, so beware
VERSION = LooseVersion("1.16.2")
VERSION = LooseVersion("2.0.0")
UNKNOWN = "UNKNOWN"


Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/abaqus.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/acml.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/aladin.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/ansys.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2014 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/ant.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/arb.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/armadillo.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/a/atlas.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bamtools.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 The Cyprus Institute
# Copyright 2009-2015 The Cyprus Institute
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bioconductor.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bisearch.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/blacs.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/blat.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 the Cyprus Institute
# Copyright 2009-2015 the Cyprus Institute
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/boost.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bowtie2.py
@@ -1,7 +1,7 @@
##
# This file is an EasyBuild reciPY as per https://github.com/hpcugent/easybuild
#
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Copyright:: Copyright 2012-2015 Uni.Lu/LCSB, NTUA
# Authors:: Cedric Laczny <cedric.laczny@uni.lu>, Fotis Georgatos <fotis@cern.ch>, Kenneth Hoste
# License:: MIT/GPL
# $Id$
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bwa.py
@@ -1,7 +1,7 @@
##
# This file is an EasyBuild reciPY as per https://github.com/hpcugent/easybuild
#
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Copyright:: Copyright 2012-2015 Uni.Lu/LCSB, NTUA
# Authors:: Cedric Laczny <cedric.laczny@uni.lu>, Kenneth Hoste
# Authors:: George Tsouloupas <g.tsouloupas@cyi.ac.cy>, Fotis Georgatos <fotis@cern.ch>
# License:: MIT/GPL
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/b/bzip2.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/c/cgal.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down
2 changes: 1 addition & 1 deletion easybuild/easyblocks/c/chapel.py
@@ -1,7 +1,7 @@
##
# This file is an EasyBuild reciPY as per https://github.com/hpcugent/easybuild
#
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Copyright:: Copyright 2012-2015 Uni.Lu/LCSB, NTUA
# Authors:: Fotis Georgatos <fotis@cern.ch>, Kenneth Hoste
# License:: MIT/GPL
# $Id$
Expand Down
77 changes: 48 additions & 29 deletions easybuild/easyblocks/c/clang.py
Expand Up @@ -35,6 +35,7 @@
import fileinput
import glob
import os
import re
import shutil
import sys
from distutils.version import LooseVersion
Expand Down Expand Up @@ -196,36 +197,54 @@ def configure_step(self):
super(EB_Clang, self).configure_step(srcdir=self.llvm_src_dir)

def disable_sanitizer_tests(self):
"""Disable the tests of all the sanitizers"""
patchfiles = [
"projects/compiler-rt/lib/asan/CMakeLists.txt",
"projects/compiler-rt/lib/dfsan/CMakeLists.txt",
"projects/compiler-rt/lib/lsan/CMakeLists.txt",
"projects/compiler-rt/lib/msan/CMakeLists.txt",
"projects/compiler-rt/lib/tsan/CMakeLists.txt",
"projects/compiler-rt/lib/ubsan/CMakeLists.txt",
]

for patchfile in patchfiles:
"""Disable the tests of all the sanitizers by removing the test directories from the build system"""
if LooseVersion(self.version) < LooseVersion('3.6'):
# for Clang 3.5 and lower, the tests are scattered over several CMakeLists.
# We loop over them, and patch out the rule that adds the sanitizers tests to the testsuite
patchfiles = [
"lib/asan",
"lib/dfsan",
"lib/lsan",
"lib/msan",
"lib/tsan",
"lib/ubsan",
]

for patchfile in patchfiles:
patchfile_fp = os.path.join(self.llvm_src_dir, "projects/compiler-rt", patchfile, "CMakeLists.txt")
if os.path.exists(patchfile_fp):
self.log.debug("Patching %s in %s" % (patchfile, self.llvm_src_dir))
try:
for line in fileinput.input(patchfile_fp, inplace=1, backup='.orig'):
if "add_subdirectory(lit_tests)" not in line:
sys.stdout.write(line)
except (IOError, OSError), err:
self.log.error("Failed to patch %s: %s" % (patchfile_fp, err))
else:
self.log.debug("Not patching non-existent %s in %s" % (patchfile, self.llvm_src_dir))

# There is a common part seperate for the specific saniters, we disable all
# the common tests
patchfile = "projects/compiler-rt/lib/sanitizer_common/CMakeLists.txt"
try:
for line in fileinput.input("%s/%s" % (self.llvm_src_dir, patchfile), inplace=1, backup='.orig'):
if "add_subdirectory(tests)" not in line:
sys.stdout.write(line)
except IOError, err:
self.log.error("Failed to patch %s/%s: %s" % (self.llvm_src_dir, patchfile, err))
else:
# In Clang 3.6, the sanitizer tests are grouped together in one CMakeLists
# We patch out adding the subdirectories with the sanitizer tests
patchfile = "projects/compiler-rt/test/CMakeLists.txt"
patchfile_fp = os.path.join(self.llvm_src_dir, patchfile)
if os.path.exists(patchfile_fp):
self.log.debug("Patching %s in %s" % (patchfile, self.llvm_src_dir))
try:
for line in fileinput.input(patchfile_fp, inplace=1, backup='.orig'):
if "add_subdirectory(lit_tests)" not in line:
sys.stdout.write(line)
except (IOError, OSError), err:
self.log.error("Failed to patch %s: %s" % (patchfile_fp, err))
else:
self.log.debug("Not patching non-existent %s in %s" % (patchfile, self.llvm_src_dir))

patchfile = "projects/compiler-rt/lib/sanitizer_common/CMakeLists.txt"
try:
for line in fileinput.input("%s/%s" % (self.llvm_src_dir, patchfile), inplace=1, backup='.orig'):
if "add_subdirectory(tests)" not in line:
sys.stdout.write(line)
except IOError, err:
self.log.error("Failed to patch %s/%s: %s" % (self.llvm_src_dir, patchfile, err))
self.log.debug("Patching %s in %s" % (patchfile, self.llvm_src_dir))
patch_regex = re.compile(r'add_subdirectory\((.*san|sanitizer_common)\)')
try:
for line in fileinput.input(patchfile_fp, inplace=1, backup='.orig'):
if not patch_regex.search(line):
sys.stdout.write(line)
except IOError, err:
self.log.error("Failed to patch %s: %s" % (patchfile_fp, err))

def build_with_prev_stage(self, prev_obj, next_obj):
"""Build Clang stage N using Clang stage N-1"""
Expand Down
4 changes: 2 additions & 2 deletions easybuild/easyblocks/c/cp2k.py
@@ -1,5 +1,5 @@
##
# Copyright 2009-2013 Ghent University
# Copyright 2009-2015 Ghent University
#
# This file is part of EasyBuild,
# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
Expand Down Expand Up @@ -774,7 +774,7 @@ def sanity_check_step(self):

cp2k_type = self.cfg['type']
custom_paths = {
'files': ["bin/%s.%s" % (x, cp2k_type) for x in ["cp2k", "cp2k_shell", "fes"]],
'files': ["bin/%s.%s" % (x, cp2k_type) for x in ["cp2k", "cp2k_shell"]],
'dirs': ["tests"]
}

Expand Down

0 comments on commit 8bd3a34

Please sign in to comment.