This is in principle supported already, but requires a patch to avoid build errors.
Closes#15302
Co-authored-by: Michael Kuhn <michael.kuhn@informatik.uni-hamburg.de>
* Separate Apple Clang from LLVM Clang
Apple Clang is a compiler of its own. All places
referring to "-apple" suffix have been updated.
* Hack to use a dash in 'apple-clang'
To be able to use autodoc from Sphinx we need
a valid Python name for the module that contains
Apple's Clang code.
* Updated packages to account for the existence of apple-clang
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
* Added unit test for XCode related functions
Co-authored-by: Gregory Becker <becker33@llnl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
* short-circuit is_activated check when the extendee is installed upstream
* add test for checking activation status of packages with an extendee installed upstream
spack config add <value>: add nested value value to the configuration scope specified
spack config remove/rm: remove specified configuration from the relevant scope
The rose library uses the `strtoflt128` and `quadmath_snprintf`
functions. In order to successfully link the rose library, chill must
also link the GCC libquadmath library to resolve the two functions. This
patch changes the chill build to include this library.
Chill will also not compile unless headers from the gmp and isl
libraries are found in the includes path. Two patches - one each for gmp
and isl - modify the chill build process to add options to specify those
paths. These options follow the similar pattern as seen with BOOSTHOME
and ROSEHOME options which already exist in the chill build process.
Because of the addition of GMPHOME and ISLHOME options, build
requirements for gmp and isl are also added.
* Update package.py
* edit confliction when add package 'meam'
The USER-MEAMC fully replaces the MEAM package, which has been removed from LAMMPS after the 12 December 2018 version.
* gromacs: fix fftw dependency
Only depend on fftw+mpi when gromacs is built with mpi,
and depend on fftw~mpi otherwise.
* gromacs: fix cmake dependency
master branch depends on cmake 3.11 (as specified in CMakeLists.txt
cmake dependency is also bumped to 3.11 when fj compilers are used
in order to fix OpenMP detection.
* Some minor fixes to set_permissions() in file_permissions.py
The set_permissions() routine claims to prevent users from creating
world writable suid binaries. However, it seems to only be checking
for/preventing group writable suid binaries.
This patch modifies the routine to check for both world and group
writable suid binaries, and complain appropriately.
* permissions.py: Add test to check blocks world writable SUID files
The original test_chmod_rejects_group_writable_suid tested
that the set_permissions() function in
lib/spack/spack/util/file_permissions.py
would raise an exception if changed permission on a file with
both SUID and SGID plus sticky bits is chmod-ed to g+rwx and o+rwx.
I have modified so that more narrowly tests a file with SUID
(and no SGID or sticky bit) set is chmod-ed to g+w.
I have added a second test test_chmod_rejects_world_writable_suid
that checks that exception is raised if an SUID file is chmod-ed
to o+w
* file_permissions.py: Raise exception when try to make sgid file world writable
Updated set_permissions() in file_permissions.py to also raise
an exception if try to make an SGID file world writable. And
added corresponding unit test as well.
* Remove debugging prints from permissions.py
* Module index should not be unconditionally overwritten
Uncovered after we switched our CI to generate modules for packages
one-by-one rather than in bulk. This overwrote a complete module index
with an index with a single entry, and broke our downstream Spack
instances that needed the upstream module index.
I get the following error message, if I do not use editline from the system.
```
>> 3090 Undefined symbols for architecture x86_64:
3091 "_tgetent", referenced from:
3092 _terminal_set in libedit.a(terminal.c.o)
3093 "_tgetflag", referenced from:
3094 _terminal_set in libedit.a(terminal.c.o)
3095 "_tgetnum", referenced from:
3096 _terminal_set in libedit.a(terminal.c.o)
...
3110 _terminal_insertwrite in libedit.a(terminal.c.o)
3111 _terminal_clear_EOL in libedit.a(terminal.c.o)
3112 _terminal_clear_screen in libedit.a(terminal.c.o)
3113 _terminal_beep in libedit.a(terminal.c.o)
3114 ...
3115 ld: symbol(s) not found for architecture x86_64
```
* Added unit tests to Github Actions
* Set user e-mail and name for git tests to succeed
* Simplify setup.sh logic
* Replicate Travis script on Github Actions
* Update flags since '.' is not allowed
* Added badge, simplified workflow
* Remove pinning of coverage
* Remove unit tests run on Github Actions from Travis