Commit graph

27745 commits

Author SHA1 Message Date
lou.lawrence@kitware.com
012758c179 Windows: Create installer and environment
* Add 'make-installer' command for Windows

* Add '--bat' arg to env activate, env deactivate and unload commands

* An equivalent script to setup-env on linux: spack_cmd.bat. This script
has a wrapper to evaluate cd, load/unload, env activate/deactivate.(#21734)

* Add spacktivate and config editor (#22049)

* spack_cmd: will find python and spack on its own. It preferentially
tries to use python on your PATH (#22414)

* Ignore Windows python installer if found (#23134)

* Bundle git in windows installer (#23597)

* Add Windows section to Getting Started document
(#23131), (#23295), (#24240)

Co-authored-by: Stephen Crowell <stephen.crowell@kitware.com>
Co-authored-by: lou.lawrence@kitware.com <lou.lawrence@kitware.com>
Co-authored-by: Betsy McPhail <betsy.mcphail@kitware.com>
Co-authored-by: Jared Popelar <jpopelar@txcorp.com>
Co-authored-by: Ben Cowan <benc@txcorp.com>

Update Installer CI

Co-authored-by: John Parent <john.parent@kitware.com>
2022-03-17 09:01:01 -07:00
Betsy McPhail
a7101db39d MSVC Compiler Find and vcvars env integration (#22856)
Made the vcvars batch script location a member variable of the msvc compiler subclass, initialized from the compiler executable path.  Added a setup_custom_environment() method to the msvc subclass that sources the vcvars script, dumps the environment, and copies the relevant environment variables to the Spack environment.  Added class variables to the Windows OS and MSVC compiler subclasses to enable finding the compiler executables and determining their versions.
2022-03-17 09:01:01 -07:00
loulawrence
f587a9ce68 use pytest stdout/err capture (#22584)
* On windows, write to StringIO without redirection in test cases to avoid conflicting with logger
2022-03-17 09:01:01 -07:00
Ben Cowan
a0164793cb Features/windows install (#22204)
* Fixed path and uid issues.

* Added needed import statement; kluged .exe extension.

* Got package to build.  Some manual intervention necessary, including sourcing the MSVC setup script and having certain configuration parameters.

* Removed CMake executable suffix hack.
2022-03-17 09:01:01 -07:00
Betsy McPhail
d4d101f57e Allow 'spack external find' to find executables on the system path (#22091)
Co-authored-by: Lou Lawrence <lou.lawrence@kitware.com>
2022-03-17 09:01:01 -07:00
Betsy McPhail
fb0e91c534 Windows: Symlink support
To provide Windows-compatible functionality, spack code should use
llnl.util.symlink instead of os.symlink. On non-Windows platforms
and on Windows where supported, os.symlink will still be used.

Use junctions when symlinks aren't supported on Windows (#22583)

Support islink for junctions (#24182)

Windows: Update llnl/util/filesystem

* Use '/' as path separator on Windows.
* Recognizing that Windows paths start with '<Letter>:/' instead of '/'

Co-authored-by: lou.lawrence@kitware.com <lou.lawrence@kitware.com>
Co-authored-by: John Parent <john.parent@kitware.com>
2022-03-17 09:01:01 -07:00
Betsy McPhail
a7de2fa380 Create rename utility function
os.rename() fails on Windows if file already exists.

Create getuid utility function (#21736)

On Windows, replace os.getuid with ctypes.windll.shell32.IsUserAnAdmin().

Tests: Use getuid util function

Co-authored-by: lou.lawrence@kitware.com <lou.lawrence@kitware.com>
Co-authored-by: Betsy McPhail <betsy.mcphail@kitware.com>
2022-03-17 09:01:01 -07:00
Betsy McPhail
b60a0eea01 Workarounds for install errors on Windows (#21890)
1. Forwarding sys.stdin, e.g. use input_multiprocess_fd,
gives an error on Windows. Skipping for now

3.  subprocess_context needs to serialize for Windows, like it does
for Mac.

Co-authored-by: lou.lawrence@kitware.com <lou.lawrence@kitware.com>
Co-authored-by: John Parent <john.parent@kitware.com>
2022-03-17 09:01:01 -07:00
Ben Cowan
81bc00d61f Adding basic Windows features (#21259)
* Snapshot of some MSVC infrastructure added during experiments a while ago.  Rebasing from spack/develop.

* Added platform and OS definitions for Windows.

* Updated Windows platform file to conform to new archspec use.

* Added Windows as a platform; introduced some debugging code.

* Added type annotations.

* Fixed copyright.

* Removed print statements.

* Ensure `spack arch` returns correctly on Windows (#21428)

* Correctly identify windows as 'windows-Windows10-AMD64'
2022-03-17 09:01:01 -07:00
Wouter Deconinck
b26b3bebb4
assimp: depends on pkgconfig; disable bundled dependencies (#29551)
* [assimp] depends_on pkgconfig and disable hunter, build zlib/minizip
2022-03-17 15:56:33 +01:00
Erik Schnetter
e174623edf
openssh: Update to version 8.9 (#29539) 2022-03-17 08:18:51 -06:00
Harmen Stoppels
55544950e2
PackageViewMixin: fix symlinks conflict issue (#29515)
`stat`'ing a file in the dst dir is the wrong thing to do, you should
`lstat` to capture broken symlinks.
2022-03-17 08:18:28 -06:00
Valentin Volkl
3544b0274f
fastjet: use mirror for sources (#29357)
as a workaround for https://github.com/spack/spack/issues/20050
2022-03-17 12:21:36 +00:00
haralmha
9ba41449a9
Add intermediate folder in lib to LD_LIBRARY_PATH (#29519) 2022-03-17 12:20:22 +00:00
Erik Schnetter
5fd05a8cbe
openssl: Deprecate old versions (#29554) 2022-03-17 06:02:56 -06:00
Jen Herting
5f3ab83e2d
New package: py-quart (#29142)
* [py-quart] created template

* [py-quart]

- added homepage
- added description
- added dependencies
- removed fixmes

* [py-quart] removed setuptools dependency
2022-03-17 05:42:31 -06:00
Wouter Deconinck
fa9894ae16
assimp: remove -Werror to allow compilation on Intel oneAPI (#29552) 2022-03-17 03:54:53 -06:00
Tom Scogland
3648adc2a7
python: allow versions with garbage suffix (#29543)
* python: allow versions with garbage suffix

Ubuntu 22.04 preview python prints version as 3.10.2+, the + causes
version parsing to fail and breaks detection.

* Add version comment

* match VALID_VERSION regex
2022-03-17 03:54:29 -06:00
Seth R. Johnson
4ef534b19b
libiconv,lmod: improvements for static builds (#29493)
* libiconv: compile with pic even when static build

* lmod: require shared lua

It seems to be unable to detect lua-posix when using a static lua:
```
Error: The follow lua module(s) are missing:  posix
```
2022-03-16 22:31:33 +01:00
Erik Schnetter
73287df7c5
openssl: Security update (#29538) 2022-03-16 13:47:04 -06:00
Jen Herting
993ce4c095
[py-configparser] added version 5.2.0 (#29136)
* [py-configparser] added version 5.2.0

* [py-configparser] fixed setuptools versions and added setuptools_scm
2022-03-16 14:13:08 -05:00
Jen Herting
4b9f216c11
New package: py-hypercorn (#29141)
* [py-hypercorn] created template

* [py-hypercorn]

- added homepage
- added description
- added dependencies
- removed fixmes

* [py-hypercorn] removed setuptools dependency and added version restriction for py-typing-extensions
2022-03-16 14:12:27 -05:00
Adam J. Stewart
508e3e03b9
py-numpy: add v1.22.3 (#29425) 2022-03-16 19:24:10 +01:00
Olivier Cessenat
9b0c2cb954
diffutils: work around for nvhpc not 11 compliant for __builtin_add_overflow (#28451) 2022-03-16 12:34:58 -04:00
Charles Doutriaux
ea93b1a03b
Py kosh (#29532) 2022-03-16 09:16:55 -05:00
Alberto Invernizzi
d3131cd2da
constrain dependency as needed by neovim (#29252) 2022-03-15 19:38:21 -06:00
Simon Flood
3a5ae0fb66
Added R 4.1.3 to package.py (#29495) 2022-03-15 20:11:11 -05:00
Tom Scogland
94794d061a
optimize instantiation and comparison of versions (#29429)
Re-work the checks and comparisons around commit versions, when no
commit version is involved the overhead is now in the noise, where one
is the overhead is now constant rather than linear.
2022-03-15 18:53:28 +00:00
Larry Knox
1250fac467
Add changes to test functions for checking spack versions of hdf5 with (#29159)
develop in the version string.  The versions from the HDF5 code were not
matching because 'develop-' is not part of the HDF5 version.  Also, the
develop-x.x versions in spack omit the release version (third) number
because the branch spans all of the release versions.
2022-03-15 12:22:30 -06:00
Harmen Stoppels
8c59736ff9
libdrm: add docs variants and missing dependency (#29423) 2022-03-15 17:38:57 +01:00
Simon Frasch
825fed2ffa
spla: add version 1.5.4 (#29509) 2022-03-15 16:14:17 +01:00
haralmha
be58d354ac
py-stomp-py: Add new package (#29380)
* py-stomp-py: Add package

* Specify python and py-docopt dependencies
2022-03-15 08:02:41 -06:00
FJ-NaokiMatsumura
4176ce5c07
h5z-zfp: fix build with Fujitsu compiler (#29029) 2022-03-15 05:46:21 -06:00
Toyohisa Kameyama
8409443b1f
jogl: new package (#29332) 2022-03-15 04:10:59 -06:00
Toyohisa Kameyama
aee763015e
glugen: new package. (#29312) 2022-03-15 00:01:15 -07:00
Carlos Bederián
50b5b314b3
petsc, py-petsc4py: add 3.16.5 (#29505)
* petsc: add 3.16.5

* py-petsc4py: add 3.16.5
2022-03-14 19:15:04 -07:00
Jon Rood
8a754ad502
amr-wind: Fix hypre dependency. (#29504) 2022-03-14 19:10:21 -06:00
Axel Huebl
7f03724db2
py-pybind11: 2.9.1 (#29387)
* py-pybind11: 2.9.1

Add the latest releases of pybind11.

* Bump requirements

according to `pyproject.toml`
2022-03-14 16:06:12 -05:00
Axel Huebl
ed359cb00b
Update: py-cmake (#28760)
* Update: py-cmake

Add additional dependencies as declared by the `py-cmake` repository.

Note: for either from-source or from-binary builds, this downloads
additional software via the network. We might want to propose upstream
patches to make this work on nodes without internet connection.

* Add Review Comments + Newest Version

* Add: Ninja

Preferred generator according to outputs and upstream repo logic

* Attempt to use resource() for CMake source
2022-03-14 13:21:54 -07:00
Jen Herting
f5a2d87eb2
[py-watchdog] added version 2.1.6 (#29137)
* [py-watchdog] switched to pypi and audited dependencies

* [py-watchdog] added version 2.1.6

* [py-watchdog] updated dependencies for old versions

* [py-watchdog] added when for variant

* [py-watchdog] added some newlines to make flake8 happy
2022-03-14 14:46:53 -05:00
eugeneswalker
c3b6b3036d
ci: add e4s mac stack (#29476) 2022-03-14 09:32:09 -07:00
Sergey Kosukhin
f1bdbefd46
mpich: fix the detection of the package (#29284) 2022-03-14 16:33:56 +01:00
Tim Haines
f14840fcf2
Dyninst: add v12.1.0 (#29482) 2022-03-14 07:53:00 -07:00
Ben Morgan
2e3bea8e17
vecgeom: add v1.1.19 (#29488)
Adjust build args for new CUDA build mechanism.
2022-03-14 06:34:33 -06:00
Harmen Stoppels
474493713b
compiler.py: early return in compiler_environment when no modules (#29441) 2022-03-14 11:27:49 +00:00
François Trahay
ccfaec7b1c
eztrace: new version and refactor for cmake/autotools build (#29458) 2022-03-14 06:32:19 -04:00
Mark W. Krentel
4635c813e0
hsa-rocr-dev, llvm-amdgpu: change dependency libelf to elf (#29408)
* hsa-rocr-dev, llvm-amdgpu: change dependency libelf to elf

Change the libelf dependency to the virtual elf for two rocm packages.
This allows other packages (hpctoolkit) to combine rocm and dyninst
(with elfutils) while still being able to build rocm with libelf when
needed, eg darwin.

* add comment describing include path for libelf vs elfutils
2022-03-14 04:30:55 -06:00
Seth R. Johnson
a4f9d4fa4a
hdf5: relax fortran constraint (#29472) 2022-03-14 09:39:35 +01:00
Axel Huebl
32281ee40e
toml11: v3.7.1 (#29483)
Add the latest toml11 release :)
2022-03-14 08:18:14 +01:00
Vicente Mataix Ferrándiz
8ab3b56e00
FreeFem: new version 4.10 (#29438)
* Adding release 4.10

* Incorrect checksum

* Update sums

* Revert tar

* Update sum for tar
2022-03-13 11:57:06 -04:00