master
ブランチ master
VulkanExample / dep / include / glm / CMakeLists.txt
2.5 KB、69行 生 Blame 履歴
1file(GLOB ROOT_SOURCE *.cpp)
2file(GLOB ROOT_INLINE *.inl)
3file(GLOB ROOT_HEADER *.hpp)
4file(GLOB ROOT_TEXT ../*.txt)
5file(GLOB ROOT_MD ../*.md)
6file(GLOB ROOT_NAT ../util/glm.natvis)
7
8file(GLOB_RECURSE CORE_SOURCE ./detail/*.cpp)
9file(GLOB_RECURSE CORE_INLINE ./detail/*.inl)
10file(GLOB_RECURSE CORE_HEADER ./detail/*.hpp)
11
12file(GLOB_RECURSE EXT_SOURCE ./ext/*.cpp)
13file(GLOB_RECURSE EXT_INLINE ./ext/*.inl)
14file(GLOB_RECURSE EXT_HEADER ./ext/*.hpp)
15
16file(GLOB_RECURSE GTC_SOURCE ./gtc/*.cpp)
17file(GLOB_RECURSE GTC_INLINE ./gtc/*.inl)
18file(GLOB_RECURSE GTC_HEADER ./gtc/*.hpp)
19
20file(GLOB_RECURSE GTX_SOURCE ./gtx/*.cpp)
21file(GLOB_RECURSE GTX_INLINE ./gtx/*.inl)
22file(GLOB_RECURSE GTX_HEADER ./gtx/*.hpp)
23
24file(GLOB_RECURSE SIMD_SOURCE ./simd/*.cpp)
25file(GLOB_RECURSE SIMD_INLINE ./simd/*.inl)
26file(GLOB_RECURSE SIMD_HEADER ./simd/*.h)
27
28source_group("Text Files" FILES ${ROOT_TEXT} ${ROOT_MD})
29source_group("Core Files" FILES ${CORE_SOURCE})
30source_group("Core Files" FILES ${CORE_INLINE})
31source_group("Core Files" FILES ${CORE_HEADER})
32source_group("EXT Files" FILES ${EXT_SOURCE})
33source_group("EXT Files" FILES ${EXT_INLINE})
34source_group("EXT Files" FILES ${EXT_HEADER})
35source_group("GTC Files" FILES ${GTC_SOURCE})
36source_group("GTC Files" FILES ${GTC_INLINE})
37source_group("GTC Files" FILES ${GTC_HEADER})
38source_group("GTX Files" FILES ${GTX_SOURCE})
39source_group("GTX Files" FILES ${GTX_INLINE})
40source_group("GTX Files" FILES ${GTX_HEADER})
41source_group("SIMD Files" FILES ${SIMD_SOURCE})
42source_group("SIMD Files" FILES ${SIMD_INLINE})
43source_group("SIMD Files" FILES ${SIMD_HEADER})
44
45add_library(glm-header-only INTERFACE)
46add_library(glm::glm-header-only ALIAS glm-header-only)
47
48target_include_directories(glm-header-only INTERFACE
49 "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>"
50 "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
51)
52
53if (GLM_BUILD_LIBRARY)
54 add_library(glm
55 ${ROOT_TEXT} ${ROOT_MD} ${ROOT_NAT}
56 ${ROOT_SOURCE} ${ROOT_INLINE} ${ROOT_HEADER}
57 ${CORE_SOURCE} ${CORE_INLINE} ${CORE_HEADER}
58 ${EXT_SOURCE} ${EXT_INLINE} ${EXT_HEADER}
59 ${GTC_SOURCE} ${GTC_INLINE} ${GTC_HEADER}
60 ${GTX_SOURCE} ${GTX_INLINE} ${GTX_HEADER}
61 ${SIMD_SOURCE} ${SIMD_INLINE} ${SIMD_HEADER}
62 )
63 add_library(glm::glm ALIAS glm)
64 target_link_libraries(glm PUBLIC glm-header-only)
65else()
66 add_library(glm INTERFACE)
67 add_library(glm::glm ALIAS glm)
68 target_link_libraries(glm INTERFACE glm-header-only)
69endif()