Add PythonPackage base class
- Add a PythonPackage class with build system support. - Support build phases in PythonPackage - Add a custom sanity check for PythonPackages - Get rid of nolink dependencies in python packages - Update spack create to use new PythonPackage class - Port most of Python packages to new PythonPackage class - Conducted a massive install and activate of Python packages. - Fixed bugs introduced by install and activate. - Update API docs on PythonPackage
This commit is contained in:

committed by
Todd Gamblin

parent
1f49493fee
commit
c0aaa8fcea
@@ -22,12 +22,10 @@
|
||||
# License along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
import os
|
||||
|
||||
from spack import *
|
||||
|
||||
|
||||
class PyCffi(Package):
|
||||
class PyCffi(PythonPackage):
|
||||
"""Foreign Function Interface for Python calling C code"""
|
||||
homepage = "http://cffi.readthedocs.org/en/latest/"
|
||||
# base https://pypi.python.org/pypi/cffi
|
||||
@@ -35,18 +33,15 @@ class PyCffi(Package):
|
||||
|
||||
version('1.1.2', 'ca6e6c45b45caa87aee9adc7c796eaea')
|
||||
|
||||
extends('python')
|
||||
depends_on('py-setuptools', type='build')
|
||||
depends_on('py-pycparser', type=('build', 'run'))
|
||||
depends_on('libffi')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
# This sets the compiler (and flags) that distutils will use
|
||||
# to create the final shared library. It will use the
|
||||
# compiler specified by the environment variable 'CC' for all
|
||||
# other compilation. We are setting the 'LDSHARED" to the
|
||||
# spack compiler wrapper plus a few extra flags necessary for
|
||||
# building the shared library.
|
||||
os.environ['LDSHARED'] = "{0} -shared -pthread".format(spack_cc)
|
||||
|
||||
setup_py('install', '--prefix=%s' % prefix)
|
||||
spack_env.set('LDSHARED', "{0} -shared -pthread".format(spack_cc))
|
||||
|
Reference in New Issue
Block a user