Commit Graph

96 Commits

Author SHA1 Message Date
Adam J. Stewart
b240fdb2b9 Add latest version of Python 2 (#2668) 2016-12-25 18:53:16 -08:00
Sergey Kosukhin
d8c4418952 Updated python: refactoring and warning messages. 2016-12-13 08:36:56 +01:00
Sergey Kosukhin
3ba88a7509 Updated python: pass LDSHARED to dependants' setup scripts. 2016-12-13 08:36:56 +01:00
Sergey Kosukhin
ec855df071 Updated python: account for lib64 when filtering compilers. 2016-12-13 08:36:56 +01:00
Sergey Kosukhin
58cb2cc2af Updated python: reformat code. 2016-12-13 08:36:56 +01:00
Denis Davydov
a5fb33b0e4 python: symlink lib64/python2.7/lib-dynload/ to lib/python2.7/lib-dynload/ (#2295) 2016-11-16 07:29:08 -07:00
Sergey Kosukhin
62eba4774d Updated python package reflecting the changes in 9347f86 2016-11-01 16:15:34 +01:00
Barry Smith
a714377123 python: PYTHONHOME may not be the same as the prefix of the python executable (#2173)
On MacOS, brew installs /usr/local/bin/python but the Python prefix is not /usr/local/bin
Use the python command sys.exec to get the correct directory, instead of the ad hoc self.prefix
previously used

This was a bear to debug; been driving me nuts since I started using spack.
Since spack passes PYTHONHOME down to package builds in the environment
it was passing PYTHONHOME of /usr/local/bin to the PETSc build that uses Python so
the PETSc Python ./configure errored immediately with

ImportError: No module named site

since python could find no python modules. Todd Gamblin pointed out that my first try to fix
this was wrong since it assumed the spack python was the same python used to run spack. Elizabeth Fischer
suggested how to get it to work also with python3

Funded-by: IDEAS
Project: IDEAS/xSDK
Time:  7 hours
Thanks-to: Todd Gamblin, Elizabeth Fischer
2016-10-30 17:13:16 -07:00
Glenn Johnson
c1284a9046 Stop python from linking with system ncurses (#1672)
Python will look to link with libncursesw in preference to libncurses. Since
ncurses in spack is built without suffixes there is no libncursesw and
python will link to the system libncursesw for _curses.so and
_curses_panel.so, as well as libpanelw for _curses_panel.so.

This PR introduces a patch that simple removes the check for ncursesw in
setup.py and therefore sets `curses_library` to `ncurses`.
2016-09-21 04:02:28 -07:00
Patrick Gartung
e6dc448f18 Compiling python with gnu c++ on macos fails with toolboxglue enabled. 2016-09-20 23:34:15 -07:00
Adam J. Stewart
8a0824df09 Update matplotlibrc filtering for GUI backends 2016-08-11 10:28:35 -05:00
Todd Gamblin
84e331c586 Remove unneeded noqa comments. 2016-08-10 16:33:39 -07:00
Todd Gamblin
240f1fd223 Spack packages now PEP8 compliant. 2016-08-10 16:33:39 -07:00
Joseph Ciurej
ac2e0962ce Improved the build flag construction code in the python install method. 2016-07-22 11:12:02 -07:00
Joseph Ciurej
fb2d2303d6 Fixed a bug that was causing Python installs to be affected by user config. 2016-07-22 11:11:08 -07:00
Adam J. Stewart
583232ea52 Build Python with Tkinter support 2016-07-18 07:51:08 -05:00
becker33
f761130343 Merge pull request #1187 from paulhopkins/bugfix/python-updates
Bugfix/python updates
2016-07-15 14:04:46 -07:00
Ben Boeckel
0ca1a481a3 python: setup the dependent environment properly
We want the run dependencies of all build and run dependencies of the
current package.
2016-07-14 16:21:46 -04:00
Paul Hopkins
49e8e4b590 Add comments explaining UCS4 and prevent variant being used on Python 3.3 and above 2016-07-08 13:47:25 +01:00
Paul Hopkins
a2be05f24b Fix whitespace 2016-07-07 14:00:37 +01:00
Paul Hopkins
719b6bfffd Modify range for ucs4 2.* configure arguments 2016-07-07 13:18:40 +01:00
Paul Hopkins
8c1274bbbb Fix Python configure arguments for ucs4 variant on Python 3.0 and above 2016-07-07 13:12:43 +01:00
Paul Hopkins
fb6d850637 Add more python versions 2016-07-07 13:09:08 +01:00
Paul Hopkins
61fe89bda0 Add ucs4 unicode variant to Python package 2016-07-06 18:29:54 +01:00
Gregory L. Lee
e0fbf14f99 consolidated f2py regex 2016-06-21 09:23:58 -07:00
Gregory L. Lee
4041f45b6c fixed conflicts in python package 2016-06-21 08:47:11 -07:00
Adam J. Stewart
536fa73d5f Python flake8 overhaul 2016-06-17 13:33:09 -05:00
Adam J. Stewart
80d444624b Fix activation of sites.py for sncosmo 2016-06-17 11:08:16 -05:00
Todd Gamblin
e7ced54369 Correct LLNL LGPL license template for clarity. 2016-05-11 21:22:25 -07:00
Glenn Johnson
dfc0efa8ed Put f2py of py-numpy in python ignore list. (#827)
There are many python packages that depend on py-numpy. Each one of
those will have a copy of f2py that will need to be put in the ignore
list for activation. Thise PR adds f2py to the ignore list in the python
package.py file so that it does not have to be done for each package
that depends on py-numpy. This follows the model of what is done for
py-setuptools.

This PR also removes the f2py ignore expression for python packages
that were using it as it is no longer needed in the individual packages.
2016-04-26 10:32:14 -07:00
alalazo
758a9c9096 python extensions : create PYTHONPATH in module files 2016-03-24 10:57:46 +01:00
Todd Gamblin
c4134ee71e Fix #608: broken numpy build.
- Failed to catch all instances of modify_module when it was renamed
  to setup_dependent_package.

- Refactored remaining modify_module calls.

- Also modified Python's setup_dependent_package slightly: only
  creates empty site-packages directory for Python extensions now, not
  for all dependents.
2016-03-23 00:36:32 -07:00
Todd Gamblin
b1516f64eb Rename some environment methods to be less repetitive, add set_path. 2016-03-21 16:01:40 -07:00
Todd Gamblin
439d47b4e4 Refactor environment setup.
- Gave setup_environment and setup_dependent_environment more similar
  signatures. They now allows editing the Spack env and the runtime
  env for *this* package and dependents, respectively.

- modify_module renamed to setup_dependent_python_module for symmetry
  with setup_dependent_environment and to avoid confusion with
  environment modules.

- removed need for patching Package objects at runtime.

- adjust packages to reflect these changes.
2016-03-21 16:01:35 -07:00
alalazo
ec8cc2b528 PYTHONPATH : python patches methods for its extensions 2016-03-18 14:40:53 +01:00
alalazo
e558809043 python : fixed typo 2016-03-17 19:32:31 +01:00
alalazo
f0f0663d1b package : split environment_modifications into setup_environment and setup_dependent_environment.
package : renamed `module_modifications` to `modify_module` for consistency
2016-03-17 15:11:39 +01:00
alalazo
597727f8be tclmodules : added hooks to process EnvironmentModifications objects 2016-03-16 15:19:13 +01:00
alalazo
b45ec3f04e environment : simplified modification of the environment 2016-03-16 10:55:28 +01:00
alalazo
572cb93bf8 package : renamed setup_dependent_environment to module_modifications 2016-03-15 14:05:30 +01:00
alalazo
c85888eb57 package : added environment_modifications 2016-03-15 13:36:41 +01:00
Todd Gamblin
1fe196f95c whitespace and formatting 2016-03-10 01:29:55 -08:00
Gregory L. Lee
19d10291bf modify compiler commands in python config files, fix for #431 2016-02-18 15:45:29 -08:00
Todd Gamblin
8d6342c53d Merge branch 'mplegendre-multi_pkgsrc_roots' into develop
- This moves var/spack/packages to var/spack/repos/builtin/packages.

- Packages that did not exist in the source branch, or were changed in
  develop, were moved into var/spack/repos/builtin/packages as part of
  the integration.

Conflicts:
	lib/spack/spack/test/unit_install.py
	var/spack/repos/builtin/packages/clang/package.py
2016-01-19 01:16:08 -08:00
Todd Gamblin
c65fd3a289 Merge branch 'develop' into mplegendre-multi_pkgsrc_roots
Conflicts:
	lib/spack/spack/cmd/create.py
	lib/spack/spack/cmd/extensions.py
	lib/spack/spack/cmd/fetch.py
	lib/spack/spack/cmd/uninstall.py
	lib/spack/spack/config.py
	lib/spack/spack/database.py
	lib/spack/spack/directory_layout.py
	lib/spack/spack/packages.py
	lib/spack/spack/spec.py
2015-12-25 16:35:55 -08:00
Todd Gamblin
89d5127900 New, cleaner package repository structure.
Package repositories now look like this:

    top-level-dir/
        repo.yaml
        packages/
            libelf/
                package.py
            mpich/
                package.py
            ...

This leaves room at the top level for additional metadata, source,
per-repo configs, indexes, etc., and it makes it easy to see that
something is a spack repo (just look for repo.yaml and packages).
2015-11-26 14:19:27 -08:00