1) Replace --system-libclang with an explicit setting for the path to
nix libclang 3.9. Otherwise it will find system's libclang on darwin.
2) Remove clang/llvm from build inputs. This prevents ycm itself from
being compiled by clang 3.9. stdenv's standard compiler (gcc or
clang 3.7) will suffice.
3) Enable C++11 again as #16212 is caused by incopatibility between
clang 3.9 and libc++ 3.7, but we don't compile YCM with clang 3.9, so
this is not needed anymore.
tox/detox are removed; they are used to test multiple python
implementations in parallel, which isn't really appropriate for a Nix
install check. Also, because these were added to the propagated build
inputs, lots of unnecessary stuff ended up in the resulting closure.
Note that removing tox does not imply tests are not run; they never were
to begin with; this is a separate issue.
This fixes https://github.com/NixOS/nixpkgs/issues/16171
Also, for "correctness" ordinary build-time dependencies are added to
`buildInputs`; only inputs that are to be added to the python path are
added to `propagatedBuildInputs`.
Strongswan fails to compile on armv7l-linux with `--enable-aesni` and `--enable-rdrand` enabled. Errors are thrown about impossible constraints in asm (`--enable-rdrand`) or about gcc getting unknown command line parameters about aes (`--enable-aesni`). The options only makes sense on X86_64 processors.
The rdrand plugin is designed for Ivy Bridge processors:
> High quality / high performance random source using the Intel rdrand instruction found on Ivy Bridge processors
The aes-ni plugin also only exists on X86 processors (which have the AES instruction set)
Tested with a local override. The change triggers a (successful) rebuild on my X86_64 system. On armv7-linux this change fixes build errors.
See:
https://wiki.strongswan.org/issues/337