From 4866b4592fedab14890e9173e86f1300a1bad933 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" Date: Sat, 18 Mar 2017 19:13:32 -0500 Subject: Add missing dependencies to gawk (#3481) * Add missing dependencies to gawk * Fix make check * Add mawk packages and awk virtual dependency * Use mawk instead of gawk to build ncurses * Rearrange order of patches and dependencies --- etc/spack/defaults/packages.yaml | 1 + var/spack/repos/builtin/packages/gawk/package.py | 10 ++++++ var/spack/repos/builtin/packages/mawk/package.py | 36 ++++++++++++++++++++++ .../repos/builtin/packages/ncurses/package.py | 14 +++++---- 4 files changed, 55 insertions(+), 6 deletions(-) create mode 100644 var/spack/repos/builtin/packages/mawk/package.py diff --git a/etc/spack/defaults/packages.yaml b/etc/spack/defaults/packages.yaml index eae7752eee..37737da7c6 100644 --- a/etc/spack/defaults/packages.yaml +++ b/etc/spack/defaults/packages.yaml @@ -20,4 +20,5 @@ packages: mpi: [openmpi, mpich] blas: [openblas] lapack: [openblas] + awk: [gawk] pil: [py-pillow] diff --git a/var/spack/repos/builtin/packages/gawk/package.py b/var/spack/repos/builtin/packages/gawk/package.py index fbd0ae53bb..431e21d6ae 100644 --- a/var/spack/repos/builtin/packages/gawk/package.py +++ b/var/spack/repos/builtin/packages/gawk/package.py @@ -43,3 +43,13 @@ class Gawk(AutotoolsPackage): url = "http://ftp.gnu.org/gnu/gawk/gawk-4.1.4.tar.xz" version('4.1.4', '4e7dbc81163e60fd4f0b52496e7542c9') + + depends_on('gettext') + depends_on('libsigsegv') + depends_on('readline') + depends_on('mpfr') + depends_on('gmp') + + provides('awk') + + build_directory = 'spack-build' diff --git a/var/spack/repos/builtin/packages/mawk/package.py b/var/spack/repos/builtin/packages/mawk/package.py new file mode 100644 index 0000000000..ff100b6a7e --- /dev/null +++ b/var/spack/repos/builtin/packages/mawk/package.py @@ -0,0 +1,36 @@ +############################################################################## +# 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 Mawk(AutotoolsPackage): + """mawk is an interpreter for the AWK Programming Language.""" + + homepage = "http://invisible-island.net/mawk/mawk.html" + url = "ftp://invisible-island.net/mawk/mawk-1.3.4.tgz" + + version('1.3.4', 'b1d27324ae80302452d0fa0c98447b65') + + provides('awk') diff --git a/var/spack/repos/builtin/packages/ncurses/package.py b/var/spack/repos/builtin/packages/ncurses/package.py index 93691ee6a1..9a964d4d8a 100644 --- a/var/spack/repos/builtin/packages/ncurses/package.py +++ b/var/spack/repos/builtin/packages/ncurses/package.py @@ -38,17 +38,19 @@ class Ncurses(AutotoolsPackage): version('6.0', 'ee13d052e1ead260d7c28071f46eefb1') version('5.9', '8cb9c412e5f2d96bc6f459aa8c6282a1') - patch('patch_gcc_5.txt', when='@6.0%gcc@5.0:') - patch('sed_pgi.patch', when='@:6.0') - - depends_on("gawk", type='build') - variant('symlinks', default=False, description='Enables symlinks. Needed on AFS filesystem.') + # Use mawk instead of gawk to prevent a circular dependency + depends_on('mawk', type='build') + depends_on('pkg-config', type='build') + + patch('patch_gcc_5.txt', when='@6.0%gcc@5.0:') + patch('sed_pgi.patch', when='@:6.0') + def configure_args(self): opts = [ - 'AWK=gawk', + 'AWK=mawk', 'CFLAGS={0}'.format(self.compiler.pic_flag), 'CXXFLAGS={0}'.format(self.compiler.pic_flag), '--with-shared', -- cgit v1.2.3-60-g2f50