From 2536c4c6b6c2c597201c6d79d56e8d64e5b062c9 Mon Sep 17 00:00:00 2001 From: dachziegel Date: Sat, 15 Mar 2014 11:04:12 +0100 Subject: [PATCH 1/2] added GLM_FUNC_DECL to avoid nvcc warnings --- glm/detail/type_mat2x3.hpp | 2 +- glm/gtx/euler_angles.hpp | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/glm/detail/type_mat2x3.hpp b/glm/detail/type_mat2x3.hpp index 1850fb72..e9e91883 100644 --- a/glm/detail/type_mat2x3.hpp +++ b/glm/detail/type_mat2x3.hpp @@ -153,7 +153,7 @@ namespace detail T const & s); template - tmat2x3 operator+ ( + GLM_FUNC_DECL tmat2x3 operator+ ( tmat2x3 const & m1, tmat2x3 const & m2); diff --git a/glm/gtx/euler_angles.hpp b/glm/gtx/euler_angles.hpp index 991cf085..d3d6be05 100644 --- a/glm/gtx/euler_angles.hpp +++ b/glm/gtx/euler_angles.hpp @@ -54,67 +54,67 @@ namespace glm /// Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X. /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleX( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleX( T const & angleX); /// Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y. /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleY( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleY( T const & angleY); /// Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z. /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleZ( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleZ( T const & angleZ); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleXY( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleXY( T const & angleX, T const & angleY); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleYX( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleYX( T const & angleY, T const & angleX); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleXZ( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleXZ( T const & angleX, T const & angleZ); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleZX( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleZX( T const & angle, T const & angleX); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleYZ( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleYZ( T const & angleY, T const & angleZ); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleZY( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleZY( T const & angleZ, T const & angleY); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template - detail::tmat4x4 eulerAngleYXZ( + GLM_FUNC_DECL detail::tmat4x4 eulerAngleYXZ( T const & yaw, T const & pitch, T const & roll); @@ -122,7 +122,7 @@ namespace glm /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template - detail::tmat4x4 yawPitchRoll( + GLM_FUNC_DECL detail::tmat4x4 yawPitchRoll( T const & yaw, T const & pitch, T const & roll); @@ -130,22 +130,22 @@ namespace glm /// Creates a 2D 2 * 2 rotation matrix from an euler angle. /// @see gtx_euler_angles template - detail::tmat2x2 orientate2(T const & angle); + GLM_FUNC_DECL detail::tmat2x2 orientate2(T const & angle); /// Creates a 2D 4 * 4 homogeneous rotation matrix from an euler angle. /// @see gtx_euler_angles template - detail::tmat3x3 orientate3(T const & angle); + GLM_FUNC_DECL detail::tmat3x3 orientate3(T const & angle); /// Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template - detail::tmat3x3 orientate3(detail::tvec3 const & angles); + GLM_FUNC_DECL detail::tmat3x3 orientate3(detail::tvec3 const & angles); /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template - detail::tmat4x4 orientate4(detail::tvec3 const & angles); + GLM_FUNC_DECL detail::tmat4x4 orientate4(detail::tvec3 const & angles); /// @} }//namespace glm From 9fddf6225b3551de4ce7ece9cdabaaaeedac9aaf Mon Sep 17 00:00:00 2001 From: dachziegel Date: Sat, 15 Mar 2014 11:29:01 +0100 Subject: [PATCH 2/2] include to make sure CUDA_VERSION is defined --- glm/detail/setup.hpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/glm/detail/setup.hpp b/glm/detail/setup.hpp index a6f22ec8..b360816e 100644 --- a/glm/detail/setup.hpp +++ b/glm/detail/setup.hpp @@ -211,6 +211,9 @@ // CUDA #elif defined(__CUDACC__) +# if !defined(CUDA_VERSION) && !defined(GLM_FORCE_CUDA) +# include // make sure version is defined since nvcc does not define it itself! +# endif # if CUDA_VERSION < 3000 # error "GLM requires CUDA 3.0 or higher" # else