60 lines
2.9 KiB
CMake
60 lines
2.9 KiB
CMake
macro(use_glm GLM_PATH)
|
|
|
|
include_directories(${GLM_PATH})
|
|
|
|
set(GLM_SOURCE_PATH ${GLM_PATH}/glm)
|
|
|
|
file(GLOB GLM_ROOT_SOURCE ${GLM_SOURCE_PATH}/*.cpp)
|
|
file(GLOB GLM_ROOT_INLINE ${GLM_SOURCE_PATH}/*.inl)
|
|
file(GLOB GLM_ROOT_HEADER ${GLM_SOURCE_PATH}/*.hpp)
|
|
file(GLOB GLM_ROOT_TEXT ${GLM_PATH}/*.txt)
|
|
file(GLOB GLM_ROOT_MD ${GLM_PATH}/*.md)
|
|
file(GLOB GLM_ROOT_NAT ${GLM_PATH}/util/glm.natvis)
|
|
|
|
file(GLOB_RECURSE GLM_CORE_SOURCE ${GLM_SOURCE_PATH}/detail/*.cpp)
|
|
file(GLOB_RECURSE GLM_CORE_INLINE ${GLM_SOURCE_PATH}/detail/*.inl)
|
|
file(GLOB_RECURSE GLM_CORE_HEADER ${GLM_SOURCE_PATH}/detail/*.hpp)
|
|
|
|
file(GLOB_RECURSE GLM_EXT_SOURCE ${GLM_SOURCE_PATH}/ext/*.cpp)
|
|
file(GLOB_RECURSE GLM_EXT_INLINE ${GLM_SOURCE_PATH}/ext/*.inl)
|
|
file(GLOB_RECURSE GLM_EXT_HEADER ${GLM_SOURCE_PATH}/ext/*.hpp)
|
|
|
|
file(GLOB_RECURSE GLM_GTC_SOURCE ${GLM_SOURCE_PATH}/gtc/*.cpp)
|
|
file(GLOB_RECURSE GLM_GTC_INLINE ${GLM_SOURCE_PATH}/gtc/*.inl)
|
|
file(GLOB_RECURSE GLM_GTC_HEADER ${GLM_SOURCE_PATH}/gtc/*.hpp)
|
|
|
|
file(GLOB_RECURSE GLM_GTX_SOURCE ${GLM_SOURCE_PATH}/gtx/*.cpp)
|
|
file(GLOB_RECURSE GLM_GTX_INLINE ${GLM_SOURCE_PATH}/gtx/*.inl)
|
|
file(GLOB_RECURSE GLM_GTX_HEADER ${GLM_SOURCE_PATH}/gtx/*.hpp)
|
|
|
|
file(GLOB_RECURSE GLM_SIMD_SOURCE ${GLM_SOURCE_PATH}/simd/*.cpp)
|
|
file(GLOB_RECURSE GLM_SIMD_INLINE ${GLM_SOURCE_PATH}/simd/*.inl)
|
|
file(GLOB_RECURSE GLM_SIMD_HEADER ${GLM_SOURCE_PATH}/simd/*.h)
|
|
|
|
source_group("Text Files" FILES ${GLM_ROOT_TEXT} ${GLM_ROOT_MD})
|
|
source_group("Core Files" FILES ${GLM_CORE_SOURCE})
|
|
source_group("Core Files" FILES ${GLM_CORE_INLINE})
|
|
source_group("Core Files" FILES ${GLM_CORE_HEADER})
|
|
source_group("EXT Files" FILES ${GLM_EXT_SOURCE})
|
|
source_group("EXT Files" FILES ${GLM_EXT_INLINE})
|
|
source_group("EXT Files" FILES ${GLM_EXT_HEADER})
|
|
source_group("GTC Files" FILES ${GLM_GTC_SOURCE})
|
|
source_group("GTC Files" FILES ${GLM_GTC_INLINE})
|
|
source_group("GTC Files" FILES ${GLM_GTC_HEADER})
|
|
source_group("GTX Files" FILES ${GLM_GTX_SOURCE})
|
|
source_group("GTX Files" FILES ${GLM_GTX_INLINE})
|
|
source_group("GTX Files" FILES ${GLM_GTX_HEADER})
|
|
source_group("SIMD Files" FILES ${GLM_SIMD_SOURCE})
|
|
source_group("SIMD Files" FILES ${GLM_SIMD_INLINE})
|
|
source_group("SIMD Files" FILES ${GLM_SIMD_HEADER})
|
|
|
|
add_library(GLM STATIC ${GLM_ROOT_TEXT} ${GLM_ROOT_MD} ${GLM_ROOT_NAT}
|
|
${GLM_ROOT_SOURCE} ${GLM_ROOT_INLINE} ${GLM_ROOT_HEADER}
|
|
${GLM_CORE_SOURCE} ${GLM_CORE_INLINE} ${GLM_CORE_HEADER}
|
|
${GLM_EXT_SOURCE} ${GLM_EXT_INLINE} ${GLM_EXT_HEADER}
|
|
${GLM_GTC_SOURCE} ${GLM_GTC_INLINE} ${GLM_GTC_HEADER}
|
|
${GLM_GTX_SOURCE} ${GLM_GTX_INLINE} ${GLM_GTX_HEADER}
|
|
${GLM_SIMD_SOURCE} ${GLM_SIMD_INLINE} ${GLM_SIMD_HEADER})
|
|
|
|
endmacro()
|