Browse Source

Merge pull request #1073 from Robadob/nvrtc_support

Correctly detect NVRTC and lack of stl support #1073
Christophe 4 năm trước cách đây
mục cha
commit
c6dfaed4a3
2 tập tin đã thay đổi với 6 bổ sung1 xóa
  1. 2 0
      glm/detail/setup.hpp
  2. 4 1
      glm/simd/platform.h

+ 2 - 0
glm/detail/setup.hpp

@@ -142,6 +142,8 @@
 // Android has multiple STLs but C++11 STL detection doesn't always work #284 #564
 #if GLM_PLATFORM == GLM_PLATFORM_ANDROID && !defined(GLM_LANG_STL11_FORCED)
 #	define GLM_HAS_CXX11_STL 0
+#elif GLM_COMPILER & GLM_COMPILER_CUDA_RTC
+#	define GLM_HAS_CXX11_STL 0
 #elif GLM_COMPILER & GLM_COMPILER_CLANG
 #	if (defined(_LIBCPP_VERSION) || (GLM_LANG & GLM_LANG_CXX11_FLAG) || defined(GLM_LANG_STL11_FORCED))
 #		define GLM_HAS_CXX11_STL 1

+ 4 - 1
glm/simd/platform.h

@@ -80,6 +80,7 @@
 #define GLM_COMPILER_CUDA75			0x10000001
 #define GLM_COMPILER_CUDA80			0x10000002
 #define GLM_COMPILER_CUDA90			0x10000004
+#define GLM_COMPILER_CUDA_RTC			0x10000100
 
 // SYCL
 #define GLM_COMPILER_SYCL			0x00300000
@@ -122,7 +123,9 @@
 #	if !defined(CUDA_VERSION) && !defined(GLM_FORCE_CUDA)
 #		include <cuda.h>  // make sure version is defined since nvcc does not define it itself!
 #	endif
-#	if CUDA_VERSION >= 8000
+#	if defined(__CUDACC_RTC__)
+#		define GLM_COMPILER GLM_COMPILER_CUDA_RTC
+#	elif CUDA_VERSION >= 8000
 #		define GLM_COMPILER GLM_COMPILER_CUDA80
 #	elif CUDA_VERSION >= 7500
 #		define GLM_COMPILER GLM_COMPILER_CUDA75