Skip to content

Commit 6ee6568

Browse files
committed
add mgl library
1 parent 181a0af commit 6ee6568

File tree

8 files changed

+57
-21
lines changed

8 files changed

+57
-21
lines changed

.github/workflows/codeql.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: "CodeQL"
2-
on: [push, pull_request]
2+
on:
3+
push:
4+
branches:
5+
- master
36

47
jobs:
58
Analyze:

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,3 +121,6 @@
121121
[submodule "externals/wamr/zydis"]
122122
path = externals/wamr/zydis
123123
url = https://github.com/zyantific/zydis.git
124+
[submodule "externals/mgl/mgl"]
125+
path = externals/mgl/mgl
126+
url = https://github.com/ucpu/mgl.git

cmake/cage_copy_redist.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ function(cage_copy_redist)
2727
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/hsluv/hsluv.h" "hsluv" COPYONLY)
2828
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/jpeg/jpeg/LICENSE.md" "jpeg" COPYONLY)
2929
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/mbedtls/mbedtls/LICENSE" "mbedtls" COPYONLY)
30+
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/mgl/mgl/LICENSE" "mgl" COPYONLY)
3031
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/msdfgen/msdfgen/LICENSE.txt" "msdfgen" COPYONLY)
3132
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/ogg/ogg/COPYING" "ogg" COPYONLY)
3233
cage_copy_redist_license("${cage_copy_redist_current_list_dir}/../externals/openxr-sdk/OpenXR-SDK/LICENSE" "openxr-sdk" COPYONLY)

externals/CMakeLists.txt

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ add_subdirectory(fastnoise)
9696
add_subdirectory(glad)
9797
add_subdirectory(glfw)
9898
add_subdirectory(glm)
99+
add_subdirectory(mgl)
99100
add_subdirectory(openxr-sdk)
100101
add_subdirectory(plf)
101102
add_subdirectory(simplefilewatcher)
@@ -120,12 +121,14 @@ add_dependencies(png_static zlib)
120121
add_dependencies(tiff jpeg-static)
121122
add_dependencies(vorbis ogg)
122123

123-
function(disable_compilation_warnings target)
124+
function(external_target_properties target)
124125
if(NOT TARGET ${target})
125126
return()
126127
endif()
128+
set_target_properties(${target} PROPERTIES FOLDER cage/externals)
127129
get_target_property(imported ${target} IMPORTED)
128-
if(imported)
130+
get_target_property(type ${target} TYPE)
131+
if((imported) OR (type STREQUAL "INTERFACE_LIBRARY") OR (type STREQUAL "UTILITY"))
129132
return()
130133
endif()
131134
if(MSVC)
@@ -145,24 +148,6 @@ function(disable_compilation_warnings target)
145148
endif()
146149
endfunction()
147150

148-
function(external_target_folder target)
149-
if(TARGET ${target})
150-
set_target_properties(${target} PROPERTIES FOLDER cage/externals)
151-
endif()
152-
endfunction()
153-
154-
function(external_target_properties target)
155-
disable_compilation_warnings(${target})
156-
external_target_folder(${target})
157-
endfunction()
158-
159-
external_target_folder(generate_openxr_header)
160-
external_target_folder(jpeg-simd)
161-
external_target_folder(libcurl_object)
162-
external_target_folder(libcurl_static)
163-
external_target_folder(png_genfiles)
164-
external_target_folder(xr_global_generated_files)
165-
166151
external_target_properties(GameNetworkingSockets_s)
167152
external_target_properties(IrrXML)
168153
external_target_properties(SheenBidi)
@@ -178,23 +163,29 @@ external_target_properties(dualmc)
178163
external_target_properties(everest)
179164
external_target_properties(fastnoise)
180165
external_target_properties(freetype)
166+
external_target_properties(generate_openxr_header)
181167
external_target_properties(glad)
182168
external_target_properties(glfw)
183169
external_target_properties(harfbuzz)
184170
external_target_properties(hsluv)
185171
external_target_properties(iwasm_static)
172+
external_target_properties(jpeg-simd)
186173
external_target_properties(jpeg-static)
187174
external_target_properties(lib_msdfgen)
175+
external_target_properties(libcurl_object)
176+
external_target_properties(libcurl_static)
188177
external_target_properties(libprotobuf)
189178
external_target_properties(libprotoc)
190179
external_target_properties(libzstd_static)
191180
external_target_properties(mbedcrypto)
192181
external_target_properties(mbedtls)
193182
external_target_properties(mbedx509)
183+
external_target_properties(mgl)
194184
external_target_properties(ogg)
195185
external_target_properties(openxr_loader)
196186
external_target_properties(p256m)
197187
external_target_properties(pmp)
188+
external_target_properties(png_genfiles)
198189
external_target_properties(png_static)
199190
external_target_properties(protoc)
200191
external_target_properties(quickhull)
@@ -209,4 +200,5 @@ external_target_properties(vorbis)
209200
external_target_properties(vorbisenc)
210201
external_target_properties(vorbisfile)
211202
external_target_properties(xatlas)
203+
external_target_properties(xr_global_generated_files)
212204
external_target_properties(zlib)

externals/glfw/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@ message(STATUS "----------------------------------------------------------------
22
message(STATUS "glfw")
33
message(STATUS "----------------------------------------------------------------")
44

5+
if(APPLE)
6+
message(STATUS "skipping on macos - it is provided with mgl")
7+
return()
8+
endif()
9+
510
set(GLFW_BUILD_EXAMPLES OFF CACHE INTERNAL "Build the GLFW example programs")
611
set(GLFW_BUILD_TESTS OFF CACHE INTERNAL "Build the GLFW test programs")
712
set(GLFW_BUILD_DOCS OFF CACHE INTERNAL "Build the GLFW documentation")

externals/glm/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@ message(STATUS "----------------------------------------------------------------
22
message(STATUS "glm")
33
message(STATUS "----------------------------------------------------------------")
44

5+
if(APPLE)
6+
message(STATUS "skipping on macos - it is provided with mgl")
7+
return()
8+
endif()
9+
510
add_library(glm INTERFACE)
611
target_include_directories(glm INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/glm")
712

externals/mgl/CMakeLists.txt

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
message(STATUS "----------------------------------------------------------------")
2+
message(STATUS "mgl")
3+
message(STATUS "----------------------------------------------------------------")
4+
5+
if(NOT APPLE)
6+
message(STATUS "mgl is used on macos only - skipping")
7+
return()
8+
endif()
9+
10+
execute_process(COMMAND "bash" "clone_external.sh" WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/mgl/external" COMMAND_ECHO STDOUT)
11+
execute_process(COMMAND "bash" "build_external.sh" WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/mgl/external" COMMAND_ECHO STDOUT)
12+
13+
include(ExternalProject)
14+
15+
ExternalProject_Add(mgl
16+
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/mgl
17+
BUILD_IN_SOURCE 1
18+
CONFIGURE_COMMAND "" # skip configure
19+
BUILD_COMMAND make lib
20+
INSTALL_COMMAND "" # skip installation
21+
)
22+
23+
add_library(glfw INTERFACE)
24+
add_library(glm INTERFACE)
25+
26+
add_dependencies(glfw mgl)

externals/mgl/mgl

Submodule mgl added at f60e7b0

0 commit comments

Comments
 (0)