This fixes cudatoolkit building on non-sandboxed system.
The cudatoolkit tests run each of the CUDA binaries as a small smoke
test just to make sure they all can at least somewhat run.
However, the `cuda-gdb` binary doesn't run correctly on non-sandboxed
systems because it picks up versions of Python from /usr/lib.
This PR disables the smoke tests for now. They should be re-enabled
when we figure out how to make them work for cuda-gdb on non-sandboxed
systems.
This PR is for #57939.
This fixes the following error when starting nvvp or nsight:
```
(java:23876): Gtk-WARNING **: 19:12:17.777: Unable to locate theme engine in module_path: "adwaita",
A fatal error has been detected by the Java Runtime Environment:
SIGSEGV (0xb) at pc=0x00007f957f7b67fe, pid=23876, tid=140281059333888
JRE version: Java(TM) SE Runtime Environment (8.0_77-b03) (build 1.8.0_77-b03)
Java VM: Java HotSpot(TM) 64-Bit Server VM (25.77-b03 mixed mode linux-amd64 compressed oops)
Problematic frame:
C [libpixbufloader-bmp.so+0x27fe] gdk_pixbuf__bmp_image_load_increment+0xeee
```
Since GDK_PIXBUF_MODULE_FILE should match the version we actually link
to, we override the environment variable using the one provided by the
gdk_pixbuf setup-hook.
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances
* Add a "lib" output containing (for the moment) only libOpenCL. This
reduces the closure size of opensubdiv and blender by about 2 GiB.
* Add a "doc" output (about ~200 MiB).
* Remove the "sdk" output since it was worse than useless: all of the
"sdk" output was also included in "out", so it actually increased
disk space usage.
* Run patchelf on ELF binaries only.
- Set a cmake flag to allow cmake to find CUDA automatically.
- Pass -D_FORCE_INLINES to work around
/nix/store/8sl4jfs3nq0pkq4gg655s3axrxdx7z29-glibc-2.24-dev/include/string.h: In function 'void* __mempcpy_inline(void*, const void*, size_t)':
/nix/store/8sl4jfs3nq0pkq4gg655s3axrxdx7z29-glibc-2.24-dev/include/string.h:650:42: error: 'memcpy' was not declared in this scope
https://github.com/BVLC/caffe/issues/4046
This fixes OpenSubdiv and Blender.
This seems to have been confusing people, using both xlibs and xorg, etc.
- Avoided renaming local (and different) xlibs binding in gcc*.
- Fixed cases where both xorg and xlibs were used.
Hopefully everything still works as before.
This effectively reverts 86c283824f
("If cuda headers are presented to nix [...]") and all the following
workarounds that was added due to that commit.
As far as I can tell[1] this hack isn't needed anymore. And moving
includes to $out/usr_include causes pain for cudatoolkit users, so
better get rid of it.
In patches that did more than the $out/usr_include workaround, I only
changed the line back to $out/include instead of re-generating the
patches and fully removing the changed line.
[1]: I build tested blender and caffe, and temporarily added
recurseIntoAttrs to rPackages and haskellPackages so that nox-review
could get proper coverage. However, many of the packages do not build
even before this patch. I also built CUDA samples with cudatoolkit7
that ran fine.
This is needed for cuda 6.5 or else nsight will not find them. In cuda 7.0 the
samples are already in $out/samples. Older versions do not build due to broken
dependency (python-minimal).
There is not much different between the cudatoolkit
expressions:
pkgs/development/compilers/cudatoolkit/5.5.nix
pkgs/development/compilers/cudatoolkit/6.0.nix
pkgs/development/compilers/cudatoolkit/6.5.nix
This commit removes those and replaces them with
pkgs/development/compilers/cudatoolkit/generic.nix
and adds cudatoolkit version 7