From 6ce0ee49a9e7a6f0b904b316ab1fd2d38308a989 Mon Sep 17 00:00:00 2001 From: Denis Davydov Date: Thu, 1 Dec 2016 18:51:23 +0100 Subject: [PATCH] likwid: add new package (#2455) --- .../repos/builtin/packages/likwid/package.py | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 var/spack/repos/builtin/packages/likwid/package.py diff --git a/var/spack/repos/builtin/packages/likwid/package.py b/var/spack/repos/builtin/packages/likwid/package.py new file mode 100644 index 0000000000..f184e8491d --- /dev/null +++ b/var/spack/repos/builtin/packages/likwid/package.py @@ -0,0 +1,61 @@ +############################################################################## +# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC. +# Produced at the Lawrence Livermore National Laboratory. +# +# This file is part of Spack. +# Created 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 Lesser General Public License (as +# published by the Free Software Foundation) version 2.1, 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 Lesser 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 Likwid(Package): + """Likwid is a simple to install and use toolsuite of command line + applications for performance oriented programmers. It works for Intel and + AMD processors on the Linux operating system.""" + + homepage = "https://github.com/RRZE-HPC/likwid" + url = "https://github.com/RRZE-HPC/likwid/archive/4.1.2.tar.gz" + + version('4.1.2', 'a857ce5bd23e31d96e2963fe81cb38f0') + + # TODO: how to specify those? + # depends_on('hwloc') + # depends_on('lua') + + # TODO: check + # depends_on('gnuplot', type='run') + + supported_compilers = {'clang': 'CLANG', 'gcc': 'GCC', 'intel': 'ICC'} + + def install(self, spec, prefix): + if self.compiler.name not in self.supported_compilers: + raise RuntimeError('{0} is not a supported compiler \ + to compile Likwid'.format(self.compiler.name)) + + filter_file('^COMPILER .*', + 'COMPILER = ' + + self.supported_compilers[self.compiler.name], + 'config.mk') + filter_file('^PREFIX .*', + 'PREFIX = ' + + prefix, + 'config.mk') + make() + make('install')