spack/var/spack/repos/builtin/packages/ape/package.py
Todd Gamblin a8ccb8e116 copyrights: update all files with license headers for 2021
- [x] add `concretize.lp`, `spack.yaml`, etc. to licensed files
- [x] update all licensed files to say 2013-2021 using
      `spack license update-copyright-year`
- [x] appease mypy with some additions to package.py that needed
      for oneapi.py
2021-01-02 12:12:00 -08:00

47 lines
1.7 KiB
Python

# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class Ape(Package):
"""A tool for generating atomic pseudopotentials within a Density-Functional
Theory framework"""
homepage = "http://www.tddft.org/programs/APE/"
url = "http://www.tddft.org/programs/APE/sites/default/files/ape-2.2.1.tar.gz"
version('2.2.1', sha256='1bdb7f987fde81f8a5f335da6b59fa884e6d185d4a0995c90fde7c04376ce9e3')
depends_on('gsl')
depends_on('libxc@:4.999', when='@2.3.0:')
depends_on('libxc@:2.2.2', when='@:2.2.1')
def install(self, spec, prefix):
args = []
args.extend([
'--prefix=%s' % prefix,
'--with-gsl-prefix=%s' % spec['gsl'].prefix,
'--with-libxc-prefix=%s' % spec['libxc'].prefix
])
# When preprocessor expands macros (i.e. CFLAGS) defined as quoted
# strings the result may be > 132 chars and is terminated.
# This will look to a compiler as an Unterminated character constant
# and produce Line truncated errors. To overcome this, add flags to
# let compiler know that the entire line is meaningful.
# TODO: For the lack of better approach, assume that clang is mixed
# TODO: with GNU fortran.
if (spec.satisfies('%apple-clang') or
spec.satisfies('%clang') or
spec.satisfies('%gcc')):
args.extend([
'FCFLAGS=-O2 -ffree-line-length-none'
])
configure(*args)
make()
make('install')