diff --git a/glm/detail/setup.hpp b/glm/detail/setup.hpp index 22298d03..34188c66 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 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