Skip to content

Commit 28a1177

Browse files
jcelerierclaude
andcommitted
3rdparty: allow system override for miniply, mikktspace, vcglib, opengametools
Give the relocated standalone deps the same tri-state OSSIA_USE_SYSTEM_<pkg> find path + vendored fallback as the others, instead of vendored-only. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S5akSKFxSnxVz3RtLyU9QN
1 parent 2a72cc5 commit 28a1177

4 files changed

Lines changed: 58 additions & 10 deletions

File tree

3rdparty/mikktspace.cmake

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1-
add_library(mikktspace STATIC "${CMAKE_CURRENT_LIST_DIR}/mikktspace/mikktspace.c")
2-
target_include_directories(mikktspace SYSTEM PUBLIC "${CMAKE_CURRENT_LIST_DIR}/mikktspace")
3-
set_target_properties(mikktspace PROPERTIES UNITY_BUILD 0)
1+
score_use_system(use_sys mikktspace)
2+
if(use_sys)
3+
find_path(MIKKTSPACE_INCLUDE_DIR mikktspace.h)
4+
find_library(MIKKTSPACE_LIBRARY NAMES mikktspace)
5+
if(MIKKTSPACE_INCLUDE_DIR AND MIKKTSPACE_LIBRARY)
6+
add_library(mikktspace INTERFACE IMPORTED GLOBAL)
7+
target_include_directories(mikktspace SYSTEM INTERFACE "${MIKKTSPACE_INCLUDE_DIR}")
8+
target_link_libraries(mikktspace INTERFACE "${MIKKTSPACE_LIBRARY}")
9+
endif()
10+
endif()
11+
12+
if(NOT TARGET mikktspace)
13+
add_library(mikktspace STATIC "${CMAKE_CURRENT_LIST_DIR}/mikktspace/mikktspace.c")
14+
target_include_directories(mikktspace SYSTEM PUBLIC "${CMAKE_CURRENT_LIST_DIR}/mikktspace")
15+
set_target_properties(mikktspace PROPERTIES UNITY_BUILD 0)
16+
endif()

3rdparty/miniply.cmake

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1-
add_library(miniply STATIC "${CMAKE_CURRENT_LIST_DIR}/miniply/miniply.cpp")
2-
target_include_directories(miniply SYSTEM PUBLIC "${CMAKE_CURRENT_LIST_DIR}/miniply")
3-
set_target_properties(miniply PROPERTIES UNITY_BUILD 0)
1+
score_use_system(use_sys miniply)
2+
if(use_sys)
3+
find_path(MINIPLY_INCLUDE_DIR miniply.h)
4+
find_library(MINIPLY_LIBRARY NAMES miniply)
5+
if(MINIPLY_INCLUDE_DIR AND MINIPLY_LIBRARY)
6+
add_library(miniply INTERFACE IMPORTED GLOBAL)
7+
target_include_directories(miniply SYSTEM INTERFACE "${MINIPLY_INCLUDE_DIR}")
8+
target_link_libraries(miniply INTERFACE "${MINIPLY_LIBRARY}")
9+
endif()
10+
endif()
11+
12+
if(NOT TARGET miniply)
13+
add_library(miniply STATIC "${CMAKE_CURRENT_LIST_DIR}/miniply/miniply.cpp")
14+
target_include_directories(miniply SYSTEM PUBLIC "${CMAKE_CURRENT_LIST_DIR}/miniply")
15+
set_target_properties(miniply PROPERTIES UNITY_BUILD 0)
16+
endif()

3rdparty/opengametools.cmake

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,13 @@
1-
add_library(opengametools INTERFACE IMPORTED GLOBAL)
2-
target_include_directories(opengametools SYSTEM INTERFACE "${CMAKE_CURRENT_LIST_DIR}/opengametools/src")
1+
score_use_system(use_sys opengametools)
2+
set(OPENGAMETOOLS_INC "${CMAKE_CURRENT_LIST_DIR}/opengametools/src")
3+
if(use_sys)
4+
find_path(OPENGAMETOOLS_INCLUDE_DIR ogt_vox.h)
5+
if(OPENGAMETOOLS_INCLUDE_DIR)
6+
set(OPENGAMETOOLS_INC "${OPENGAMETOOLS_INCLUDE_DIR}")
7+
endif()
8+
endif()
9+
10+
if(NOT TARGET opengametools)
11+
add_library(opengametools INTERFACE IMPORTED GLOBAL)
12+
target_include_directories(opengametools SYSTEM INTERFACE "${OPENGAMETOOLS_INC}")
13+
endif()

3rdparty/vcglib.cmake

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,13 @@
1-
add_library(vcglib INTERFACE IMPORTED GLOBAL)
2-
target_include_directories(vcglib SYSTEM INTERFACE "${CMAKE_CURRENT_LIST_DIR}/vcglib")
1+
score_use_system(use_sys vcglib)
2+
set(VCGLIB_INC "${CMAKE_CURRENT_LIST_DIR}/vcglib")
3+
if(use_sys)
4+
find_path(VCGLIB_INCLUDE_DIR vcg/complex/complex.h)
5+
if(VCGLIB_INCLUDE_DIR)
6+
set(VCGLIB_INC "${VCGLIB_INCLUDE_DIR}")
7+
endif()
8+
endif()
9+
10+
if(NOT TARGET vcglib)
11+
add_library(vcglib INTERFACE IMPORTED GLOBAL)
12+
target_include_directories(vcglib SYSTEM INTERFACE "${VCGLIB_INC}")
13+
endif()

0 commit comments

Comments
 (0)