Xpra: Ticket #1600: CUDA build errors with Fedora 27

The rawhide buildbot is spewing out:

found gcc version: 7.1.1
found CUDA compiler: /usr/local/cuda-8.0/bin/nvcc version 8.0.44
found CUDA compiler: /usr/local/cuda/bin/nvcc version 8.0.44
CUDA compiling ARGB_to_NV12     (no file)
 '/usr/local/cuda/bin/nvcc' '-fatbin' '-c' 'xpra/codecs/cuda_common/ARGB_to_NV12.cu' '-o' 'xpra/codecs/cuda_common/ARGB_to_NV12.fatbin' '-std=c++11' '-gencode=arch=compute_30,code=sm_30' '-gencode=arch=compute_35,code=sm_35' '-gencode=arch=compute_50,code=sm_50' '-gencode=arch=compute_52,code=sm_52' '-gencode=arch=compute_53,code=sm_53' '-gencode=arch=compute_60,code=sm_60' '-gencode=arch=compute_61,code=sm_61' '-gencode=arch=compute_62,code=sm_62'
Error: failed to compile CUDA kernel ARGB_to_NV12
/usr/include/bits/floatn.h(61): error: invalid argument to attribute "__mode__"
/usr/include/bits/floatn.h(73): error: identifier "__float128" is undefined
2 errors detected in the compilation of "/tmp/tmpxft_00004589_00000000-21_ARGB_to_NV12.compute_62.cpp1.ii".
error: Bad exit status from /var/tmp/rpm-tmp.1ToY7b (%build)
    Bad exit status from /var/tmp/rpm-tmp.1ToY7b (%build)

Hopefully a new CUDA SDK will come out and fix this?

Sun, 01 Oct 2017 05:39:16 GMT - Antoine Martin: status changed; resolution set

Workaround found here https://github.com/caffe2/caffe2/issues/1194#issuecomment-330668216 is to manually patch the system headers file /usr/include/bits/floatn.h (yukky but this works):

diff --git a/floatn.h b/floatn.h
index f93a9f8..96db3c3 100644
--- a/floatn.h
+++ b/floatn.h
@@ -34,6 +34,11 @@
 # define __HAVE_FLOAT128 0
+#undef __HAVE_FLOAT128
+#define __HAVE_FLOAT128 0
 /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
    from the default float, double and long double types in this glibc.  */
 #if __HAVE_FLOAT128

This will have to do for now, the proper fix needs to come from nvidia.

We now have beta builds for Fedora 27.

Sat, 28 Apr 2018 12:35:15 GMT - Antoine Martin:

Fedora 28 hits a new problem: #1800

Sat, 23 Jan 2021 05:28:47 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1600