Merged in current develop to cflags 042716
This commit is contained in:
12
var/spack/repos/builtin.mock/packages/a/package.py
Normal file
12
var/spack/repos/builtin.mock/packages/a/package.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from spack import *
|
||||
|
||||
class A(Package):
|
||||
"""Simple package with no dependencies"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/a-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
12
var/spack/repos/builtin.mock/packages/b/package.py
Normal file
12
var/spack/repos/builtin.mock/packages/b/package.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from spack import *
|
||||
|
||||
class B(Package):
|
||||
"""Simple package with no dependencies"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/b-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
12
var/spack/repos/builtin.mock/packages/c/package.py
Normal file
12
var/spack/repos/builtin.mock/packages/c/package.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from spack import *
|
||||
|
||||
class C(Package):
|
||||
"""Simple package with no dependencies"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/c-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
41
var/spack/repos/builtin.mock/packages/callpath/package.py
Normal file
41
var/spack/repos/builtin.mock/packages/callpath/package.py
Normal file
@@ -0,0 +1,41 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Callpath(Package):
|
||||
homepage = "https://github.com/tgamblin/callpath"
|
||||
url = "http://github.com/tgamblin/callpath-1.0.tar.gz"
|
||||
|
||||
version(0.8, 'foobarbaz')
|
||||
version(0.9, 'foobarbaz')
|
||||
version(1.0, 'foobarbaz')
|
||||
|
||||
depends_on("dyninst")
|
||||
depends_on("mpi")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
@@ -0,0 +1,89 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
def check(condition, msg):
|
||||
"""Raise an install error if condition is False."""
|
||||
if not condition:
|
||||
raise InstallError(msg)
|
||||
|
||||
|
||||
class CmakeClient(Package):
|
||||
"""A dumy package that uses cmake."""
|
||||
homepage = 'https://www.example.com'
|
||||
url = 'https://www.example.com/cmake-client-1.0.tar.gz'
|
||||
|
||||
version('1.0', '4cb3ff35b2472aae70f542116d616e63')
|
||||
|
||||
depends_on('cmake')
|
||||
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_cc # Ensure spack module-scope variable is avaiabl
|
||||
check(from_cmake == "from_cmake",
|
||||
"setup_environment couldn't read global set by cmake.")
|
||||
|
||||
check(self.spec['cmake'].link_arg == "test link arg",
|
||||
"link arg on dependency spec not readable from setup_environment.")
|
||||
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dspec):
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
check(from_cmake == "from_cmake",
|
||||
"setup_dependent_environment couldn't read global set by cmake.")
|
||||
|
||||
check(self.spec['cmake'].link_arg == "test link arg",
|
||||
"link arg on dependency spec not readable from setup_dependent_environment.")
|
||||
|
||||
|
||||
def setup_dependent_package(self, module, dspec):
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
check(from_cmake == "from_cmake",
|
||||
"setup_dependent_package couldn't read global set by cmake.")
|
||||
|
||||
check(self.spec['cmake'].link_arg == "test link arg",
|
||||
"link arg on dependency spec not readable from setup_dependent_package.")
|
||||
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# check that cmake is in the global scope.
|
||||
global cmake
|
||||
check(cmake is not None, "No cmake was in environment!")
|
||||
|
||||
# check that which('cmake') returns the right one.
|
||||
cmake = which('cmake')
|
||||
check(cmake.exe[0].startswith(spec['cmake'].prefix.bin),
|
||||
"Wrong cmake was in environment: %s" % cmake)
|
||||
|
||||
check(from_cmake == "from_cmake",
|
||||
"Couldn't read global set by cmake.")
|
||||
|
||||
check(os.environ['from_cmake'] == 'from_cmake',
|
||||
"Couldn't read env var set in envieonmnt by dependency")
|
||||
|
||||
mkdirp(prefix.bin)
|
||||
touch(join_path(prefix.bin, 'dummy'))
|
69
var/spack/repos/builtin.mock/packages/cmake/package.py
Normal file
69
var/spack/repos/builtin.mock/packages/cmake/package.py
Normal file
@@ -0,0 +1,69 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
def check(condition, msg):
|
||||
"""Raise an install error if condition is False."""
|
||||
if not condition:
|
||||
raise InstallError(msg)
|
||||
|
||||
|
||||
class Cmake(Package):
|
||||
"""A dumy package for the cmake build system."""
|
||||
homepage = 'https://www.cmake.org'
|
||||
url = 'https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz'
|
||||
|
||||
version('3.4.3', '4cb3ff35b2472aae70f542116d616e63',
|
||||
url='https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz')
|
||||
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
spack_env.set('for_install', 'for_install')
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dspec):
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
spack_env.set('from_cmake', 'from_cmake')
|
||||
|
||||
|
||||
def setup_dependent_package(self, module, dspec):
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
|
||||
self.spec.from_cmake = "from_cmake"
|
||||
module.from_cmake = "from_cmake"
|
||||
|
||||
self.spec.link_arg = "test link arg"
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(prefix.bin)
|
||||
|
||||
check(os.environ['for_install'] == 'for_install',
|
||||
"Couldn't read env var set in compile envieonmnt")
|
||||
|
||||
cmake_exe = join_path(prefix.bin, 'cmake')
|
||||
touch(cmake_exe)
|
||||
set_executable(cmake_exe)
|
@@ -0,0 +1,36 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class DirectMpich(Package):
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/direct_mpich-1.0.tar.gz"
|
||||
|
||||
version('1.0', 'foobarbaz')
|
||||
|
||||
depends_on('mpich')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
44
var/spack/repos/builtin.mock/packages/dyninst/package.py
Normal file
44
var/spack/repos/builtin.mock/packages/dyninst/package.py
Normal file
@@ -0,0 +1,44 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Dyninst(Package):
|
||||
homepage = "https://paradyn.org"
|
||||
url = "http://www.paradyn.org/release8.1/DyninstAPI-8.1.1.tgz"
|
||||
|
||||
version('8.2', 'cxyzab',
|
||||
url='http://www.paradyn.org/release8.2/DyninstAPI-8.2.tgz')
|
||||
version('8.1.2', 'bcxyza',
|
||||
url='http://www.paradyn.org/release8.1.2/DyninstAPI-8.1.2.tgz')
|
||||
version('8.1.1', 'abcxyz',
|
||||
url='http://www.paradyn.org/release8.1/DyninstAPI-8.1.1.tgz')
|
||||
|
||||
depends_on("libelf")
|
||||
depends_on("libdwarf")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
12
var/spack/repos/builtin.mock/packages/e/package.py
Normal file
12
var/spack/repos/builtin.mock/packages/e/package.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from spack import *
|
||||
|
||||
class E(Package):
|
||||
"""Simple package with no dependencies"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/e-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,34 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://scalability-llnl.github.io/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Externalprereq(Package):
|
||||
homepage = "http://somewhere.com"
|
||||
url = "http://somewhere.com/prereq-1.0.tar.gz"
|
||||
|
||||
version('1.4', 'f1234567890abcdef1234567890abcde')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,37 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://scalability-llnl.github.io/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Externaltest(Package):
|
||||
homepage = "http://somewhere.com"
|
||||
url = "http://somewhere.com/test-1.0.tar.gz"
|
||||
|
||||
version('1.0', '1234567890abcdef1234567890abcdef')
|
||||
|
||||
depends_on('stuff')
|
||||
depends_on('externaltool')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,36 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://scalability-llnl.github.io/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Externaltool(Package):
|
||||
homepage = "http://somewhere.com"
|
||||
url = "http://somewhere.com/tool-1.0.tar.gz"
|
||||
|
||||
version('1.0', '1234567890abcdef1234567890abcdef')
|
||||
|
||||
depends_on('externalprereq')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,37 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://scalability-llnl.github.io/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Externalvirtual(Package):
|
||||
homepage = "http://somewhere.com"
|
||||
url = "http://somewhere.com/stuff-1.0.tar.gz"
|
||||
|
||||
version('1.0', '1234567890abcdef1234567890abcdef')
|
||||
version('2.0', '234567890abcdef1234567890abcdef1')
|
||||
|
||||
provides('stuff')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
34
var/spack/repos/builtin.mock/packages/fake/package.py
Normal file
34
var/spack/repos/builtin.mock/packages/fake/package.py
Normal file
@@ -0,0 +1,34 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Fake(Package):
|
||||
homepage = "http://www.fake-spack-example.org"
|
||||
url = "http://www.fake-spack-example.org/downloads/fake-1.0.tar.gz"
|
||||
|
||||
version('1.0', 'foobarbaz')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
10
var/spack/repos/builtin.mock/packages/git-test/package.py
Normal file
10
var/spack/repos/builtin.mock/packages/git-test/package.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from spack import *
|
||||
|
||||
class GitTest(Package):
|
||||
"""Mock package that uses git for fetching."""
|
||||
homepage = "http://www.git-fetch-example.com"
|
||||
|
||||
version('git', git='to-be-filled-in-by-test')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
10
var/spack/repos/builtin.mock/packages/hg-test/package.py
Normal file
10
var/spack/repos/builtin.mock/packages/hg-test/package.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from spack import *
|
||||
|
||||
class HgTest(Package):
|
||||
"""Test package that does fetching with mercurial."""
|
||||
homepage = "http://www.hg-fetch-example.com"
|
||||
|
||||
version('hg', hg='to-be-filled-in-by-test')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
39
var/spack/repos/builtin.mock/packages/hypre/package.py
Normal file
39
var/spack/repos/builtin.mock/packages/hypre/package.py
Normal file
@@ -0,0 +1,39 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Hypre(Package):
|
||||
"""Hypre is included here as an example of a package that depends on
|
||||
both LAPACK and BLAS."""
|
||||
homepage = "http://www.openblas.net"
|
||||
url = "http://github.com/xianyi/OpenBLAS/archive/v0.2.15.tar.gz"
|
||||
|
||||
version('0.2.15', 'b1190f3d3471685f17cfd1ec1d252ac9')
|
||||
|
||||
depends_on('lapack')
|
||||
depends_on('blas')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,41 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class IndirectMpich(Package):
|
||||
"""Test case for a package that depends on MPI and one of its
|
||||
dependencies requires a *particular version* of MPI.
|
||||
"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/indirect_mpich-1.0.tar.gz"
|
||||
|
||||
version(1.0, 'foobarbaz')
|
||||
|
||||
depends_on('mpi')
|
||||
depends_on('direct_mpich')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
44
var/spack/repos/builtin.mock/packages/libdwarf/package.py
Normal file
44
var/spack/repos/builtin.mock/packages/libdwarf/package.py
Normal file
@@ -0,0 +1,44 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
# Only build certain parts of dwarf because the other ones break.
|
||||
dwarf_dirs = ['libdwarf', 'dwarfdump2']
|
||||
|
||||
class Libdwarf(Package):
|
||||
homepage = "http://www.prevanders.net/dwarf.html"
|
||||
url = "http://www.prevanders.net/libdwarf-20130729.tar.gz"
|
||||
list_url = homepage
|
||||
|
||||
version(20130729, "64b42692e947d5180e162e46c689dfbf")
|
||||
version(20130207, 'foobarbaz')
|
||||
version(20111030, 'foobarbaz')
|
||||
version(20070703, 'foobarbaz')
|
||||
|
||||
depends_on("libelf")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
43
var/spack/repos/builtin.mock/packages/libelf/package.py
Normal file
43
var/spack/repos/builtin.mock/packages/libelf/package.py
Normal file
@@ -0,0 +1,43 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Libelf(Package):
|
||||
homepage = "http://www.mr511.de/software/english.html"
|
||||
url = "http://www.mr511.de/software/libelf-0.8.13.tar.gz"
|
||||
|
||||
version('0.8.13', '4136d7b4c04df68b686570afa26988ac')
|
||||
version('0.8.12', 'e21f8273d9f5f6d43a59878dc274fec7')
|
||||
version('0.8.10', '9db4d36c283d9790d8fa7df1f4d7b4d9')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix,
|
||||
"--enable-shared",
|
||||
"--disable-dependency-tracking",
|
||||
"--disable-debug")
|
||||
make()
|
||||
|
||||
# The mkdir commands in libelf's intsall can fail in parallel
|
||||
make("install", parallel=False)
|
47
var/spack/repos/builtin.mock/packages/mpich/package.py
Normal file
47
var/spack/repos/builtin.mock/packages/mpich/package.py
Normal file
@@ -0,0 +1,47 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Mpich(Package):
|
||||
homepage = "http://www.mpich.org"
|
||||
url = "http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz"
|
||||
list_url = "http://www.mpich.org/static/downloads/"
|
||||
list_depth = 2
|
||||
|
||||
variant('debug', default=False,
|
||||
description="Compile MPICH with debug flags.")
|
||||
|
||||
version('3.0.4', '9c5d5d4fe1e17dd12153f40bc5b6dbc0')
|
||||
version('3.0.3', 'foobarbaz')
|
||||
version('3.0.2', 'foobarbaz')
|
||||
version('3.0.1', 'foobarbaz')
|
||||
version('3.0', 'foobarbaz')
|
||||
version('1.0', 'foobarbas')
|
||||
|
||||
provides('mpi@:3', when='@3:')
|
||||
provides('mpi@:1', when='@:1')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
47
var/spack/repos/builtin.mock/packages/mpich2/package.py
Normal file
47
var/spack/repos/builtin.mock/packages/mpich2/package.py
Normal file
@@ -0,0 +1,47 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Mpich2(Package):
|
||||
homepage = "http://www.mpich.org"
|
||||
url = "http://www.mpich.org/static/downloads/1.5/mpich2-1.5.tar.gz"
|
||||
list_url = "http://www.mpich.org/static/downloads/"
|
||||
list_depth = 2
|
||||
|
||||
version('1.5', '9c5d5d4fe1e17dd12153f40bc5b6dbc0')
|
||||
version('1.4', 'foobarbaz')
|
||||
version('1.3', 'foobarbaz')
|
||||
version('1.2', 'foobarbaz')
|
||||
version('1.1', 'foobarbaz')
|
||||
version('1.0', 'foobarbaz')
|
||||
|
||||
provides('mpi@:2.0')
|
||||
provides('mpi@:2.1', when='@1.1:')
|
||||
provides('mpi@:2.2', when='@1.2:')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
43
var/spack/repos/builtin.mock/packages/mpileaks/package.py
Normal file
43
var/spack/repos/builtin.mock/packages/mpileaks/package.py
Normal file
@@ -0,0 +1,43 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Mpileaks(Package):
|
||||
homepage = "http://www.llnl.gov"
|
||||
url = "http://www.llnl.gov/mpileaks-1.0.tar.gz"
|
||||
|
||||
version(1.0, 'foobarbaz')
|
||||
version(2.1, 'foobarbaz')
|
||||
version(2.2, 'foobarbaz')
|
||||
version(2.3, 'foobarbaz')
|
||||
|
||||
variant('debug', default=False, description='Debug variant')
|
||||
variant('opt', default=False, description='Optimized variant')
|
||||
|
||||
depends_on("mpi")
|
||||
depends_on("callpath")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
143
var/spack/repos/builtin.mock/packages/multimethod/package.py
Normal file
143
var/spack/repos/builtin.mock/packages/multimethod/package.py
Normal file
@@ -0,0 +1,143 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
|
||||
class Multimethod(Package):
|
||||
"""This package is designed for use with Spack's multimethod test.
|
||||
It has a bunch of test cases for the @when decorator that the
|
||||
test uses.
|
||||
"""
|
||||
|
||||
homepage = 'http://www.example.com/'
|
||||
url = 'http://www.example.com/example-1.0.tar.gz'
|
||||
|
||||
#
|
||||
# These functions are only valid for versions 1, 2, and 3.
|
||||
#
|
||||
@when('@1.0')
|
||||
def no_version_2(self):
|
||||
return 1
|
||||
|
||||
@when('@3.0')
|
||||
def no_version_2(self):
|
||||
return 3
|
||||
|
||||
@when('@4.0')
|
||||
def no_version_2(self):
|
||||
return 4
|
||||
|
||||
|
||||
#
|
||||
# These functions overlap, so there is ambiguity, but we'll take
|
||||
# the first one.
|
||||
#
|
||||
@when('@:4')
|
||||
def version_overlap(self):
|
||||
return 1
|
||||
|
||||
@when('@2:')
|
||||
def version_overlap(self):
|
||||
return 2
|
||||
|
||||
|
||||
#
|
||||
# More complicated case with cascading versions.
|
||||
#
|
||||
def mpi_version(self):
|
||||
return 0
|
||||
|
||||
@when('^mpi@3:')
|
||||
def mpi_version(self):
|
||||
return 3
|
||||
|
||||
@when('^mpi@2:')
|
||||
def mpi_version(self):
|
||||
return 2
|
||||
|
||||
@when('^mpi@1:')
|
||||
def mpi_version(self):
|
||||
return 1
|
||||
|
||||
|
||||
#
|
||||
# Use these to test whether the default method is called when no
|
||||
# match is found. This also tests whether we can switch methods
|
||||
# on compilers
|
||||
#
|
||||
def has_a_default(self):
|
||||
return 'default'
|
||||
|
||||
@when('%gcc')
|
||||
def has_a_default(self):
|
||||
return 'gcc'
|
||||
|
||||
@when('%intel')
|
||||
def has_a_default(self):
|
||||
return 'intel'
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Make sure we can switch methods on different architectures
|
||||
#
|
||||
@when('arch=x86_64')
|
||||
def different_by_architecture(self):
|
||||
return 'x86_64'
|
||||
|
||||
@when('arch=ppc64')
|
||||
def different_by_architecture(self):
|
||||
return 'ppc64'
|
||||
|
||||
@when('arch=ppc32')
|
||||
def different_by_architecture(self):
|
||||
return 'ppc32'
|
||||
|
||||
@when('arch=arm64')
|
||||
def different_by_architecture(self):
|
||||
return 'arm64'
|
||||
|
||||
|
||||
#
|
||||
# Make sure we can switch methods on different dependencies
|
||||
#
|
||||
@when('^mpich')
|
||||
def different_by_dep(self):
|
||||
return 'mpich'
|
||||
|
||||
@when('^zmpi')
|
||||
def different_by_dep(self):
|
||||
return 'zmpi'
|
||||
|
||||
|
||||
#
|
||||
# Make sure we can switch on virtual dependencies
|
||||
#
|
||||
def different_by_virtual_dep(self):
|
||||
return 1
|
||||
|
||||
@when('^mpi@2:')
|
||||
def different_by_virtual_dep(self):
|
||||
return 2
|
36
var/spack/repos/builtin.mock/packages/netlib-blas/package.py
Normal file
36
var/spack/repos/builtin.mock/packages/netlib-blas/package.py
Normal file
@@ -0,0 +1,36 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class NetlibBlas(Package):
|
||||
homepage = "http://www.netlib.org/lapack/"
|
||||
url = "http://www.netlib.org/lapack/lapack-3.5.0.tgz"
|
||||
|
||||
version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf')
|
||||
|
||||
provides('blas')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,37 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class NetlibLapack(Package):
|
||||
homepage = "http://www.netlib.org/lapack/"
|
||||
url = "http://www.netlib.org/lapack/lapack-3.5.0.tgz"
|
||||
|
||||
version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf')
|
||||
|
||||
provides('lapack')
|
||||
depends_on('blas')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,38 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class OpenblasWithLapack(Package):
|
||||
"""Dummy version of OpenBLAS that also provides LAPACK, for testing."""
|
||||
homepage = "http://www.openblas.net"
|
||||
url = "http://github.com/xianyi/OpenBLAS/archive/v0.2.15.tar.gz"
|
||||
|
||||
version('0.2.15', 'b1190f3d3471685f17cfd1ec1d252ac9')
|
||||
|
||||
provides('lapack')
|
||||
provides('blas')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
37
var/spack/repos/builtin.mock/packages/openblas/package.py
Normal file
37
var/spack/repos/builtin.mock/packages/openblas/package.py
Normal file
@@ -0,0 +1,37 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Openblas(Package):
|
||||
"""OpenBLAS: An optimized BLAS library"""
|
||||
homepage = "http://www.openblas.net"
|
||||
url = "http://github.com/xianyi/OpenBLAS/archive/v0.2.15.tar.gz"
|
||||
|
||||
version('0.2.15', 'b1190f3d3471685f17cfd1ec1d252ac9')
|
||||
|
||||
provides('blas')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class OptionalDepTest2(Package):
|
||||
"""Depends on the optional-dep-test package"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/optional-dep-test-2-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
variant('odt', default=False)
|
||||
variant('mpi', default=False)
|
||||
|
||||
depends_on('optional-dep-test', when='+odt')
|
||||
depends_on('optional-dep-test+mpi', when='+mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class OptionalDepTest3(Package):
|
||||
"""Depends on the optional-dep-test package"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/optional-dep-test-3-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
variant('var', default=False)
|
||||
|
||||
depends_on('a', when='~var')
|
||||
depends_on('b', when='+var')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,29 @@
|
||||
from spack import *
|
||||
|
||||
class OptionalDepTest(Package):
|
||||
"""Description"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
url = "http://www.example.com/optional_dep_test-1.0.tar.gz"
|
||||
|
||||
version('1.0', '0123456789abcdef0123456789abcdef')
|
||||
version('1.1', '0123456789abcdef0123456789abcdef')
|
||||
|
||||
variant('a', default=False)
|
||||
variant('f', default=False)
|
||||
variant('mpi', default=False)
|
||||
|
||||
depends_on('a', when='+a')
|
||||
depends_on('b', when='@1.1')
|
||||
depends_on('c', when='%intel')
|
||||
depends_on('d', when='%intel@64.1')
|
||||
depends_on('e', when='%clang@34:40')
|
||||
|
||||
depends_on('f', when='+f')
|
||||
depends_on('g', when='^f')
|
||||
depends_on('mpi', when='^g')
|
||||
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
43
var/spack/repos/builtin.mock/packages/python/package.py
Normal file
43
var/spack/repos/builtin.mock/packages/python/package.py
Normal file
@@ -0,0 +1,43 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Python(Package):
|
||||
"""Dummy Python package to demonstrate preferred versions."""
|
||||
homepage = "http://www.python.org"
|
||||
url = "http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz"
|
||||
|
||||
extendable = True
|
||||
|
||||
version('3.5.1', 'be78e48cdfc1a7ad90efff146dce6cfe')
|
||||
version('3.5.0', 'a56c0c0b45d75a0ec9c6dee933c41c36')
|
||||
version('2.7.11', '6b6076ec9e93f05dd63e47eb9c15728b', preferred=True)
|
||||
version('2.7.10', 'd7547558fd673bd9d38e2108c6b42521')
|
||||
version('2.7.9', '5eebcaa0030dc4061156d3429657fb83')
|
||||
version('2.7.8', 'd4bca0159acb0b44a781292b5231936f')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
||||
|
10
var/spack/repos/builtin.mock/packages/svn-test/package.py
Normal file
10
var/spack/repos/builtin.mock/packages/svn-test/package.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from spack import *
|
||||
|
||||
class SvnTest(Package):
|
||||
"""Mock package that uses svn for fetching."""
|
||||
url = "http://www.example.com/svn-test-1.0.tar.gz"
|
||||
|
||||
version('svn', 'to-be-filled-in-by-test')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
@@ -0,0 +1,38 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class TrivialInstallTestPackage(Package):
|
||||
"""This package is a stub with a trivial install method. It allows us
|
||||
to test the install and uninstall logic of spack."""
|
||||
homepage = "http://www.example.com/trivial_install"
|
||||
url = "http://www.unit-test-should-replace-this-url/trivial_install-1.0.tar.gz"
|
||||
|
||||
version('1.0', 'foobarbaz')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix)
|
||||
make()
|
||||
make('install')
|
39
var/spack/repos/builtin.mock/packages/zmpi/package.py
Normal file
39
var/spack/repos/builtin.mock/packages/zmpi/package.py
Normal file
@@ -0,0 +1,39 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Zmpi(Package):
|
||||
"""This is a fake MPI package used to demonstrate virtual package providers
|
||||
with dependencies."""
|
||||
homepage = "http://www.spack-fake-zmpi.org"
|
||||
url = "http://www.spack-fake-zmpi.org/downloads/zmpi-1.0.tar.gz"
|
||||
|
||||
version('1.0', 'foobarbaz')
|
||||
|
||||
provides('mpi@:10.0')
|
||||
depends_on('fake')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
pass
|
2
var/spack/repos/builtin.mock/repo.yaml
Normal file
2
var/spack/repos/builtin.mock/repo.yaml
Normal file
@@ -0,0 +1,2 @@
|
||||
repo:
|
||||
namespace: builtin.mock
|
37
var/spack/repos/builtin/packages/ImageMagick/package.py
Normal file
37
var/spack/repos/builtin/packages/ImageMagick/package.py
Normal file
@@ -0,0 +1,37 @@
|
||||
from spack import *
|
||||
|
||||
class Imagemagick(Package):
|
||||
"""ImageMagick is a image processing library"""
|
||||
homepage = "http://www.imagemagic.org"
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
# ImageMagick does not keep around anything but *-10 versions, so
|
||||
# this URL may change. If you want the bleeding edge, you can
|
||||
# uncomment it and see if it works but you may need to try to
|
||||
# fetch a newer version (-6, -7, -8, -9, etc.) or you can stick
|
||||
# wtih the older, stable, archived -10 versions below.
|
||||
#
|
||||
# TODO: would be nice if spack had a way to recommend avoiding a
|
||||
# TODO: bleeding edge version, but not comment it out.
|
||||
# -------------------------------------------------------------------------
|
||||
# version('6.9.0-6', 'c1bce7396c22995b8bdb56b7797b4a1b',
|
||||
# url="http://www.imagemagick.org/download/ImageMagick-6.9.0-6.tar.bz2")
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
# *-10 versions are archived, so these versions should fetch reliably.
|
||||
# -------------------------------------------------------------------------
|
||||
version('6.8.9-10', 'aa050bf9785e571c956c111377bbf57c',
|
||||
url="http://sourceforge.net/projects/imagemagick/files/old-sources/6.x/6.8/ImageMagick-6.8.9-10.tar.gz/download")
|
||||
|
||||
depends_on('libtool')
|
||||
depends_on('jpeg')
|
||||
depends_on('libpng')
|
||||
depends_on('freetype')
|
||||
depends_on('fontconfig')
|
||||
depends_on('libtiff')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
26
var/spack/repos/builtin/packages/Mitos/package.py
Normal file
26
var/spack/repos/builtin/packages/Mitos/package.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from spack import *
|
||||
|
||||
class Mitos(Package):
|
||||
"""Mitos is a library and a tool for collecting sampled memory
|
||||
performance data to view with MemAxes"""
|
||||
|
||||
homepage = "https://github.com/llnl/Mitos"
|
||||
url = "https://github.com/llnl/Mitos"
|
||||
|
||||
version('0.9.2',
|
||||
git='https://github.com/llnl/Mitos.git',
|
||||
commit='8cb143a2e8c00353ff531a781a9ca0992b0aaa3d')
|
||||
|
||||
version('0.9.1',
|
||||
git='https://github.com/llnl/Mitos.git',
|
||||
tag='v0.9.1')
|
||||
|
||||
depends_on('dyninst@8.2.1:')
|
||||
depends_on('hwloc')
|
||||
depends_on('mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake('..', *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
49
var/spack/repos/builtin/packages/R/package.py
Normal file
49
var/spack/repos/builtin/packages/R/package.py
Normal file
@@ -0,0 +1,49 @@
|
||||
from spack import *
|
||||
|
||||
|
||||
class R(Package):
|
||||
"""
|
||||
R is 'GNU S', a freely available language and environment for statistical computing and graphics which provides a
|
||||
wide variety of statistical and graphical techniques: linear and nonlinear modelling, statistical tests, time series
|
||||
analysis, classification, clustering, etc. Please consult the R project homepage for further information.
|
||||
"""
|
||||
homepage = "https://www.r-project.org"
|
||||
url = "http://cran.cnr.berkeley.edu/src/base/R-3/R-3.1.2.tar.gz"
|
||||
|
||||
version('3.2.3', '1ba3dac113efab69e706902810cc2970')
|
||||
version('3.2.2', '57cef5c2e210a5454da1979562a10e5b')
|
||||
version('3.2.1', 'c2aac8b40f84e08e7f8c9068de9239a3')
|
||||
version('3.2.0', '66fa17ad457d7e618191aa0f52fc402e')
|
||||
version('3.1.3', '53a85b884925aa6b5811dfc361d73fc4')
|
||||
version('3.1.2', '3af29ec06704cbd08d4ba8d69250ae74')
|
||||
|
||||
variant('external-lapack', default=False, description='Links to externally installed BLAS/LAPACK')
|
||||
|
||||
# Virtual dependencies
|
||||
depends_on('blas', when='+external-lapack')
|
||||
depends_on('lapack', when='+external-lapack')
|
||||
|
||||
# Concrete dependencies
|
||||
depends_on('readline')
|
||||
depends_on('ncurses')
|
||||
depends_on('icu')
|
||||
depends_on('glib')
|
||||
depends_on('zlib')
|
||||
depends_on('libtiff')
|
||||
depends_on('jpeg')
|
||||
depends_on('cairo')
|
||||
depends_on('pango')
|
||||
depends_on('freetype')
|
||||
depends_on('tcl')
|
||||
depends_on('tk')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = ['--prefix=%s' % prefix,
|
||||
'--enable-R-shlib',
|
||||
'--enable-BLAS-shlib']
|
||||
if '+external-lapack' in spec:
|
||||
options.extend(['--with-blas', '--with-lapack'])
|
||||
|
||||
configure(*options)
|
||||
make()
|
||||
make('install')
|
20
var/spack/repos/builtin/packages/SAMRAI/no-tool-build.patch
Normal file
20
var/spack/repos/builtin/packages/SAMRAI/no-tool-build.patch
Normal file
@@ -0,0 +1,20 @@
|
||||
--- SAMRAI/Makefile.in 2013-05-31 11:04:32.000000000 -0700
|
||||
+++ SAMRAI/Makefile.in.notools 2014-05-30 10:31:15.135979900 -0700
|
||||
@@ -8,7 +8,7 @@
|
||||
##
|
||||
#########################################################################
|
||||
|
||||
-default: library tools
|
||||
+default: library
|
||||
|
||||
SAMRAI = @top_srcdir@
|
||||
SUBDIR = .
|
||||
@@ -135,7 +135,7 @@
|
||||
done
|
||||
$(MAKE) archive_remove_obj_names
|
||||
|
||||
-install: library tools
|
||||
+install: library
|
||||
$(INSTALL) -d -m 755 $(INSTDIR)/config
|
||||
$(INSTALL) -d -m 755 $(INSTDIR)/lib
|
||||
$(INSTALL) -d -m 755 $(INSTDIR)/bin
|
51
var/spack/repos/builtin/packages/SAMRAI/package.py
Normal file
51
var/spack/repos/builtin/packages/SAMRAI/package.py
Normal file
@@ -0,0 +1,51 @@
|
||||
from spack import *
|
||||
|
||||
class Samrai(Package):
|
||||
"""SAMRAI (Structured Adaptive Mesh Refinement Application Infrastructure)
|
||||
is an object-oriented C++ software library enables exploration of numerical,
|
||||
algorithmic, parallel computing, and software issues associated with applying
|
||||
structured adaptive mesh refinement (SAMR) technology in large-scale parallel
|
||||
application development.
|
||||
"""
|
||||
homepage = "https://computation.llnl.gov/project/SAMRAI/"
|
||||
url = "https://computation.llnl.gov/project/SAMRAI/download/SAMRAI-v3.9.1.tar.gz"
|
||||
list_url = homepage
|
||||
|
||||
version('3.9.1', '232d04d0c995f5abf20d94350befd0b2')
|
||||
version('3.8.0', 'c18fcffa706346bfa5828b36787ce5fe')
|
||||
version('3.7.3', '12d574eacadf8c9a70f1bb4cd1a69df6')
|
||||
version('3.7.2', 'f6a716f171c9fdbf3cb12f71fa6e2737')
|
||||
version('3.6.3-beta', 'ef0510bf2893042daedaca434e5ec6ce')
|
||||
version('3.5.2-beta', 'd072d9d681eeb9ada15ce91bea784274')
|
||||
version('3.5.0-beta', '1ad18a319fc573e12e2b1fbb6f6b0a19')
|
||||
version('3.4.1-beta', '00814cbee2cb76bf8302aff56bbb385b')
|
||||
version('3.3.3-beta', '1db3241d3e1cab913dc310d736c34388')
|
||||
version('3.3.2-beta', 'e598a085dab979498fcb6c110c4dd26c')
|
||||
version('2.4.4', '04fb048ed0efe7c531ac10c81cc5f6ac')
|
||||
|
||||
depends_on("mpi")
|
||||
depends_on("zlib")
|
||||
depends_on("hdf5+mpi")
|
||||
depends_on("boost")
|
||||
|
||||
# don't build tools with gcc
|
||||
patch('no-tool-build.patch', when='%gcc')
|
||||
|
||||
# TODO: currently hard-coded to use openmpi - be careful!
|
||||
def install(self, spec, prefix):
|
||||
configure(
|
||||
"--prefix=%s" % prefix,
|
||||
"--with-CXX=%s" % spec['mpi'].prefix.bin + "/mpic++",
|
||||
"--with-CC=%s" % spec['mpi'].prefix.bin + "/mpicc",
|
||||
"--with-hdf5=%s" % spec['hdf5'].prefix,
|
||||
"--with-boost=%s" % spec['boost'].prefix,
|
||||
"--with-zlib=%s" % spec['zlib'].prefix,
|
||||
"--without-blas",
|
||||
"--without-lapack",
|
||||
"--with-hypre=no",
|
||||
"--with-petsc=no",
|
||||
"--enable-opt",
|
||||
"--disable-debug")
|
||||
|
||||
make()
|
||||
make("install")
|
15
var/spack/repos/builtin/packages/activeharmony/package.py
Normal file
15
var/spack/repos/builtin/packages/activeharmony/package.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class Activeharmony(Package):
|
||||
"""Active Harmony: a framework for auto-tuning (the automated search for values to improve the performance of a target application)."""
|
||||
homepage = "http://www.dyninst.org/harmony"
|
||||
url = "http://www.dyninst.org/sites/default/files/downloads/harmony/ah-4.5.tar.gz"
|
||||
|
||||
version('4.5', 'caee5b864716d376e2c25d739251b2a9')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make("CFLAGS=-O3")
|
||||
make("install", 'PREFIX=%s' % prefix)
|
||||
|
||||
from spack import *
|
||||
|
42
var/spack/repos/builtin/packages/adept-utils/package.py
Normal file
42
var/spack/repos/builtin/packages/adept-utils/package.py
Normal file
@@ -0,0 +1,42 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class AdeptUtils(Package):
|
||||
"""Utility libraries for LLNL performance tools."""
|
||||
|
||||
homepage = "https://github.com/llnl/adept-utils"
|
||||
url = "https://github.com/llnl/adept-utils/archive/v1.0.tar.gz"
|
||||
|
||||
version('1.0.1', '731a310717adcb004d9d195130efee7d')
|
||||
version('1.0', '5c6cd9badce56c945ac8551e34804397')
|
||||
|
||||
depends_on("boost")
|
||||
depends_on("mpi")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cmake(*std_cmake_args)
|
||||
make()
|
||||
make("install")
|
31
var/spack/repos/builtin/packages/apex/package.py
Normal file
31
var/spack/repos/builtin/packages/apex/package.py
Normal file
@@ -0,0 +1,31 @@
|
||||
from spack import *
|
||||
from spack.util.environment import *
|
||||
|
||||
class Apex(Package):
|
||||
homepage = "http://github.com/khuck/xpress-apex"
|
||||
url = "http://github.com/khuck/xpress-apex/archive/v0.1.tar.gz"
|
||||
|
||||
version('0.1', '8b95f0c0313da1575960d3ad69f18e75')
|
||||
|
||||
depends_on("binutils+libiberty")
|
||||
depends_on("boost@1.54:")
|
||||
depends_on("cmake@2.8.12:")
|
||||
depends_on("activeharmony@4.5:")
|
||||
depends_on("ompt-openmp")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
path=get_path("PATH")
|
||||
path.remove(spec["binutils"].prefix.bin)
|
||||
path_set("PATH", path)
|
||||
with working_dir("build", create=True):
|
||||
cmake('-DBOOST_ROOT=%s' % spec['boost'].prefix,
|
||||
'-DUSE_BFD=TRUE',
|
||||
'-DBFD_ROOT=%s' % spec['binutils'].prefix,
|
||||
'-DUSE_ACTIVEHARMONY=TRUE',
|
||||
'-DACTIVEHARMONY_ROOT=%s' % spec['activeharmony'].prefix,
|
||||
'-DUSE_OMPT=TRUE',
|
||||
'-DOMPT_ROOT=%s' % spec['ompt-openmp'].prefix,
|
||||
'..', *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
44
var/spack/repos/builtin/packages/apr-util/package.py
Normal file
44
var/spack/repos/builtin/packages/apr-util/package.py
Normal file
@@ -0,0 +1,44 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class AprUtil(Package):
|
||||
"""Apache Portable Runtime Utility"""
|
||||
homepage = 'https://apr.apache.org/'
|
||||
url = 'http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz'
|
||||
|
||||
version('1.5.4', '866825c04da827c6e5f53daff5569f42')
|
||||
|
||||
depends_on('apr')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
# configure, build, install:
|
||||
options = ['--prefix=%s' % prefix]
|
||||
options.append('--with-apr=%s' % spec['apr'].prefix)
|
||||
|
||||
configure(*options)
|
||||
make()
|
||||
make('install')
|
38
var/spack/repos/builtin/packages/apr/package.py
Normal file
38
var/spack/repos/builtin/packages/apr/package.py
Normal file
@@ -0,0 +1,38 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Apr(Package):
|
||||
"""Apache portable runtime."""
|
||||
homepage = 'https://apr.apache.org/'
|
||||
url = 'http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz'
|
||||
|
||||
version('1.5.2', '98492e965963f852ab29f9e61b2ad700')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = ['--prefix=%s' % prefix]
|
||||
configure(*options)
|
||||
make()
|
||||
make('install')
|
71
var/spack/repos/builtin/packages/arpack-ng/package.py
Normal file
71
var/spack/repos/builtin/packages/arpack-ng/package.py
Normal file
@@ -0,0 +1,71 @@
|
||||
from spack import *
|
||||
|
||||
|
||||
class ArpackNg(Package):
|
||||
"""
|
||||
ARPACK-NG is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.
|
||||
|
||||
Important Features:
|
||||
|
||||
* Reverse Communication Interface.
|
||||
* Single and Double Precision Real Arithmetic Versions for Symmetric,
|
||||
Non-symmetric, Standard or Generalized Problems.
|
||||
* Single and Double Precision Complex Arithmetic Versions for Standard or
|
||||
Generalized Problems.
|
||||
* Routines for Banded Matrices - Standard or Generalized Problems.
|
||||
* Routines for The Singular Value Decomposition.
|
||||
* Example driver routines that may be used as templates to implement numerous
|
||||
Shift-Invert strategies for all problem types, data types and precision.
|
||||
|
||||
This project is a joint project between Debian, Octave and Scilab in order to
|
||||
provide a common and maintained version of arpack.
|
||||
|
||||
Indeed, no single release has been published by Rice university for the last
|
||||
few years and since many software (Octave, Scilab, R, Matlab...) forked it and
|
||||
implemented their own modifications, arpack-ng aims to tackle this by providing
|
||||
a common repository and maintained versions.
|
||||
|
||||
arpack-ng is replacing arpack almost everywhere.
|
||||
"""
|
||||
homepage = 'https://github.com/opencollab/arpack-ng'
|
||||
url = 'https://github.com/opencollab/arpack-ng/archive/3.3.0.tar.gz'
|
||||
|
||||
version('3.3.0', 'ed3648a23f0a868a43ef44c97a21bad5')
|
||||
|
||||
variant('shared', default=True, description='Enables the build of shared libraries')
|
||||
variant('mpi', default=False, description='Activates MPI support')
|
||||
|
||||
# The function pdlamch10 does not set the return variable. This is fixed upstream
|
||||
# see https://github.com/opencollab/arpack-ng/issues/34
|
||||
patch('pdlamch10.patch', when='@3.3:')
|
||||
|
||||
depends_on('blas')
|
||||
depends_on('lapack')
|
||||
depends_on('automake')
|
||||
depends_on('autoconf')
|
||||
depends_on('libtool@2.4.2:')
|
||||
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Apparently autotools are not bootstrapped
|
||||
# TODO: switch to use the CMake build in the next version
|
||||
# rather than bootstrapping.
|
||||
which('libtoolize')()
|
||||
bootstrap = Executable('./bootstrap')
|
||||
|
||||
options = ['--prefix=%s' % prefix]
|
||||
|
||||
if '+mpi' in spec:
|
||||
options.extend([
|
||||
'--enable-mpi',
|
||||
'F77=mpif77' #FIXME: avoid hardcoding MPI wrapper names
|
||||
])
|
||||
|
||||
if '~shared' in spec:
|
||||
options.append('--enable-shared=no')
|
||||
|
||||
bootstrap()
|
||||
configure(*options)
|
||||
make()
|
||||
make('install')
|
15
var/spack/repos/builtin/packages/arpack-ng/pdlamch10.patch
Normal file
15
var/spack/repos/builtin/packages/arpack-ng/pdlamch10.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
diff --git a/PARPACK/SRC/MPI/pdlamch10.f b/PARPACK/SRC/MPI/pdlamch10.f
|
||||
index 6571da9..2882c2e 100644
|
||||
--- a/PARPACK/SRC/MPI/pdlamch10.f
|
||||
+++ b/PARPACK/SRC/MPI/pdlamch10.f
|
||||
@@ -86,8 +86,8 @@
|
||||
TEMP = TEMP1
|
||||
END IF
|
||||
*
|
||||
- PDLAMCH = TEMP
|
||||
+ PDLAMCH10 = TEMP
|
||||
*
|
||||
-* End of PDLAMCH
|
||||
+* End of PDLAMCH10
|
||||
*
|
||||
END
|
41
var/spack/repos/builtin/packages/arpack/package.py
Normal file
41
var/spack/repos/builtin/packages/arpack/package.py
Normal file
@@ -0,0 +1,41 @@
|
||||
from spack import *
|
||||
import os
|
||||
import shutil
|
||||
|
||||
class Arpack(Package):
|
||||
"""A collection of Fortran77 subroutines designed to solve large scale
|
||||
eigenvalue problems.
|
||||
"""
|
||||
homepage = "http://www.caam.rice.edu/software/ARPACK/"
|
||||
url = "http://www.caam.rice.edu/software/ARPACK/SRC/arpack96.tar.gz"
|
||||
|
||||
version('96', 'fffaa970198b285676f4156cebc8626e')
|
||||
|
||||
depends_on('blas')
|
||||
depends_on('lapack')
|
||||
|
||||
def patch(self):
|
||||
# Filter the cray makefile to make a spack one.
|
||||
shutil.move('ARMAKES/ARmake.CRAY', 'ARmake.inc')
|
||||
makefile = FileFilter('ARmake.inc')
|
||||
|
||||
# Be sure to use Spack F77 wrapper
|
||||
makefile.filter('^FC.*', 'FC = f77')
|
||||
makefile.filter('^FFLAGS.*', 'FFLAGS = -O2 -g')
|
||||
|
||||
# Set up some variables.
|
||||
makefile.filter('^PLAT.*', 'PLAT = ')
|
||||
makefile.filter('^home.*', 'home = %s' % os.getcwd())
|
||||
makefile.filter('^BLASdir.*', 'BLASdir = %s' % self.spec['blas'].prefix)
|
||||
makefile.filter('^LAPACKdir.*', 'LAPACKdir = %s' % self.spec['lapack'].prefix)
|
||||
|
||||
# build the library in our own prefix.
|
||||
makefile.filter('^ARPACKLIB.*', 'ARPACKLIB = %s/libarpack.a' % os.getcwd())
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('SRC'):
|
||||
make('all')
|
||||
|
||||
mkdirp(prefix.lib)
|
||||
install('libarpack.a', prefix.lib)
|
18
var/spack/repos/builtin/packages/asciidoc/package.py
Normal file
18
var/spack/repos/builtin/packages/asciidoc/package.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Asciidoc(Package):
|
||||
""" A presentable text document format for writing articles, UNIX man
|
||||
pages and other small to medium sized documents."""
|
||||
homepage = "http://asciidoc.org"
|
||||
url = "http://downloads.sourceforge.net/project/asciidoc/asciidoc/8.6.9/asciidoc-8.6.9.tar.gz"
|
||||
|
||||
version('8.6.9', 'c59018f105be8d022714b826b0be130a')
|
||||
|
||||
depends_on('libxml2')
|
||||
depends_on('libxslt')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
17
var/spack/repos/builtin/packages/astyle/package.py
Normal file
17
var/spack/repos/builtin/packages/astyle/package.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class Astyle(Package):
|
||||
"""A Free, Fast, and Small Automatic Formatter for C, C++, C++/CLI, Objective-C, C#, and Java Source Code."""
|
||||
homepage = "http://astyle.sourceforge.net/"
|
||||
url = "http://downloads.sourceforge.net/project/astyle/astyle/astyle%202.04/astyle_2.04_linux.tar.gz"
|
||||
|
||||
version('2.04', '30b1193a758b0909d06e7ee8dd9627f6')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
with working_dir('src'):
|
||||
make('-f',
|
||||
join_path(self.stage.source_path,'build','clang','Makefile'),
|
||||
parallel=False)
|
||||
install(join_path(self.stage.source_path, 'src','bin','astyle'), self.prefix.bin)
|
18
var/spack/repos/builtin/packages/atk/package.py
Normal file
18
var/spack/repos/builtin/packages/atk/package.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Atk(Package):
|
||||
"""ATK provides the set of accessibility interfaces that are
|
||||
implemented by other toolkits and applications. Using the ATK
|
||||
interfaces, accessibility tools have full access to view and
|
||||
control running applications."""
|
||||
homepage = "https://developer.gnome.org/atk/"
|
||||
url = "http://ftp.gnome.org/pub/gnome/sources/atk/2.14/atk-2.14.0.tar.xz"
|
||||
|
||||
version('2.14.0', 'ecb7ca8469a5650581b1227d78051b8b')
|
||||
|
||||
depends_on("glib")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
60
var/spack/repos/builtin/packages/atlas/package.py
Normal file
60
var/spack/repos/builtin/packages/atlas/package.py
Normal file
@@ -0,0 +1,60 @@
|
||||
from spack import *
|
||||
from spack.util.executable import Executable
|
||||
import os.path
|
||||
|
||||
class Atlas(Package):
|
||||
"""
|
||||
Automatically Tuned Linear Algebra Software, generic shared ATLAS is an approach for the automatic generation and
|
||||
optimization of numerical software. Currently ATLAS supplies optimized versions for the complete set of linear
|
||||
algebra kernels known as the Basic Linear Algebra Subroutines (BLAS), and a subset of the linear algebra routines
|
||||
in the LAPACK library.
|
||||
"""
|
||||
homepage = "http://math-atlas.sourceforge.net/"
|
||||
|
||||
version('3.10.2', 'a4e21f343dec8f22e7415e339f09f6da',
|
||||
url='http://downloads.sourceforge.net/project/math-atlas/Stable/3.10.2/atlas3.10.2.tar.bz2', preferred=True)
|
||||
resource(name='lapack',
|
||||
url='http://www.netlib.org/lapack/lapack-3.5.0.tgz',
|
||||
md5='b1d3e3e425b2e44a06760ff173104bdf',
|
||||
destination='spack-resource-lapack',
|
||||
when='@3:')
|
||||
|
||||
version('3.11.34', '0b6c5389c095c4c8785fd0f724ec6825',
|
||||
url='http://sourceforge.net/projects/math-atlas/files/Developer%20%28unstable%29/3.11.34/atlas3.11.34.tar.bz2/download')
|
||||
|
||||
variant('shared', default=True, description='Builds shared library')
|
||||
|
||||
provides('blas')
|
||||
provides('lapack')
|
||||
|
||||
parallel = False
|
||||
|
||||
def patch(self):
|
||||
# Disable thread check. LLNL's environment does not allow
|
||||
# disabling of CPU throttling in a way that ATLAS actually
|
||||
# understands.
|
||||
filter_file(r'^\s+if \(thrchk\) exit\(1\);', 'if (0) exit(1);',
|
||||
'CONFIG/src/config.c')
|
||||
# TODO: investigate a better way to add the check back in
|
||||
# TODO: using, say, MSRs. Or move this to a variant.
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
options = []
|
||||
if '+shared' in spec:
|
||||
options.append('--shared')
|
||||
|
||||
# Lapack resource
|
||||
lapack_stage = self.stage[1]
|
||||
lapack_tarfile = os.path.basename(lapack_stage.fetcher.url)
|
||||
lapack_tarfile_path = join_path(lapack_stage.path, lapack_tarfile)
|
||||
options.append('--with-netlib-lapack-tarfile=%s' % lapack_tarfile_path)
|
||||
|
||||
with working_dir('spack-build', create=True):
|
||||
configure = Executable('../configure')
|
||||
configure('--prefix=%s' % prefix, *options)
|
||||
make()
|
||||
make('check')
|
||||
make('ptcheck')
|
||||
make('time')
|
||||
make("install")
|
16
var/spack/repos/builtin/packages/atop/package.py
Normal file
16
var/spack/repos/builtin/packages/atop/package.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class Atop(Package):
|
||||
"""Atop is an ASCII full-screen performance monitor for Linux"""
|
||||
homepage = "http://www.atoptool.nl/index.php"
|
||||
url = "http://www.atoptool.nl/download/atop-2.2-3.tar.gz"
|
||||
|
||||
version('2.2-3', '034dc1544f2ec4e4d2c739d320dc326d')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make()
|
||||
mkdirp(prefix.bin)
|
||||
install("atop", join_path(prefix.bin, "atop"))
|
||||
mkdirp(join_path(prefix.man, "man1"))
|
||||
install(join_path("man", "atop.1"),
|
||||
join_path(prefix.man, "man1", "atop.1"))
|
15
var/spack/repos/builtin/packages/autoconf/package.py
Normal file
15
var/spack/repos/builtin/packages/autoconf/package.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class Autoconf(Package):
|
||||
"""Autoconf -- system configuration part of autotools"""
|
||||
homepage = "https://www.gnu.org/software/autoconf/"
|
||||
url = "http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz"
|
||||
|
||||
version('2.69', '82d05e03b93e45f5a39b828dc9c6c29b')
|
||||
version('2.62', '6c1f3b3734999035d77da5024aab4fbd')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
51
var/spack/repos/builtin/packages/automaded/package.py
Normal file
51
var/spack/repos/builtin/packages/automaded/package.py
Normal file
@@ -0,0 +1,51 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Automaded(Package):
|
||||
"""AutomaDeD (Automata-based Debugging for Dissimilar parallel
|
||||
tasks) is a tool for automatic diagnosis of performance and
|
||||
correctness problems in MPI applications. It creates
|
||||
control-flow models of each MPI process and, when a failure
|
||||
occurs, these models are leveraged to find the origin of
|
||||
problems automatically. MPI calls are intercepted (using
|
||||
wrappers) to create the models. When an MPI application hangs,
|
||||
AutomaDeD creates a progress-dependence graph that helps
|
||||
finding the process (or group of processes) that caused the hang.
|
||||
"""
|
||||
|
||||
homepage = "https://github.com/llnl/AutomaDeD"
|
||||
url = "https://github.com/llnl/AutomaDeD/archive/v1.0.tar.gz"
|
||||
|
||||
version('1.0', '16a3d4def2c4c77d0bc4b21de8b3ab03')
|
||||
|
||||
depends_on('mpi')
|
||||
depends_on('boost')
|
||||
depends_on('callpath')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cmake("-DSTATE_TRACKER_WITH_CALLPATH=ON", *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
18
var/spack/repos/builtin/packages/automake/package.py
Normal file
18
var/spack/repos/builtin/packages/automake/package.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Automake(Package):
|
||||
"""Automake -- make file builder part of autotools"""
|
||||
homepage = "http://www.gnu.org/software/automake/"
|
||||
url = "http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gz"
|
||||
|
||||
version('1.15', '716946a105ca228ab545fc37a70df3a3')
|
||||
version('1.14.1', 'd052a3e884631b9c7892f2efce542d75')
|
||||
version('1.11.6', '0286dc30295b62985ca51919202ecfcc')
|
||||
|
||||
depends_on('autoconf')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
20
var/spack/repos/builtin/packages/bash/package.py
Normal file
20
var/spack/repos/builtin/packages/bash/package.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from spack import *
|
||||
|
||||
class Bash(Package):
|
||||
"""The GNU Project's Bourne Again SHell."""
|
||||
|
||||
homepage = "https://www.gnu.org/software/bash/"
|
||||
url = "ftp://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz"
|
||||
|
||||
version('4.3', '81348932d5da294953e15d4814c74dd1')
|
||||
|
||||
depends_on('readline')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix,
|
||||
'--with-curses',
|
||||
'--with-installed-readline=%s' % spec['readline'].prefix)
|
||||
|
||||
make()
|
||||
make("tests")
|
||||
make("install")
|
17
var/spack/repos/builtin/packages/bear/package.py
Normal file
17
var/spack/repos/builtin/packages/bear/package.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Bear(Package):
|
||||
"""Bear is a tool that generates a compilation database for clang tooling from non-cmake build systems."""
|
||||
homepage = "https://github.com/rizsotto/Bear"
|
||||
url = "https://github.com/rizsotto/Bear/archive/2.0.4.tar.gz"
|
||||
|
||||
version('2.0.4', 'fd8afb5e8e18f8737ba06f90bd77d011')
|
||||
|
||||
depends_on("cmake")
|
||||
depends_on("python")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cmake('.', *std_cmake_args)
|
||||
|
||||
make("all")
|
||||
make("install")
|
27
var/spack/repos/builtin/packages/bib2xhtml/package.py
Normal file
27
var/spack/repos/builtin/packages/bib2xhtml/package.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from spack import *
|
||||
from glob import glob
|
||||
|
||||
class Bib2xhtml(Package):
|
||||
"""bib2xhtml is a program that converts BibTeX files into HTML."""
|
||||
homepage = "http://www.spinellis.gr/sw/textproc/bib2xhtml/"
|
||||
url='http://www.spinellis.gr/sw/textproc/bib2xhtml/bib2xhtml-v3.0-15-gf506.tar.gz'
|
||||
|
||||
version('3.0-15-gf506', 'a26ba02fe0053bbbf2277bdf0acf8645')
|
||||
|
||||
def url_for_version(self, v):
|
||||
return ('http://www.spinellis.gr/sw/textproc/bib2xhtml/bib2xhtml-v%s.tar.gz' % v)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Add the bst include files to the install directory
|
||||
bst_include = join_path(prefix.share, 'bib2xhtml')
|
||||
mkdirp(bst_include)
|
||||
for bstfile in glob('html-*bst'):
|
||||
install(bstfile, bst_include)
|
||||
|
||||
# Install the script and point it at the user's favorite perl
|
||||
# and the bst include directory.
|
||||
mkdirp(prefix.bin)
|
||||
install('bib2xhtml', prefix.bin)
|
||||
filter_file(r'#!/usr/bin/perl',
|
||||
'#!/usr/bin/env BSTINPUTS=%s perl' % bst_include,
|
||||
join_path(prefix.bin, 'bib2xhtml'))
|
@@ -0,0 +1,52 @@
|
||||
--- binutils-2.24/libiberty/Makefile.in 2013-11-04 10:33:40.000000000 -0500
|
||||
+++ binutils-2.24-fixes/libiberty/Makefile.in 2014-10-17 16:22:31.413655000 -0400
|
||||
@@ -66,6 +66,7 @@
|
||||
MAKEOVERRIDES =
|
||||
|
||||
TARGETLIB = ./libiberty.a
|
||||
+TARGETLIBPIC = ./libiberty_pic.a
|
||||
TESTLIB = ./testlib.a
|
||||
|
||||
LIBOBJS = @LIBOBJS@
|
||||
@@ -355,27 +356,27 @@
|
||||
# since it will be passed the multilib flags.
|
||||
MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory`
|
||||
install_to_libdir: all
|
||||
- if test -n "${target_header_dir}"; then \
|
||||
- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
|
||||
- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \
|
||||
- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \
|
||||
- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \
|
||||
- case "${target_header_dir}" in \
|
||||
- /*) thd=${target_header_dir};; \
|
||||
- *) thd=${includedir}/${target_header_dir};; \
|
||||
- esac; \
|
||||
- ${mkinstalldirs} $(DESTDIR)$${thd}; \
|
||||
- for h in ${INSTALLED_HEADERS}; do \
|
||||
- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \
|
||||
- done; \
|
||||
- fi
|
||||
+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
|
||||
+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \
|
||||
+ $(INSTALL_DATA) pic/$(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC)n; \
|
||||
+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \
|
||||
+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIBPIC)n ;$(RANLIB) $(TARGETLIBPIC)n ); \
|
||||
+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \
|
||||
+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC); \
|
||||
+ ${mkinstalldirs} $(DESTDIR)$${includedir}; \
|
||||
+ for h in ${INSTALLED_HEADERS}; do \
|
||||
+ ${INSTALL_DATA} $$h $(DESTDIR)$${includedir}; \
|
||||
+ done;
|
||||
@$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
|
||||
|
||||
install_to_tooldir: all
|
||||
${mkinstalldirs} $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)
|
||||
$(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)n
|
||||
+ $(INSTALL_DATA) pic/$(TARGETLIB) $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)n
|
||||
( cd $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n; $(RANLIB) $(TARGETLIB)n )
|
||||
+ ( cd $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR) ; chmod 644 $(TARGETLIBPIC)n; $(RANLIB) $(TARGETLIBPIC)n )
|
||||
mv -f $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)
|
||||
+ mv -f $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)n $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)
|
||||
@$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
|
||||
|
||||
# required-list was used when building a shared bfd/opcodes/libiberty
|
26
var/spack/repos/builtin/packages/binutils/cr16.patch
Normal file
26
var/spack/repos/builtin/packages/binutils/cr16.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
--- old/opcodes/cr16-dis.c 2014-10-14 03:32:04.000000000 -0400
|
||||
+++ new/opcodes/cr16-dis.c 2016-01-14 21:54:26.000000000 -0500
|
||||
@@ -78,7 +78,7 @@
|
||||
REG_ARG_TYPE;
|
||||
|
||||
/* Current opcode table entry we're disassembling. */
|
||||
-const inst *instruction;
|
||||
+extern const inst *instruction;
|
||||
/* Current instruction we're disassembling. */
|
||||
ins cr16_currInsn;
|
||||
/* The current instruction is read into 3 consecutive words. */
|
||||
@@ -86,12 +86,12 @@
|
||||
/* Contains all words in appropriate order. */
|
||||
ULONGLONG cr16_allWords;
|
||||
/* Holds the current processed argument number. */
|
||||
-int processing_argument_number;
|
||||
+extern int processing_argument_number;
|
||||
/* Nonzero means a IMM4 instruction. */
|
||||
int imm4flag;
|
||||
/* Nonzero means the instruction's original size is
|
||||
incremented (escape sequence is used). */
|
||||
-int size_changed;
|
||||
+extern int size_changed;
|
||||
|
||||
|
||||
/* Print the constant expression length. */
|
47
var/spack/repos/builtin/packages/binutils/package.py
Normal file
47
var/spack/repos/builtin/packages/binutils/package.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from spack import *
|
||||
|
||||
class Binutils(Package):
|
||||
"""GNU binutils, which contain the linker, assembler, objdump and others"""
|
||||
homepage = "http://www.gnu.org/software/binutils/"
|
||||
|
||||
url="https://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.bz2"
|
||||
|
||||
version('2.26', '64146a0faa3b411ba774f47d41de239f')
|
||||
version('2.25', 'd9f3303f802a5b6b0bb73a335ab89d66')
|
||||
version('2.24', 'e0f71a7b2ddab0f8612336ac81d9636b')
|
||||
version('2.23.2', '4f8fa651e35ef262edc01d60fb45702e')
|
||||
version('2.20.1', '2b9dc8f2b7dbd5ec5992c6e29de0b764')
|
||||
|
||||
depends_on('m4')
|
||||
depends_on('flex')
|
||||
depends_on('bison')
|
||||
|
||||
# Add a patch that creates binutils libiberty_pic.a which is preferred by OpenSpeedShop and cbtf-krell
|
||||
variant('krellpatch', default=False, description="build with openspeedshop based patch.")
|
||||
variant('gold', default=True, description="build the gold linker")
|
||||
patch('binutilskrell-2.24.patch', when='@2.24+krellpatch')
|
||||
|
||||
patch('cr16.patch')
|
||||
|
||||
variant('libiberty', default=False, description='Also install libiberty.')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure_args = [
|
||||
'--prefix=%s' % prefix,
|
||||
'--disable-dependency-tracking',
|
||||
'--enable-interwork',
|
||||
'--enable-multilib',
|
||||
'--enable-shared',
|
||||
'--enable-64-bit-bfd',
|
||||
'--enable-targets=all',
|
||||
'--with-sysroot=/']
|
||||
|
||||
if '+gold' in spec:
|
||||
configure_args.append('--enable-gold')
|
||||
|
||||
if '+libiberty' in spec:
|
||||
configure_args.append('--enable-install-libiberty')
|
||||
|
||||
configure(*configure_args)
|
||||
make()
|
||||
make("install")
|
17
var/spack/repos/builtin/packages/bison/package.py
Normal file
17
var/spack/repos/builtin/packages/bison/package.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Bison(Package):
|
||||
"""Bison is a general-purpose parser generator that converts
|
||||
an annotated context-free grammar into a deterministic LR or
|
||||
generalized LR (GLR) parser employing LALR(1) parser tables."""
|
||||
|
||||
homepage = "http://www.gnu.org/software/bison/"
|
||||
url = "http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz"
|
||||
|
||||
version('3.0.4', 'a586e11cd4aff49c3ff6d3b6a4c9ccf8')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
15
var/spack/repos/builtin/packages/blitz/package.py
Normal file
15
var/spack/repos/builtin/packages/blitz/package.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class Blitz(Package):
|
||||
"""N-dimensional arrays for C++"""
|
||||
homepage = "http://github.com/blitzpp/blitz"
|
||||
url = "https://github.com/blitzpp/blitz/tarball/1.0.0"
|
||||
|
||||
version('1.0.0', '9f040b9827fe22228a892603671a77af')
|
||||
|
||||
# No dependencies
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix)
|
||||
make()
|
||||
make("install")
|
34
var/spack/repos/builtin/packages/boost/boost_11856.patch
Normal file
34
var/spack/repos/builtin/packages/boost/boost_11856.patch
Normal file
@@ -0,0 +1,34 @@
|
||||
--- a/libs/container/src/pool_resource.cpp 2015-11-06 12:49:55.000000000 -0800
|
||||
+++ b/libs/container/src/pool_resource.cpp 2015-12-22 07:54:36.202131121 -0800
|
||||
@@ -32,11 +32,11 @@
|
||||
class pool_data_t
|
||||
: public block_slist_base<>
|
||||
{
|
||||
- typedef block_slist_base<> block_slist_base;
|
||||
+ typedef block_slist_base<> block_slist_base_t;
|
||||
|
||||
public:
|
||||
explicit pool_data_t(std::size_t initial_blocks_per_chunk)
|
||||
- : block_slist_base(), next_blocks_per_chunk(initial_blocks_per_chunk)
|
||||
+ : block_slist_base_t(), next_blocks_per_chunk(initial_blocks_per_chunk)
|
||||
{ slist_algo::init_header(&free_slist); }
|
||||
|
||||
void *allocate_block() BOOST_NOEXCEPT
|
||||
@@ -59,7 +59,7 @@
|
||||
void release(memory_resource &upstream)
|
||||
{
|
||||
slist_algo::init_header(&free_slist);
|
||||
- this->block_slist_base::release(upstream);
|
||||
+ this->block_slist_base_t::release(upstream);
|
||||
next_blocks_per_chunk = pool_options_minimum_max_blocks_per_chunk;
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
|
||||
//Minimum block size is at least max_align, so all pools allocate sizes that are multiple of max_align,
|
||||
//meaning that all blocks are max_align-aligned.
|
||||
- char *p = static_cast<char *>(block_slist_base::allocate(blocks_per_chunk*pool_block, mr));
|
||||
+ char *p = static_cast<char *>(block_slist_base_t::allocate(blocks_per_chunk*pool_block, mr));
|
||||
|
||||
//Create header types. This is no-throw
|
||||
for(std::size_t i = 0, max = blocks_per_chunk; i != max; ++i){
|
239
var/spack/repos/builtin/packages/boost/package.py
Normal file
239
var/spack/repos/builtin/packages/boost/package.py
Normal file
@@ -0,0 +1,239 @@
|
||||
from spack import *
|
||||
import spack
|
||||
import sys
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
class Boost(Package):
|
||||
"""Boost provides free peer-reviewed portable C++ source
|
||||
libraries, emphasizing libraries that work well with the C++
|
||||
Standard Library.
|
||||
|
||||
Boost libraries are intended to be widely useful, and usable
|
||||
across a broad spectrum of applications. The Boost license
|
||||
encourages both commercial and non-commercial use.
|
||||
"""
|
||||
homepage = "http://www.boost.org"
|
||||
url = "http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2"
|
||||
list_url = "http://sourceforge.net/projects/boost/files/boost/"
|
||||
list_depth = 2
|
||||
|
||||
version('1.60.0', '65a840e1a0b13a558ff19eeb2c4f0cbe')
|
||||
version('1.59.0', '6aa9a5c6a4ca1016edd0ed1178e3cb87')
|
||||
version('1.58.0', 'b8839650e61e9c1c0a89f371dd475546')
|
||||
version('1.57.0', '1be49befbdd9a5ce9def2983ba3e7b76')
|
||||
version('1.56.0', 'a744cf167b05d72335f27c88115f211d')
|
||||
version('1.55.0', 'd6eef4b4cacb2183f2bf265a5a03a354')
|
||||
version('1.54.0', '15cb8c0803064faef0c4ddf5bc5ca279')
|
||||
version('1.53.0', 'a00d22605d5dbcfb4c9936a9b35bc4c2')
|
||||
version('1.52.0', '3a855e0f919107e0ca4de4d84ad3f750')
|
||||
version('1.51.0', '4b6bd483b692fd138aef84ed2c8eb679')
|
||||
version('1.50.0', '52dd00be775e689f55a987baebccc462')
|
||||
version('1.49.0', '0d202cb811f934282dea64856a175698')
|
||||
version('1.48.0', 'd1e9a7a7f532bb031a3c175d86688d95')
|
||||
version('1.47.0', 'a2dc343f7bc7f83f8941e47ed4a18200')
|
||||
version('1.46.1', '7375679575f4c8db605d426fc721d506')
|
||||
version('1.46.0', '37b12f1702319b73876b0097982087e0')
|
||||
version('1.45.0', 'd405c606354789d0426bc07bea617e58')
|
||||
version('1.44.0', 'f02578f5218f217a9f20e9c30e119c6a')
|
||||
version('1.43.0', 'dd49767bfb726b0c774f7db0cef91ed1')
|
||||
version('1.42.0', '7bf3b4eb841b62ffb0ade2b82218ebe6')
|
||||
version('1.41.0', '8bb65e133907db727a2a825c5400d0a6')
|
||||
version('1.40.0', 'ec3875caeac8c52c7c129802a8483bd7')
|
||||
version('1.39.0', 'a17281fd88c48e0d866e1a12deecbcc0')
|
||||
version('1.38.0', '5eca2116d39d61382b8f8235915cb267')
|
||||
version('1.37.0', '8d9f990bfb7e83769fa5f1d6f065bc92')
|
||||
version('1.36.0', '328bfec66c312150e4c2a78dcecb504b')
|
||||
version('1.35.0', 'dce952a7214e72d6597516bcac84048b')
|
||||
version('1.34.1', '2d938467e8a448a2c9763e0a9f8ca7e5')
|
||||
version('1.34.0', 'ed5b9291ffad776f8757a916e1726ad0')
|
||||
|
||||
default_install_libs = set(['atomic',
|
||||
'chrono',
|
||||
'date_time',
|
||||
'filesystem',
|
||||
'graph',
|
||||
'iostreams',
|
||||
'locale',
|
||||
'log',
|
||||
'math',
|
||||
'program_options',
|
||||
'random',
|
||||
'regex',
|
||||
'serialization',
|
||||
'signals',
|
||||
'system',
|
||||
'test',
|
||||
'thread',
|
||||
'wave'])
|
||||
|
||||
# mpi/python are not installed by default because they pull in many
|
||||
# dependencies and/or because there is a great deal of customization
|
||||
# possible (and it would be difficult to choose sensible defaults)
|
||||
default_noinstall_libs = set(['mpi', 'python'])
|
||||
|
||||
all_libs = default_install_libs | default_noinstall_libs
|
||||
|
||||
for lib in all_libs:
|
||||
variant(lib, default=(lib not in default_noinstall_libs),
|
||||
description="Compile with {0} library".format(lib))
|
||||
|
||||
variant('debug', default=False, description='Switch to the debug version of Boost')
|
||||
variant('shared', default=True, description="Additionally build shared libraries")
|
||||
variant('multithreaded', default=True, description="Build multi-threaded versions of libraries")
|
||||
variant('singlethreaded', default=True, description="Build single-threaded versions of libraries")
|
||||
variant('icu_support', default=False, description="Include ICU support (for regex/locale libraries)")
|
||||
|
||||
depends_on('icu', when='+icu_support')
|
||||
depends_on('python', when='+python')
|
||||
depends_on('mpi', when='+mpi')
|
||||
depends_on('bzip2', when='+iostreams')
|
||||
depends_on('zlib', when='+iostreams')
|
||||
|
||||
# Patch fix from https://svn.boost.org/trac/boost/ticket/11856
|
||||
patch('boost_11856.patch', when='@1.60.0%gcc@4.4.7')
|
||||
|
||||
def url_for_version(self, version):
|
||||
"""Handle Boost's weird URLs, which write the version two different ways."""
|
||||
parts = [str(p) for p in Version(version)]
|
||||
dots = ".".join(parts)
|
||||
underscores = "_".join(parts)
|
||||
return "http://downloads.sourceforge.net/project/boost/boost/%s/boost_%s.tar.bz2" % (
|
||||
dots, underscores)
|
||||
|
||||
def determine_toolset(self, spec):
|
||||
if spec.satisfies("=darwin-x86_64"):
|
||||
return 'darwin'
|
||||
|
||||
toolsets = {'g++': 'gcc',
|
||||
'icpc': 'intel',
|
||||
'clang++': 'clang'}
|
||||
|
||||
for cc, toolset in toolsets.iteritems():
|
||||
if cc in self.compiler.cxx_names:
|
||||
return toolset
|
||||
|
||||
# fallback to gcc if no toolset found
|
||||
return 'gcc'
|
||||
|
||||
def determine_bootstrap_options(self, spec, withLibs, options):
|
||||
boostToolsetId = self.determine_toolset(spec)
|
||||
options.append('--with-toolset=%s' % boostToolsetId)
|
||||
options.append("--with-libraries=%s" % ','.join(withLibs))
|
||||
|
||||
if '+python' in spec:
|
||||
options.append('--with-python=%s' %
|
||||
join_path(spec['python'].prefix.bin, 'python'))
|
||||
|
||||
with open('user-config.jam', 'w') as f:
|
||||
compiler_wrapper = join_path(spack.build_env_path, 'c++')
|
||||
f.write("using {0} : : {1} ;\n".format(boostToolsetId,
|
||||
compiler_wrapper))
|
||||
|
||||
if '+mpi' in spec:
|
||||
f.write('using mpi : %s ;\n' %
|
||||
join_path(spec['mpi'].prefix.bin, 'mpicxx'))
|
||||
if '+python' in spec:
|
||||
f.write('using python : %s : %s ;\n' %
|
||||
(spec['python'].version,
|
||||
join_path(spec['python'].prefix.bin, 'python')))
|
||||
|
||||
def determine_b2_options(self, spec, options):
|
||||
if '+debug' in spec:
|
||||
options.append('variant=debug')
|
||||
else:
|
||||
options.append('variant=release')
|
||||
|
||||
if '+icu_support' in spec:
|
||||
options.extend(['-s', 'ICU_PATH=%s' % spec['icu'].prefix])
|
||||
|
||||
if '+iostreams' in spec:
|
||||
options.extend([
|
||||
'-s', 'BZIP2_INCLUDE=%s' % spec['bzip2'].prefix.include,
|
||||
'-s', 'BZIP2_LIBPATH=%s' % spec['bzip2'].prefix.lib,
|
||||
'-s', 'ZLIB_INCLUDE=%s' % spec['zlib'].prefix.include,
|
||||
'-s', 'ZLIB_LIBPATH=%s' % spec['zlib'].prefix.lib,
|
||||
])
|
||||
|
||||
linkTypes = ['static']
|
||||
if '+shared' in spec:
|
||||
linkTypes.append('shared')
|
||||
|
||||
threadingOpts = []
|
||||
if '+multithreaded' in spec:
|
||||
threadingOpts.append('multi')
|
||||
if '+singlethreaded' in spec:
|
||||
threadingOpts.append('single')
|
||||
if not threadingOpts:
|
||||
raise RuntimeError("At least one of {singlethreaded, multithreaded} must be enabled")
|
||||
|
||||
options.extend([
|
||||
'toolset=%s' % self.determine_toolset(spec),
|
||||
'link=%s' % ','.join(linkTypes),
|
||||
'--layout=tagged'])
|
||||
|
||||
return threadingOpts
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# On Darwin, Boost expects the Darwin libtool. However, one of the
|
||||
# dependencies may have pulled in Spack's GNU libtool, and these two are
|
||||
# not compatible. We thus create a symlink to Darwin's libtool and add
|
||||
# it at the beginning of PATH.
|
||||
if sys.platform == 'darwin':
|
||||
newdir = os.path.abspath('darwin-libtool')
|
||||
mkdirp(newdir)
|
||||
force_symlink('/usr/bin/libtool', join_path(newdir, 'libtool'))
|
||||
env['PATH'] = newdir + ':' + env['PATH']
|
||||
|
||||
withLibs = list()
|
||||
for lib in Boost.all_libs:
|
||||
if "+{0}".format(lib) in spec:
|
||||
withLibs.append(lib)
|
||||
if not withLibs:
|
||||
# if no libraries are specified for compilation, then you dont have
|
||||
# to configure/build anything, just copy over to the prefix directory.
|
||||
src = join_path(self.stage.source_path, 'boost')
|
||||
mkdirp(join_path(prefix, 'include'))
|
||||
dst = join_path(prefix, 'include', 'boost')
|
||||
install_tree(src, dst)
|
||||
return
|
||||
|
||||
# Remove libraries that the release version does not support
|
||||
if not spec.satisfies('@1.54.0:'):
|
||||
withLibs.remove('log')
|
||||
if not spec.satisfies('@1.53.0:'):
|
||||
withLibs.remove('atomic')
|
||||
if not spec.satisfies('@1.48.0:'):
|
||||
withLibs.remove('locale')
|
||||
if not spec.satisfies('@1.47.0:'):
|
||||
withLibs.remove('chrono')
|
||||
if not spec.satisfies('@1.43.0:'):
|
||||
withLibs.remove('random')
|
||||
|
||||
# to make Boost find the user-config.jam
|
||||
env['BOOST_BUILD_PATH'] = './'
|
||||
|
||||
bootstrap = Executable('./bootstrap.sh')
|
||||
|
||||
bootstrap_options = ['--prefix=%s' % prefix]
|
||||
self.determine_bootstrap_options(spec, withLibs, bootstrap_options)
|
||||
|
||||
bootstrap(*bootstrap_options)
|
||||
|
||||
# b2 used to be called bjam, before 1.47 (sigh)
|
||||
b2name = './b2' if spec.satisfies('@1.47:') else './bjam'
|
||||
|
||||
b2 = Executable(b2name)
|
||||
b2_options = ['-j', '%s' % make_jobs]
|
||||
|
||||
threadingOpts = self.determine_b2_options(spec, b2_options)
|
||||
|
||||
# In theory it could be done on one call but it fails on
|
||||
# Boost.MPI if the threading options are not separated.
|
||||
for threadingOpt in threadingOpts:
|
||||
b2('install', 'threading=%s' % threadingOpt, *b2_options)
|
||||
|
||||
# The shared libraries are not installed correctly on Darwin; correct this
|
||||
if (sys.platform == 'darwin') and ('+shared' in spec):
|
||||
fix_darwin_install_name(prefix.lib)
|
16
var/spack/repos/builtin/packages/bowtie2/bowtie2-2.5.patch
Normal file
16
var/spack/repos/builtin/packages/bowtie2/bowtie2-2.5.patch
Normal file
@@ -0,0 +1,16 @@
|
||||
--- Makefile 2015-02-26 10:50:00.000000000 -0800
|
||||
+++ Makefile.new 2015-07-29 18:03:59.891357399 -0700
|
||||
@@ -22,10 +22,10 @@
|
||||
#
|
||||
|
||||
INC =
|
||||
-GCC_PREFIX = $(shell dirname `which gcc`)
|
||||
+GCC_PREFIX =
|
||||
GCC_SUFFIX =
|
||||
-CC = $(GCC_PREFIX)/gcc$(GCC_SUFFIX)
|
||||
-CPP = $(GCC_PREFIX)/g++$(GCC_SUFFIX)
|
||||
+CC = cc
|
||||
+CPP = c++
|
||||
CXX = $(CPP)
|
||||
HEADERS = $(wildcard *.h)
|
||||
BOWTIE_MM = 1
|
24
var/spack/repos/builtin/packages/bowtie2/package.py
Normal file
24
var/spack/repos/builtin/packages/bowtie2/package.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from spack import *
|
||||
from glob import glob
|
||||
class Bowtie2(Package):
|
||||
"""Description"""
|
||||
homepage = "bowtie-bio.sourceforge.net/bowtie2/index.shtml"
|
||||
version('2.2.5','51fa97a862d248d7ee660efc1147c75f', url = "http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/2.2.5/bowtie2-2.2.5-source.zip")
|
||||
|
||||
patch('bowtie2-2.5.patch',when='@2.2.5', level=0)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make()
|
||||
mkdirp(prefix.bin)
|
||||
for bow in glob("bowtie2*"):
|
||||
install(bow, prefix.bin)
|
||||
# install('bowtie2',prefix.bin)
|
||||
# install('bowtie2-align-l',prefix.bin)
|
||||
# install('bowtie2-align-s',prefix.bin)
|
||||
# install('bowtie2-build',prefix.bin)
|
||||
# install('bowtie2-build-l',prefix.bin)
|
||||
# install('bowtie2-build-s',prefix.bin)
|
||||
# install('bowtie2-inspect',prefix.bin)
|
||||
# install('bowtie2-inspect-l',prefix.bin)
|
||||
# install('bowtie2-inspect-s',prefix.bin)
|
||||
|
25
var/spack/repos/builtin/packages/boxlib/package.py
Normal file
25
var/spack/repos/builtin/packages/boxlib/package.py
Normal file
@@ -0,0 +1,25 @@
|
||||
from spack import *
|
||||
|
||||
class Boxlib(Package):
|
||||
"""BoxLib, a software framework for massively parallel
|
||||
block-structured adaptive mesh refinement (AMR) codes."""
|
||||
|
||||
homepage = "https://ccse.lbl.gov/BoxLib/"
|
||||
url = "https://ccse.lbl.gov/pub/Downloads/BoxLib.git";
|
||||
|
||||
# TODO: figure out how best to version this. No tags in the repo!
|
||||
version('master', git='https://ccse.lbl.gov/pub/Downloads/BoxLib.git')
|
||||
|
||||
depends_on('mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
args = std_cmake_args
|
||||
args += ['-DCCSE_ENABLE_MPI=1',
|
||||
'-DCMAKE_C_COMPILER=%s' % which('mpicc'),
|
||||
'-DCMAKE_CXX_COMPILER=%s' % which('mpicxx'),
|
||||
'-DCMAKE_Fortran_COMPILER=%s' % which('mpif90')]
|
||||
|
||||
cmake('.', *args)
|
||||
make()
|
||||
make("install")
|
||||
|
60
var/spack/repos/builtin/packages/bzip2/package.py
Normal file
60
var/spack/repos/builtin/packages/bzip2/package.py
Normal file
@@ -0,0 +1,60 @@
|
||||
from spack import *
|
||||
|
||||
class Bzip2(Package):
|
||||
"""bzip2 is a freely available, patent free high-quality data
|
||||
compressor. It typically compresses files to within 10% to 15%
|
||||
of the best available techniques (the PPM family of statistical
|
||||
compressors), whilst being around twice as fast at compression
|
||||
and six times faster at decompression.
|
||||
|
||||
"""
|
||||
homepage = "http://www.bzip.org"
|
||||
url = "http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz"
|
||||
|
||||
version('1.0.6', '00b516f4704d4a7cb50a1d97e6e8e15b')
|
||||
|
||||
|
||||
def patch(self):
|
||||
mf = FileFilter('Makefile-libbz2_so')
|
||||
mf.filter(r'^CC=gcc', 'CC=cc')
|
||||
|
||||
# Below stuff patches the link line to use RPATHs on Mac OS X.
|
||||
if 'darwin' in self.spec.architecture:
|
||||
v = self.spec.version
|
||||
v1, v2, v3 = (v.up_to(i) for i in (1,2,3))
|
||||
|
||||
mf.filter('$(CC) -shared -Wl,-soname -Wl,libbz2.so.{0} -o libbz2.so.{1} $(OBJS)'.format(v2, v3),
|
||||
'$(CC) -dynamiclib -Wl,-install_name -Wl,@rpath/libbz2.{0}.dylib -current_version {1} -compatibility_version {2} -o libbz2.{3}.dylib $(OBJS)'.format(v1, v2, v3, v3), string=True)
|
||||
|
||||
mf.filter('$(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.{0}'.format(v3),
|
||||
'$(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.{0}.dylib'.format(v3), string=True)
|
||||
mf.filter('rm -f libbz2.so.{0}'.format(v2),
|
||||
'rm -f libbz2.{0}.dylib'.format(v2), string=True)
|
||||
mf.filter('ln -s libbz2.so.{0} libbz2.so.{1}'.format(v3, v2),
|
||||
'ln -s libbz2.{0}.dylib libbz2.{1}.dylib'.format(v3, v2), string=True)
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make('-f', 'Makefile-libbz2_so')
|
||||
make('clean')
|
||||
make("install", "PREFIX=%s" % prefix)
|
||||
|
||||
install('bzip2-shared', join_path(prefix.bin, 'bzip2'))
|
||||
|
||||
v1, v2, v3 = (self.spec.version.up_to(i) for i in (1,2,3))
|
||||
if 'darwin' in self.spec.architecture:
|
||||
lib = 'libbz2.dylib'
|
||||
lib1, lib2, lib3 = ('libbz2.{0}.dylib'.format(v) for v in (v1, v2, v3))
|
||||
else:
|
||||
lib = 'libbz2.so'
|
||||
lib1, lib2, lib3 = ('libbz2.so.{0}'.format(v) for v in (v1, v2, v3))
|
||||
|
||||
install(lib3, join_path(prefix.lib, lib3))
|
||||
with working_dir(prefix.lib):
|
||||
for l in (lib, lib1, lib2):
|
||||
symlink(lib3, l)
|
||||
|
||||
with working_dir(prefix.bin):
|
||||
force_remove('bunzip2', 'bzcat')
|
||||
symlink('bzip2', 'bunzip2')
|
||||
symlink('bzip2', 'bzcat')
|
20
var/spack/repos/builtin/packages/cairo/package.py
Normal file
20
var/spack/repos/builtin/packages/cairo/package.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from spack import *
|
||||
|
||||
class Cairo(Package):
|
||||
"""Cairo is a 2D graphics library with support for multiple output devices."""
|
||||
homepage = "http://cairographics.org"
|
||||
url = "http://cairographics.org/releases/cairo-1.14.0.tar.xz"
|
||||
|
||||
version('1.14.0', 'fc3a5edeba703f906f2241b394f0cced')
|
||||
|
||||
depends_on("libpng")
|
||||
depends_on("glib")
|
||||
depends_on("pixman")
|
||||
depends_on("fontconfig@2.10.91:") # Require newer version of fontconfig.
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix,
|
||||
"--disable-trace", # can cause problems with libiberty
|
||||
"--enable-tee")
|
||||
make()
|
||||
make("install")
|
25
var/spack/repos/builtin/packages/caliper/package.py
Normal file
25
var/spack/repos/builtin/packages/caliper/package.py
Normal file
@@ -0,0 +1,25 @@
|
||||
from spack import *
|
||||
|
||||
class Caliper(Package):
|
||||
"""
|
||||
Caliper is a generic context annotation system. It gives programmers the
|
||||
ability to provide arbitrary program context information to (performance)
|
||||
tools at runtime.
|
||||
"""
|
||||
|
||||
homepage = "https://github.com/LLNL/Caliper"
|
||||
url = ""
|
||||
|
||||
version('master', git='ssh://git@github.com:LLNL/Caliper.git')
|
||||
|
||||
variant('mpi', default=False, description='Enable MPI function wrappers.')
|
||||
|
||||
depends_on('libunwind')
|
||||
depends_on('papi')
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('build', create=True):
|
||||
cmake('..', *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
47
var/spack/repos/builtin/packages/callpath/package.py
Normal file
47
var/spack/repos/builtin/packages/callpath/package.py
Normal file
@@ -0,0 +1,47 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Callpath(Package):
|
||||
"""Library for representing callpaths consistently in
|
||||
distributed-memory performance tools."""
|
||||
|
||||
homepage = "https://github.com/llnl/callpath"
|
||||
url = "https://github.com/llnl/callpath/archive/v1.0.1.tar.gz"
|
||||
|
||||
version('1.0.2', 'b1994d5ee7c7db9d27586fc2dcf8f373')
|
||||
version('1.0.1', '0047983d2a52c5c335f8ba7f5bab2325')
|
||||
|
||||
depends_on("libelf")
|
||||
depends_on("libdwarf")
|
||||
depends_on("dyninst")
|
||||
depends_on("adept-utils")
|
||||
depends_on("mpi")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# TODO: offer options for the walker used.
|
||||
cmake('.', "-DCALLPATH_WALKER=dyninst", *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
35
var/spack/repos/builtin/packages/cblas/package.py
Normal file
35
var/spack/repos/builtin/packages/cblas/package.py
Normal file
@@ -0,0 +1,35 @@
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class Cblas(Package):
|
||||
"""The BLAS (Basic Linear Algebra Subprograms) are routines that
|
||||
provide standard building blocks for performing basic vector and
|
||||
matrix operations."""
|
||||
|
||||
homepage = "http://www.netlib.org/blas/_cblas/"
|
||||
|
||||
# tarball has no version, but on the date below, this MD5 was correct.
|
||||
version('2015-06-06', '1e8830f622d2112239a4a8a83b84209a',
|
||||
url='http://www.netlib.org/blas/blast-forum/cblas.tgz')
|
||||
|
||||
depends_on('blas')
|
||||
parallel = False
|
||||
|
||||
def patch(self):
|
||||
mf = FileFilter('Makefile.in')
|
||||
|
||||
mf.filter('^BLLIB =.*', 'BLLIB = %s/libblas.a' % self.spec['blas'].prefix.lib)
|
||||
mf.filter('^CC =.*', 'CC = cc')
|
||||
mf.filter('^FC =.*', 'FC = f90')
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make('all')
|
||||
mkdirp(prefix.lib)
|
||||
mkdirp(prefix.include)
|
||||
|
||||
# Rename the generated lib file to libcblas.a
|
||||
install('./lib/cblas_LINUX.a', '%s/libcblas.a' % prefix.lib)
|
||||
install('./include/cblas.h','%s' % prefix.include)
|
||||
install('./include/cblas_f77.h','%s' % prefix.include)
|
||||
|
66
var/spack/repos/builtin/packages/cbtf-argonavis/package.py
Normal file
66
var/spack/repos/builtin/packages/cbtf-argonavis/package.py
Normal file
@@ -0,0 +1,66 @@
|
||||
################################################################################
|
||||
# Copyright (c) 2015 Krell Institute. All Rights Reserved.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
# Foundation; either version 2 of the License, or (at your option) any later
|
||||
# version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along with
|
||||
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
||||
# Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
################################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
class CbtfArgonavis(Package):
|
||||
"""CBTF Argo Navis project contains the CUDA collector and supporting
|
||||
libraries that was done as a result of a DOE SBIR grant."""
|
||||
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
|
||||
|
||||
# Mirror access template example
|
||||
#url = "file:/g/g24/jeg/cbtf-argonavis-1.5.tar.gz"
|
||||
#version('1.5', '1f7f6512f55409ed2135cfceabe26b82')
|
||||
|
||||
version('1.6', branch='master', git='http://git.code.sf.net/p/cbtf-argonavis/cbtf-argonavis')
|
||||
|
||||
depends_on("cmake@3.0.2:")
|
||||
depends_on("papi")
|
||||
depends_on("cbtf")
|
||||
depends_on("cbtf-krell")
|
||||
depends_on("cuda")
|
||||
|
||||
parallel = False
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
# Look for package installation information in the cbtf and cbtf-krell prefixes
|
||||
cmake_prefix_path = join_path(spec['cbtf'].prefix) + ':' + join_path(spec['cbtf-krell'].prefix)
|
||||
|
||||
# FIXME, hard coded for testing purposes, we will alter when the external package feature is available
|
||||
cuda_prefix_path = "/usr/local/cudatoolkit-6.0"
|
||||
cupti_prefix_path = "/usr/local/cudatoolkit-6.0/extras/CUPTI"
|
||||
|
||||
|
||||
with working_dir('CUDA'):
|
||||
with working_dir('build', create=True):
|
||||
cmake('..',
|
||||
'-DCMAKE_INSTALL_PREFIX=%s' % prefix,
|
||||
'-DCMAKE_LIBRARY_PATH=%s' % prefix.lib64,
|
||||
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
|
||||
'-DCUDA_INSTALL_PATH=%s' % cuda_prefix_path,
|
||||
'-DCUDA_ROOT=%s' % cuda_prefix_path,
|
||||
'-DCUPTI_ROOT=%s' % cupti_prefix_path,
|
||||
'-DCUDA_DIR=%s' % cuda_prefix_path,
|
||||
'-DPAPI_ROOT=%s' % spec['papi'].prefix,
|
||||
'-DCBTF_PREFIX=%s' % spec['cbtf'].prefix,
|
||||
*std_cmake_args)
|
||||
make("clean")
|
||||
make()
|
||||
make("install")
|
||||
|
116
var/spack/repos/builtin/packages/cbtf-krell/package.py
Normal file
116
var/spack/repos/builtin/packages/cbtf-krell/package.py
Normal file
@@ -0,0 +1,116 @@
|
||||
################################################################################
|
||||
# Copyright (c) 2015 Krell Institute. All Rights Reserved.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
# Foundation; either version 2 of the License, or (at your option) any later
|
||||
# version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along with
|
||||
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
||||
# Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
################################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
class CbtfKrell(Package):
|
||||
"""CBTF Krell project contains the Krell Institute contributions to the CBTF project.
|
||||
These contributions include many performance data collectors and support
|
||||
libraries as well as some example tools that drive the data collection at
|
||||
HPC levels of scale."""
|
||||
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
|
||||
|
||||
# optional mirror access template
|
||||
#url = "file:/g/g24/jeg/cbtf-krell-1.5.tar.gz"
|
||||
#version('1.5', 'b13f6df6a93c44149d977773dd776d2f')
|
||||
|
||||
version('1.6', branch='master', git='http://git.code.sf.net/p/cbtf-krell/cbtf-krell')
|
||||
|
||||
|
||||
# Dependencies for cbtf-krell
|
||||
|
||||
# For binutils service
|
||||
depends_on("binutils@2.24+krellpatch")
|
||||
|
||||
# collectionTool
|
||||
depends_on("boost@1.50.0")
|
||||
depends_on("dyninst@8.2.1")
|
||||
depends_on("mrnet@4.1.0:+lwthreads")
|
||||
depends_on("xerces-c@3.1.1:")
|
||||
depends_on("cbtf")
|
||||
|
||||
# for services and collectors
|
||||
depends_on("libmonitor+krellpatch")
|
||||
depends_on("libunwind")
|
||||
depends_on("papi")
|
||||
|
||||
# MPI Installations
|
||||
# These have not worked either for build or execution, commenting out for now
|
||||
#depends_on("openmpi")
|
||||
#depends_on("mvapich2@2.0")
|
||||
#depends_on("mpich")
|
||||
|
||||
parallel = False
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
# Add in paths for finding package config files that tell us where to find these packages
|
||||
cmake_prefix_path = join_path(spec['cbtf'].prefix) + ':' + join_path(spec['dyninst'].prefix)
|
||||
|
||||
# FIXME - hard code path until external package support is available
|
||||
# Need to change this path and/or add additional paths for MPI experiment support on different platforms
|
||||
#openmpi_prefix_path = "/opt/openmpi-1.8.2"
|
||||
#mvapich_prefix_path = "/usr/local/tools/mvapich-gnu"
|
||||
|
||||
# Other possibilities, they will need a -DMVAPICH_DIR=, etc clause in the cmake command to be recognized
|
||||
# mvapich_prefix_path = "<mvapich install path>"
|
||||
# mvapich2_prefix_path = "<mvapich2 install path>"
|
||||
# mpich2_prefix_path = "<mpich2 install path>"
|
||||
# mpich_prefix_path = "<mpich install path>"
|
||||
# mpt_prefix_path = "<mpt install path>"
|
||||
|
||||
# Add in paths for cuda if requested via the cuda variant
|
||||
# FIXME - hard code path until external package support is available
|
||||
#if '+cuda' in spec:
|
||||
# cuda_prefix_path = "/usr/local/cuda-6.0"
|
||||
# cupti_prefix_path = "/usr/local/cuda-6.0/extras/CUPTI"
|
||||
#else:
|
||||
# cuda_prefix_path = ""
|
||||
# cupti_prefix_path = ""
|
||||
|
||||
#'-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix,
|
||||
#'-DOPENMPI_DIR=%s' % spec['openmpi'].prefix,
|
||||
#'-DMPICH_DIR=%s' % spec['mpich'].prefix,
|
||||
#'-DCMAKE_LIBRARY_PATH=%s' % prefix.lib64,
|
||||
#'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
#'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
#'-DLIB_SUFFIX=64',
|
||||
#'-DCUDA_DIR=%s' % cuda_prefix_path,
|
||||
#'-DCUPTI_DIR=%s' % cupti_prefix_path,
|
||||
|
||||
# Build cbtf-krell with cmake
|
||||
with working_dir('build_cbtf_krell', create=True):
|
||||
cmake('..',
|
||||
'-DCMAKE_BUILD_TYPE=Debug',
|
||||
'-DCMAKE_INSTALL_PREFIX=%s' % prefix,
|
||||
'-DCBTF_DIR=%s' % spec['cbtf'].prefix,
|
||||
'-DBINUTILS_DIR=%s' % spec['binutils'].prefix,
|
||||
'-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
|
||||
'-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
|
||||
'-DPAPI_DIR=%s' % spec['papi'].prefix,
|
||||
'-DBOOST_DIR=%s' % spec['boost'].prefix,
|
||||
'-DMRNET_DIR=%s' % spec['mrnet'].prefix,
|
||||
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
|
||||
'-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
|
||||
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
|
||||
*std_cmake_args)
|
||||
|
||||
make("clean")
|
||||
make()
|
||||
make("install")
|
||||
|
60
var/spack/repos/builtin/packages/cbtf-lanl/package.py
Normal file
60
var/spack/repos/builtin/packages/cbtf-lanl/package.py
Normal file
@@ -0,0 +1,60 @@
|
||||
################################################################################
|
||||
# Copyright (c) 2015 Krell Institute. All Rights Reserved.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
# Foundation; either version 2 of the License, or (at your option) any later
|
||||
# version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along with
|
||||
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
||||
# Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
################################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
class CbtfLanl(Package):
|
||||
"""CBTF LANL project contains a memory tool and data center type system command monitoring tool."""
|
||||
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
|
||||
|
||||
|
||||
# Mirror access template example
|
||||
#url = "file:/g/g24/jeg/cbtf-lanl-1.5.tar.gz"
|
||||
#version('1.5', 'c3f78f967b0a42c6734ce4be0e602426')
|
||||
|
||||
version('1.6', branch='master', git='http://git.code.sf.net/p/cbtf-lanl/cbtf-lanl')
|
||||
|
||||
|
||||
# Dependencies for cbtf-krell
|
||||
depends_on("boost@1.50")
|
||||
depends_on("mrnet@4.1.0:+lwthreads")
|
||||
depends_on("xerces-c@3.1.1:")
|
||||
depends_on("cbtf")
|
||||
depends_on("cbtf-krell")
|
||||
|
||||
parallel = False
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
# Add in paths for finding package config files that tell us where to find these packages
|
||||
cmake_prefix_path = join_path(spec['cbtf'].prefix) + ':' + join_path(spec['cbtf-krell'].prefix)
|
||||
|
||||
with working_dir('build', create=True):
|
||||
cmake('..',
|
||||
'-DCBTF_DIR=%s' % spec['cbtf'].prefix,
|
||||
'-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
|
||||
'-DMRNET_DIR=%s' % spec['mrnet'].prefix,
|
||||
'-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
|
||||
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
|
||||
'-DCMAKE_MODULE_PATH=%s' % join_path(prefix.share,'KrellInstitute','cmake'),
|
||||
*std_cmake_args)
|
||||
|
||||
make("clean")
|
||||
make()
|
||||
make("install")
|
||||
|
62
var/spack/repos/builtin/packages/cbtf/package.py
Normal file
62
var/spack/repos/builtin/packages/cbtf/package.py
Normal file
@@ -0,0 +1,62 @@
|
||||
################################################################################
|
||||
# Copyright (c) 2015 Krell Institute. All Rights Reserved.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
# Foundation; either version 2 of the License, or (at your option) any later
|
||||
# version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along with
|
||||
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
||||
# Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
################################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
class Cbtf(Package):
|
||||
"""CBTF project contains the base code for CBTF that supports creating components,
|
||||
component networks and the support to connect these components and component
|
||||
networks into sequential and distributed network tools."""
|
||||
homepage = "http://sourceforge.net/p/cbtf/wiki/Home"
|
||||
|
||||
# Mirror access template example
|
||||
#url = "file:/g/g24/jeg/cbtf-1.5.tar.gz"
|
||||
#version('1.6', '1ca88a8834759c4c74452cb97fe7b70a')
|
||||
|
||||
# Use when the git repository is available
|
||||
version('1.6', branch='master', git='http://git.code.sf.net/p/cbtf/cbtf')
|
||||
|
||||
depends_on("cmake")
|
||||
#depends_on("boost@1.42.0:")
|
||||
depends_on("boost@1.50.0")
|
||||
depends_on("mrnet@4.1.0+lwthreads")
|
||||
depends_on("xerces-c@3.1.1:")
|
||||
depends_on("libxml2")
|
||||
|
||||
parallel = False
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('build', create=True):
|
||||
|
||||
# Boost_NO_SYSTEM_PATHS Set to TRUE to suppress searching
|
||||
# in system paths (or other locations outside of BOOST_ROOT
|
||||
# or BOOST_INCLUDEDIR). Useful when specifying BOOST_ROOT.
|
||||
# Defaults to OFF.
|
||||
|
||||
cmake('..',
|
||||
'--debug-output',
|
||||
'-DBoost_NO_SYSTEM_PATHS=TRUE',
|
||||
'-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
|
||||
'-DBOOST_ROOT=%s' % spec['boost'].prefix,
|
||||
'-DMRNET_DIR=%s' % spec['mrnet'].prefix,
|
||||
'-DCMAKE_MODULE_PATH=%s' % join_path(prefix.share,'KrellInstitute','cmake'),
|
||||
*std_cmake_args)
|
||||
|
||||
make("clean")
|
||||
make()
|
||||
make("install")
|
33
var/spack/repos/builtin/packages/cereal/Werror.patch
Normal file
33
var/spack/repos/builtin/packages/cereal/Werror.patch
Normal file
@@ -0,0 +1,33 @@
|
||||
--- old/sandbox/CMakeLists.txt
|
||||
+++ new/sandbox/CMakeLists.txt
|
||||
@@ -4,9 +4,11 @@
|
||||
add_executable(sandbox_json sandbox_json.cpp)
|
||||
add_executable(sandbox_rtti sandbox_rtti.cpp)
|
||||
|
||||
+if(Boost_FOUND)
|
||||
add_executable(sandbox_vs sandbox_vs.cpp)
|
||||
target_link_libraries(sandbox_vs sandbox_vs_dll)
|
||||
include_directories(sandbox_shared_lib)
|
||||
+endif(Boost_FOUND)
|
||||
|
||||
if(Boost_FOUND)
|
||||
add_executable(performance performance.cpp)
|
||||
--- old/include/cereal/types/common.hpp
|
||||
+++ new/include/cereal/types/common.hpp
|
||||
@@ -106,14 +106,16 @@
|
||||
t = reinterpret_cast<typename common_detail::is_enum<T>::type const &>( value );
|
||||
}
|
||||
|
||||
+#ifndef CEREAL_ENABLE_RAW_POINTER_SERIALIZATION
|
||||
//! Serialization for raw pointers
|
||||
/*! This exists only to throw a static_assert to let users know we don't support raw pointers. */
|
||||
template <class Archive, class T> inline
|
||||
void CEREAL_SERIALIZE_FUNCTION_NAME( Archive &, T * & )
|
||||
{
|
||||
static_assert(cereal::traits::detail::delay_static_assert<T>::value,
|
||||
"Cereal does not support serializing raw pointers - please use a smart pointer");
|
||||
}
|
||||
+#endif
|
||||
|
||||
//! Serialization for C style arrays
|
||||
template <class Archive, class T> inline
|
38
var/spack/repos/builtin/packages/cereal/package.py
Normal file
38
var/spack/repos/builtin/packages/cereal/package.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from spack import *
|
||||
import os
|
||||
import shutil
|
||||
|
||||
class Cereal(Package):
|
||||
"""cereal is a header-only C++11 serialization library. cereal takes arbitrary data types and reversibly turns them into different representations, such as compact binary encodings, XML, or JSON. cereal was designed to be fast, light-weight, and easy to extend - it has no external dependencies and can be easily bundled with other code or used standalone."""
|
||||
homepage = "http://uscilab.github.io/cereal/"
|
||||
url = "https://github.com/USCiLab/cereal/archive/v1.1.2.tar.gz"
|
||||
|
||||
version('1.1.2', '34d4ad174acbff005c36d4d10e48cbb9')
|
||||
version('1.1.1', '0ceff308c38f37d5b5f6df3927451c27')
|
||||
version('1.1.0', '9f2d5f72e935c54f4c6d23e954ce699f')
|
||||
version('1.0.0', 'd1bacca70a95cec0ddbff68b0871296b')
|
||||
version('0.9.1', '8872d4444ff274ce6cd1ed364d0fc0ad')
|
||||
|
||||
patch("Werror.patch")
|
||||
|
||||
depends_on("cmake @2.6.2:")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Don't use -Werror
|
||||
filter_file(r'-Werror', '', 'CMakeLists.txt')
|
||||
|
||||
# configure
|
||||
# Boost is only used for self-tests, which we are not running (yet?)
|
||||
cmake('.', '-DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE', *std_cmake_args)
|
||||
|
||||
# Build
|
||||
make()
|
||||
|
||||
# Install
|
||||
shutil.rmtree(join_path(prefix, 'doc'), ignore_errors=True)
|
||||
shutil.rmtree(join_path(prefix, 'include'), ignore_errors=True)
|
||||
shutil.rmtree(join_path(prefix, 'lib'), ignore_errors=True)
|
||||
shutil.copytree('doc', join_path(prefix, 'doc'), symlinks=True)
|
||||
shutil.copytree('include', join_path(prefix, 'include'), symlinks=True)
|
||||
# Create empty directory to avoid linker warnings later
|
||||
os.mkdir(join_path(prefix, 'lib'))
|
18
var/spack/repos/builtin/packages/cfitsio/package.py
Normal file
18
var/spack/repos/builtin/packages/cfitsio/package.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Cfitsio(Package):
|
||||
"""
|
||||
CFITSIO is a library of C and Fortran subroutines for reading and writing
|
||||
data files in FITS (Flexible Image Transport System) data format.
|
||||
"""
|
||||
homepage = 'http://heasarc.gsfc.nasa.gov/fitsio/'
|
||||
version('3.370', 'abebd2d02ba5b0503c633581e3bfa116')
|
||||
|
||||
def url_for_version(self, v):
|
||||
url = 'ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio{0}.tar.gz'
|
||||
return url.format(str(v).replace('.', ''))
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=' + prefix)
|
||||
make()
|
||||
make('install')
|
74
var/spack/repos/builtin/packages/cgal/package.py
Normal file
74
var/spack/repos/builtin/packages/cgal/package.py
Normal file
@@ -0,0 +1,74 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
|
||||
class Cgal(Package):
|
||||
"""
|
||||
CGAL is a software project that provides easy access to efficient and reliable geometric algorithms in the form of
|
||||
a C++ library. CGAL is used in various areas needing geometric computation, such as geographic information systems,
|
||||
computer aided design, molecular biology, medical imaging, computer graphics, and robotics.
|
||||
"""
|
||||
homepage = 'http://www.cgal.org/'
|
||||
url = 'https://github.com/CGAL/cgal/archive/releases/CGAL-4.7.tar.gz'
|
||||
|
||||
version('4.7', '4826714810f3b4c65cac96b90fb03b67')
|
||||
version('4.6.3', 'e8ee2ecc8d2b09b94a121c09257b576d')
|
||||
|
||||
# Installation instructions : http://doc.cgal.org/latest/Manual/installation.html
|
||||
variant('shared', default=True, description='Enables the build of shared libraries')
|
||||
variant('debug', default=False, description='Builds a debug version of the libraries')
|
||||
|
||||
depends_on('boost')
|
||||
depends_on('mpfr')
|
||||
depends_on('gmp')
|
||||
depends_on('zlib')
|
||||
depends_on('cmake')
|
||||
|
||||
# FIXME : Qt5 dependency missing (needs Qt5 and OpenGL)
|
||||
# FIXME : Optional third party libraries missing
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
options = []
|
||||
options.extend(std_cmake_args)
|
||||
# CGAL supports only Release and Debug build type. Any other build type will raise an error at configure time
|
||||
if '+debug' in spec:
|
||||
options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
|
||||
else:
|
||||
options.append('-DCMAKE_BUILD_TYPE:STRING=Release')
|
||||
|
||||
if '+shared' in spec:
|
||||
options.append('-DBUILD_SHARED_LIBS:BOOL=ON')
|
||||
else:
|
||||
options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
|
||||
|
||||
build_directory = join_path(self.stage.path, 'spack-build')
|
||||
source_directory = self.stage.source_path
|
||||
with working_dir(build_directory, create=True):
|
||||
cmake(source_directory, *options)
|
||||
make()
|
||||
make("install")
|
30
var/spack/repos/builtin/packages/cgm/package.py
Normal file
30
var/spack/repos/builtin/packages/cgm/package.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from spack import *
|
||||
|
||||
class Cgm(Package):
|
||||
"""The Common Geometry Module, Argonne (CGMA) is a code library
|
||||
which provides geometry functionality used for mesh generation and
|
||||
other applications."""
|
||||
homepage = "http://trac.mcs.anl.gov/projects/ITAPS/wiki/CGM"
|
||||
url = "http://ftp.mcs.anl.gov/pub/fathom/cgm13.1.1.tar.gz"
|
||||
|
||||
version('13.1.1', '4e8dbc4ba8f65767b29f985f7a23b01f')
|
||||
version('13.1.0', 'a6c7b22660f164ce893fb974f9cb2028')
|
||||
version('13.1' , '95f724bda04919fc76818a5b7bc0b4ed')
|
||||
|
||||
depends_on("mpi")
|
||||
|
||||
def patch(self):
|
||||
filter_file('^(#include "CGMParallelConventions.h")',
|
||||
'//\1',
|
||||
'geom/parallel/CGMReadParallel.cpp')
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--with-mpi",
|
||||
"--prefix=%s" % prefix,
|
||||
"CFLAGS=-static",
|
||||
"CXXFLAGS=-static",
|
||||
"FCFLAGS=-static")
|
||||
|
||||
make()
|
||||
make("install")
|
16
var/spack/repos/builtin/packages/cityhash/package.py
Normal file
16
var/spack/repos/builtin/packages/cityhash/package.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
from spack.util.environment import *
|
||||
|
||||
class Cityhash(Package):
|
||||
homepage = "https://github.com/google/cityhash"
|
||||
url = "https://github.com/google/cityhash"
|
||||
|
||||
version('2013-07-31', git='https://github.com/google/cityhash.git', commit='8af9b8c2b889d80c22d6bc26ba0df1afb79a30db')
|
||||
version('master', branch='master', git='https://github.com/google/cityhash.git')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--enable-sse4.2', '--prefix=%s' % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
||||
|
23
var/spack/repos/builtin/packages/cleverleaf/package.py
Normal file
23
var/spack/repos/builtin/packages/cleverleaf/package.py
Normal file
@@ -0,0 +1,23 @@
|
||||
from spack import *
|
||||
|
||||
class Cleverleaf(Package):
|
||||
"""
|
||||
CleverLeaf is a hydrodynamics mini-app that extends CloverLeaf with Adaptive
|
||||
Mesh Refinement using the SAMRAI toolkit from Lawrence Livermore National
|
||||
Laboratory. The primary goal of CleverLeaf is to evaluate the application of
|
||||
AMR to the Lagrangian-Eulerian hydrodynamics scheme used by CloverLeaf.
|
||||
"""
|
||||
|
||||
homepage = "http://uk-mac.github.io/CleverLeaf/"
|
||||
url = "https://github.com/UK-MAC/CleverLeaf/tarball/master"
|
||||
|
||||
version('develop', git='https://github.com/UK-MAC/CleverLeaf_ref.git', branch='develop')
|
||||
|
||||
depends_on("SAMRAI@3.8.0:")
|
||||
depends_on("hdf5+mpi")
|
||||
depends_on("boost")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cmake(*std_cmake_args)
|
||||
make()
|
||||
make("install")
|
26
var/spack/repos/builtin/packages/cloog/package.py
Normal file
26
var/spack/repos/builtin/packages/cloog/package.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from spack import *
|
||||
|
||||
class Cloog(Package):
|
||||
"""CLooG is a free software and library to generate code for
|
||||
scanning Z-polyhedra. That is, it finds a code (e.g. in C,
|
||||
FORTRAN...) that reaches each integral point of one or more
|
||||
parameterized polyhedra."""
|
||||
|
||||
homepage = "http://www.cloog.org"
|
||||
url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-0.18.1.tar.gz"
|
||||
list_url = "http://www.bastoul.net/cloog/pages/download"
|
||||
|
||||
version('0.18.1', 'e34fca0540d840e5d0f6427e98c92252')
|
||||
version('0.18.0', 'be78a47bd82523250eb3e91646db5b3d')
|
||||
version('0.17.0', '0aa3302c81f65ca62c114e5264f8a802')
|
||||
|
||||
depends_on("gmp")
|
||||
depends_on("isl")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix,
|
||||
"--with-osl=no",
|
||||
"--with-isl=%s" % spec['isl'].prefix,
|
||||
"--with-gmp=%s" % spec['gmp'].prefix)
|
||||
make()
|
||||
make("install")
|
90
var/spack/repos/builtin/packages/cmake/package.py
Normal file
90
var/spack/repos/builtin/packages/cmake/package.py
Normal file
@@ -0,0 +1,90 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
from spack import *
|
||||
|
||||
class Cmake(Package):
|
||||
"""A cross-platform, open-source build system. CMake is a family of
|
||||
tools designed to build, test and package software."""
|
||||
homepage = 'https://www.cmake.org'
|
||||
url = 'https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz'
|
||||
|
||||
version('3.5.2', '701386a1b5ec95f8d1075ecf96383e02')
|
||||
version('3.5.1', 'ca051f4a66375c89d1a524e726da0296')
|
||||
version('3.5.0', '33c5d09d4c33d4ffcc63578a6ba8777e')
|
||||
version('3.4.3', '4cb3ff35b2472aae70f542116d616e63')
|
||||
version('3.4.0', 'cd3034e0a44256a0917e254167217fc8')
|
||||
version('3.3.1', '52638576f4e1e621fed6c3410d3a1b12')
|
||||
version('3.0.2', 'db4c687a31444a929d2fdc36c4dfb95f')
|
||||
version('2.8.10.2', '097278785da7182ec0aea8769d06860c')
|
||||
|
||||
variant('ncurses', default=True, description='Enables the build of the ncurses gui')
|
||||
variant('openssl', default=True, description="Enables CMake's OpenSSL features")
|
||||
variant('qt', default=False, description='Enables the build of cmake-gui')
|
||||
variant('doc', default=False, description='Enables the generation of html and man page documentation')
|
||||
|
||||
depends_on('ncurses', when='+ncurses')
|
||||
depends_on('openssl', when='+openssl')
|
||||
depends_on('qt', when='+qt')
|
||||
depends_on('python@2.7.11:', when='+doc')
|
||||
depends_on('py-sphinx', when='+doc')
|
||||
|
||||
def url_for_version(self, version):
|
||||
"""Handle CMake's version-based custom URLs."""
|
||||
return 'https://cmake.org/files/v%s/cmake-%s.tar.gz' % (version.up_to(2), version)
|
||||
|
||||
def validate(self, spec):
|
||||
"""
|
||||
Checks if incompatible versions of qt were specified
|
||||
|
||||
:param spec: spec of the package
|
||||
:raises RuntimeError: in case of inconsistencies
|
||||
"""
|
||||
|
||||
if '+qt' in spec and spec.satisfies('^qt@5.4.0'):
|
||||
msg = 'qt-5.4.0 has broken CMake modules.'
|
||||
raise RuntimeError(msg)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Consistency check
|
||||
self.validate(spec)
|
||||
|
||||
# configure, build, install:
|
||||
options = ['--prefix=%s' % prefix]
|
||||
options.append('--parallel=%s' % str(make_jobs))
|
||||
|
||||
if '+qt' in spec:
|
||||
options.append('--qt-gui')
|
||||
|
||||
if '+doc' in spec:
|
||||
options.append('--sphinx-html')
|
||||
options.append('--sphinx-man')
|
||||
|
||||
if '+openssl' in spec:
|
||||
options.append('--')
|
||||
options.append('-DCMAKE_USE_OPENSSL=ON')
|
||||
|
||||
configure(*options)
|
||||
make()
|
||||
make('install')
|
16
var/spack/repos/builtin/packages/cmocka/package.py
Normal file
16
var/spack/repos/builtin/packages/cmocka/package.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class Cmocka(Package):
|
||||
"""Unit-testing framework in pure C"""
|
||||
homepage = "https://cmocka.org/"
|
||||
url = "https://cmocka.org/files/1.0/cmocka-1.0.1.tar.xz"
|
||||
|
||||
version('1.0.1', 'ed861e501a21a92b2af63e466df2015e')
|
||||
parallel = False
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake('..', *std_cmake_args)
|
||||
|
||||
make()
|
||||
make("install")
|
17
var/spack/repos/builtin/packages/coreutils/package.py
Normal file
17
var/spack/repos/builtin/packages/coreutils/package.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Coreutils(Package):
|
||||
"""The GNU Core Utilities are the basic file, shell and text
|
||||
manipulation utilities of the GNU operating system. These are
|
||||
the core utilities which are expected to exist on every
|
||||
operating system.
|
||||
"""
|
||||
homepage = "http://www.gnu.org/software/coreutils/"
|
||||
url = "http://ftp.gnu.org/gnu/coreutils/coreutils-8.23.tar.xz"
|
||||
|
||||
version('8.23', 'abed135279f87ad6762ce57ff6d89c41')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
15
var/spack/repos/builtin/packages/cppcheck/package.py
Normal file
15
var/spack/repos/builtin/packages/cppcheck/package.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class Cppcheck(Package):
|
||||
"""A tool for static C/C++ code analysis."""
|
||||
homepage = "http://cppcheck.sourceforge.net/"
|
||||
url = "http://downloads.sourceforge.net/project/cppcheck/cppcheck/1.68/cppcheck-1.68.tar.bz2"
|
||||
|
||||
version('1.68', 'c015195f5d61a542f350269030150708')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# cppcheck does not have a configure script
|
||||
make()
|
||||
# manually install the final cppcheck binary
|
||||
mkdirp(prefix.bin)
|
||||
install('cppcheck', prefix.bin)
|
16
var/spack/repos/builtin/packages/cram/package.py
Normal file
16
var/spack/repos/builtin/packages/cram/package.py
Normal file
@@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class Cram(Package):
|
||||
"""Cram runs many small MPI jobs inside one large MPI job."""
|
||||
homepage = "https://github.com/llnl/cram"
|
||||
url = "http://github.com/llnl/cram/archive/v1.0.1.tar.gz"
|
||||
|
||||
version('1.0.1', 'c73711e945cf5dc603e44395f6647f5e')
|
||||
|
||||
extends('python')
|
||||
depends_on("mpi")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cmake(".", *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
29
var/spack/repos/builtin/packages/cryptopp/package.py
Normal file
29
var/spack/repos/builtin/packages/cryptopp/package.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import glob
|
||||
from spack import *
|
||||
|
||||
class Cryptopp(Package):
|
||||
"""Crypto++ is an open-source C++ library of cryptographic schemes. The
|
||||
library supports a number of different cryptography algorithms, including
|
||||
authenticated encryption schemes (GCM, CCM), hash functions (SHA-1, SHA2),
|
||||
public-key encryption (RSA, DSA), and a few obsolete/historical encryption
|
||||
algorithms (MD5, Panama)."""
|
||||
|
||||
homepage = "http://www.cryptopp.com"
|
||||
base_url = "http://www.cryptopp.com"
|
||||
|
||||
version('5.6.3', '3c5b70e2ec98b7a24988734446242d07')
|
||||
version('5.6.2', '7ed022585698df48e65ce9218f6c6a67')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make()
|
||||
|
||||
mkdirp(prefix.include)
|
||||
for hfile in glob.glob('*.h*'):
|
||||
install(hfile, prefix.include)
|
||||
|
||||
mkdirp(prefix.lib)
|
||||
install('libcryptopp.a', prefix.lib)
|
||||
|
||||
def url_for_version(self, version):
|
||||
version_string = str(version).replace('.', '')
|
||||
return '%s/cryptopp%s.zip' % (Cryptopp.base_url, version_string)
|
17
var/spack/repos/builtin/packages/cscope/package.py
Normal file
17
var/spack/repos/builtin/packages/cscope/package.py
Normal file
@@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Cscope(Package):
|
||||
"""Cscope is a developer's tool for browsing source code."""
|
||||
homepage = "http://http://cscope.sourceforge.net/"
|
||||
url = "http://downloads.sourceforge.net/project/cscope/cscope/15.8b/cscope-15.8b.tar.gz"
|
||||
|
||||
version('15.8b', '8f9409a238ee313a96f9f87fe0f3b176')
|
||||
|
||||
# Can be configured to use flex (not necessary)
|
||||
# ./configure --with-flex
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
55
var/spack/repos/builtin/packages/cube/package.py
Normal file
55
var/spack/repos/builtin/packages/cube/package.py
Normal file
@@ -0,0 +1,55 @@
|
||||
##############################################################################
|
||||
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
|
||||
# Produced at the Lawrence Livermore National Laboratory.
|
||||
#
|
||||
# This file is part of Spack.
|
||||
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
|
||||
# LLNL-CODE-647188
|
||||
#
|
||||
# For details, see https://github.com/llnl/spack
|
||||
# Please also see the LICENSE file for our notice and the LGPL.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License (as published by
|
||||
# the Free Software Foundation) version 2.1 dated February 1999.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
|
||||
# conditions of the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this program; if not, write to the Free Software Foundation,
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
|
||||
from spack import *
|
||||
|
||||
|
||||
class Cube(Package):
|
||||
"""
|
||||
Cube the profile viewer for Score-P and Scalasca profiles. It displays a multi-dimensional performance space
|
||||
consisting of the dimensions:
|
||||
- performance metric
|
||||
- call path
|
||||
- system resource
|
||||
"""
|
||||
|
||||
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
|
||||
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz"
|
||||
|
||||
version('4.3.3', '07e109248ed8ffc7bdcce614264a2909',
|
||||
url='http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-4.3.3.tar.gz')
|
||||
|
||||
version('4.2.3', '8f95b9531f5a8f8134f279c2767c9b20',
|
||||
url="http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz")
|
||||
|
||||
# TODO : add variant that builds GUI on top of Qt
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure_args = ["--prefix=%s" % prefix,
|
||||
"--without-paraver",
|
||||
"--without-gui"]
|
||||
configure(*configure_args)
|
||||
make(parallel=False)
|
||||
make("install", parallel=False)
|
47
var/spack/repos/builtin/packages/cuda/package.py
Normal file
47
var/spack/repos/builtin/packages/cuda/package.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from spack import *
|
||||
from glob import glob
|
||||
import os
|
||||
|
||||
class Cuda(Package):
|
||||
"""CUDA is a parallel computing platform and programming model invented by
|
||||
NVIDIA. It enables dramatic increases in computing performance by harnessing
|
||||
the power of the graphics processing unit (GPU).
|
||||
|
||||
Note: NVIDIA does not provide a download URL for CUDA so you will need to
|
||||
download it yourself. Go to https://developer.nvidia.com/cuda-downloads
|
||||
and select your Operating System, Architecture, Distribution, and Version.
|
||||
For the Installer Type, select runfile and click Download. Spack will search
|
||||
your current directory for this file. Alternatively, add this file to a
|
||||
mirror so that Spack can find it. For instructions on how to set up a mirror,
|
||||
see http://software.llnl.gov/spack/mirrors.html
|
||||
|
||||
Note: This package does not currently install the drivers necessary to run
|
||||
CUDA. These will need to be installed manually. See:
|
||||
http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux for details."""
|
||||
|
||||
homepage = "http://www.nvidia.com/object/cuda_home_new.html"
|
||||
|
||||
version('7.5.18', '4b3bcecf0dfc35928a0898793cf3e4c6', expand=False,
|
||||
url="file://%s/cuda_7.5.18_linux.run" % os.getcwd())
|
||||
version('6.5.14', '90b1b8f77313600cc294d9271741f4da', expand=False,
|
||||
url="file://%s/cuda_6.5.14_linux_64.run" % os.getcwd())
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
runfile = glob(os.path.join(self.stage.path, 'cuda*.run'))[0]
|
||||
chmod = which('chmod')
|
||||
chmod('+x', runfile)
|
||||
runfile = which(runfile)
|
||||
|
||||
# Note: NVIDIA does not officially support many newer versions of compilers.
|
||||
# For example, on CentOS 6, you must use GCC 4.4.7 or older. See:
|
||||
# http://docs.nvidia.com/cuda/cuda-installation-guide-linux/#system-requirements
|
||||
# for details.
|
||||
|
||||
runfile(
|
||||
'--silent', # disable interactive prompts
|
||||
'--verbose', # create verbose log file
|
||||
'--toolkit', # install CUDA Toolkit
|
||||
'--toolkitpath=%s' % prefix
|
||||
)
|
||||
|
26
var/spack/repos/builtin/packages/curl/package.py
Normal file
26
var/spack/repos/builtin/packages/curl/package.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from spack import *
|
||||
|
||||
class Curl(Package):
|
||||
"""cURL is an open source command line tool and library for
|
||||
transferring data with URL syntax"""
|
||||
|
||||
homepage = "http://curl.haxx.se"
|
||||
url = "http://curl.haxx.se/download/curl-7.46.0.tar.bz2"
|
||||
|
||||
version('7.47.1', '9ea3123449439bbd960cd25cf98796fb')
|
||||
version('7.46.0', '9979f989a2a9930d10f1b3deeabc2148')
|
||||
version('7.45.0', '62c1a352b28558f25ba6209214beadc8')
|
||||
version('7.44.0', '6b952ca00e5473b16a11f05f06aa8dae')
|
||||
version('7.43.0', '11bddbb452a8b766b932f859aaeeed39')
|
||||
version('7.42.1', '296945012ce647b94083ed427c1877a8')
|
||||
|
||||
depends_on("openssl")
|
||||
depends_on("zlib")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure('--prefix=%s' % prefix,
|
||||
'--with-zlib=%s' % spec['zlib'].prefix,
|
||||
'--with-ssl=%s' % spec['openssl'].prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
33
var/spack/repos/builtin/packages/czmq/package.py
Normal file
33
var/spack/repos/builtin/packages/czmq/package.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class Czmq(Package):
|
||||
""" A C interface to the ZMQ library """
|
||||
homepage = "http://czmq.zeromq.org"
|
||||
url = "https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz"
|
||||
|
||||
version('3.0.2', '23e9885f7ee3ce88d99d0425f52e9be1', url='https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz')
|
||||
|
||||
depends_on('libtool')
|
||||
depends_on('automake')
|
||||
depends_on('autoconf')
|
||||
depends_on('pkg-config')
|
||||
depends_on('zeromq')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
bash = which("bash")
|
||||
# Work around autogen.sh oddities
|
||||
# bash("./autogen.sh")
|
||||
mkdirp("config")
|
||||
autoreconf = which("autoreconf")
|
||||
autoreconf("--install", "--verbose", "--force",
|
||||
"-I", "config",
|
||||
"-I", os.path.join(spec['pkg-config'].prefix, "share", "aclocal"),
|
||||
"-I", os.path.join(spec['automake'].prefix, "share", "aclocal"),
|
||||
"-I", os.path.join(spec['libtool'].prefix, "share", "aclocal"),
|
||||
)
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
||||
|
55
var/spack/repos/builtin/packages/dakota/package.py
Normal file
55
var/spack/repos/builtin/packages/dakota/package.py
Normal file
@@ -0,0 +1,55 @@
|
||||
from spack import *
|
||||
|
||||
|
||||
class Dakota(Package):
|
||||
"""
|
||||
The Dakota toolkit provides a flexible, extensible interface between analysis codes and iterative systems
|
||||
analysis methods. Dakota contains algorithms for:
|
||||
|
||||
- optimization with gradient and non gradient-based methods;
|
||||
- uncertainty quantification with sampling, reliability, stochastic expansion, and epistemic methods;
|
||||
- parameter estimation with nonlinear least squares methods;
|
||||
- sensitivity/variance analysis with design of experiments and parameter study methods.
|
||||
|
||||
These capabilities may be used on their own or as components within advanced strategies such as hybrid optimization,
|
||||
surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty.
|
||||
"""
|
||||
|
||||
homepage = 'https://dakota.sandia.gov/'
|
||||
url = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-6.3-public.src.tar.gz'
|
||||
_url_str = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-{version}-public.src.tar.gz'
|
||||
|
||||
version('6.3', '05a58d209fae604af234c894c3f73f6d')
|
||||
|
||||
variant('debug', default=False, description='Builds a debug version of the libraries')
|
||||
variant('shared', default=True, description='Enables the build of shared libraries')
|
||||
variant('mpi', default=True, description='Activates MPI support')
|
||||
|
||||
depends_on('blas')
|
||||
depends_on('lapack')
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
depends_on('python')
|
||||
depends_on('boost')
|
||||
|
||||
def url_for_version(self, version):
|
||||
return Dakota._url_str.format(version=version)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = []
|
||||
options.extend(std_cmake_args)
|
||||
|
||||
options.extend(['-DCMAKE_BUILD_TYPE:STRING=%s' % ('Debug' if '+debug' in spec else 'Release'),
|
||||
'-DBUILD_SHARED_LIBS:BOOL=%s' % ('ON' if '+shared' in spec else 'OFF')])
|
||||
|
||||
if '+mpi' in spec:
|
||||
options.extend(['-DDAKOTA_HAVE_MPI:BOOL=ON',
|
||||
'-DMPI_CXX_COMPILER:STRING=%s' % join_path(spec['mpi'].prefix.bin, 'mpicxx')])
|
||||
|
||||
build_directory = join_path(self.stage.path, 'spack-build')
|
||||
source_directory = self.stage.source_path
|
||||
|
||||
with working_dir(build_directory, create=True):
|
||||
cmake(source_directory, *options)
|
||||
make()
|
||||
make("install")
|
14
var/spack/repos/builtin/packages/damselfly/package.py
Normal file
14
var/spack/repos/builtin/packages/damselfly/package.py
Normal file
@@ -0,0 +1,14 @@
|
||||
from spack import *
|
||||
|
||||
class Damselfly(Package):
|
||||
"""Damselfly is a model-based parallel network simulator."""
|
||||
homepage = "https://github.com/llnl/damselfly"
|
||||
url = "https://github.com/llnl/damselfly"
|
||||
|
||||
version('1.0', '05cf7e2d8ece4408c0f2abb7ab63fd74c0d62895', git='https://github.com/llnl/damselfly.git', tag='v1.0')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake('-DCMAKE_BUILD_TYPE=release', '..', *std_cmake_args)
|
||||
make()
|
||||
make('install')
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user