summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/ncl/package.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ncl/package.py b/var/spack/repos/builtin/packages/ncl/package.py
index 1d338bcd9c..a4ccf8bdc1 100644
--- a/var/spack/repos/builtin/packages/ncl/package.py
+++ b/var/spack/repos/builtin/packages/ncl/package.py
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import glob
import os
import shutil
import tempfile
@@ -64,6 +65,7 @@ class Ncl(Package):
depends_on('bison', type='build')
depends_on('flex+lex')
depends_on('libiconv')
+ depends_on('tcsh')
# Also, the manual says that ncl requires zlib, but that comes as a
# mandatory dependency of libpng, which is a mandatory dependency of cairo.
@@ -101,6 +103,23 @@ class Ncl(Package):
placement='triangle_src',
when='+triangle')
+ def patch(self):
+ # Make configure scripts use Spack's tcsh
+ files = ['Configure'] + glob.glob('config/*')
+
+ filter_file('^#!/bin/csh -f', '#!/usr/bin/env csh', *files)
+
+ @run_before('install')
+ def filter_sbang(self):
+ # Filter sbang before install so Spack's sbang hook can fix it up
+ files = glob.glob('ncarg2d/src/bin/scripts/*')
+ files += glob.glob('ncarview/src/bin/scripts/*')
+ files += glob.glob('ni/src/scripts/*')
+
+ csh = join_path(self.spec['tcsh'].prefix.bin, 'csh')
+
+ filter_file('^#!/bin/csh', '#!{0}'.format(csh), *files)
+
def install(self, spec, prefix):
if (self.compiler.fc is None) or (self.compiler.cc is None):