Cleanup
publish / publish (push) Successful in 12m29s

This commit is contained in:
khodowany
2026-09-10 09:21:04 -05:00
parent 2750dd7f3a
commit 48db1a287f
5 changed files with 191 additions and 95 deletions
+68 -52
View File
@@ -1,10 +1,6 @@
include(CMakeFindDependencyMacro)
find_dependency(Boost CONFIG REQUIRED COMPONENTS json)
find_dependency(OpenSSL CONFIG REQUIRED)
find_dependency(SQLite3 CONFIG REQUIRED)
find_dependency(raylib CONFIG REQUIRED)
find_dependency(miniaudio CONFIG REQUIRED)
function(modulus_define_bridge target)
if(NOT TARGET ${target})
@@ -17,54 +13,74 @@ set_target_properties(modulus::boost_json PROPERTIES
INTERFACE_LINK_LIBRARIES "Boost::boost;Boost::json"
)
modulus_define_bridge(modulus::openssl)
set_target_properties(modulus::openssl PROPERTIES
INTERFACE_LINK_LIBRARIES "OpenSSL::SSL;OpenSSL::Crypto"
)
function(modulus_require_openssl)
find_dependency(OpenSSL CONFIG REQUIRED)
modulus_define_bridge(modulus::openssl)
set_target_properties(modulus::openssl PROPERTIES
INTERFACE_LINK_LIBRARIES "OpenSSL::SSL;OpenSSL::Crypto"
)
endfunction()
modulus_define_bridge(modulus::sqlite)
set_target_properties(modulus::sqlite PROPERTIES
INTERFACE_LINK_LIBRARIES "SQLite::SQLite3"
)
function(modulus_require_sqlite)
find_dependency(SQLite3 CONFIG REQUIRED)
modulus_define_bridge(modulus::sqlite)
set_target_properties(modulus::sqlite PROPERTIES
INTERFACE_LINK_LIBRARIES "SQLite::SQLite3"
)
endfunction()
set(_modulus_raylib_target "")
if(TARGET raylib)
set(_modulus_raylib_target raylib)
elseif(TARGET raylib::raylib)
set(_modulus_raylib_target raylib::raylib)
function(modulus_require_raylib)
find_dependency(raylib CONFIG REQUIRED)
set(_modulus_raylib_target "")
if(TARGET raylib)
set(_modulus_raylib_target raylib)
elseif(TARGET raylib::raylib)
set(_modulus_raylib_target raylib::raylib)
endif()
if(NOT _modulus_raylib_target)
message(FATAL_ERROR "raylib package did not define a supported CMake target")
endif()
set(_modulus_raylib_link_libraries ${_modulus_raylib_target})
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
list(APPEND _modulus_raylib_link_libraries EGL GLESv2 drm gbm atomic dl)
endif()
modulus_define_bridge(modulus::raylib)
set_target_properties(modulus::raylib PROPERTIES
INTERFACE_LINK_LIBRARIES "${_modulus_raylib_link_libraries}"
)
unset(_modulus_raylib_link_libraries)
unset(_modulus_raylib_target)
endfunction()
function(modulus_require_miniaudio)
find_dependency(miniaudio CONFIG REQUIRED)
set(_modulus_miniaudio_target "")
if(TARGET miniaudio::miniaudio)
set(_modulus_miniaudio_target miniaudio::miniaudio)
elseif(TARGET miniaudio)
set(_modulus_miniaudio_target miniaudio)
endif()
if(NOT _modulus_miniaudio_target)
message(FATAL_ERROR "miniaudio package did not define a supported CMake target")
endif()
modulus_define_bridge(modulus::miniaudio)
set_target_properties(modulus::miniaudio PROPERTIES
INTERFACE_LINK_LIBRARIES "${_modulus_miniaudio_target}"
)
unset(_modulus_miniaudio_target)
endfunction()
# CMakeDeps creates enabled bridges before including this build module. Keep
# raylib's system libraries after its static archive, as in installed packages.
if(TARGET modulus::raylib)
modulus_require_raylib()
endif()
if(NOT _modulus_raylib_target)
message(FATAL_ERROR "raylib package did not define a supported CMake target")
endif()
set(_modulus_raylib_link_libraries ${_modulus_raylib_target})
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
list(APPEND _modulus_raylib_link_libraries EGL GLESv2 drm gbm atomic dl)
endif()
modulus_define_bridge(modulus::raylib)
set_target_properties(modulus::raylib PROPERTIES
INTERFACE_LINK_LIBRARIES "${_modulus_raylib_link_libraries}"
)
unset(_modulus_raylib_link_libraries)
unset(_modulus_raylib_target)
set(_modulus_miniaudio_target "")
if(TARGET miniaudio::miniaudio)
set(_modulus_miniaudio_target miniaudio::miniaudio)
elseif(TARGET miniaudio)
set(_modulus_miniaudio_target miniaudio)
endif()
if(NOT _modulus_miniaudio_target)
message(FATAL_ERROR "miniaudio package did not define a supported CMake target")
endif()
modulus_define_bridge(modulus::miniaudio)
set_target_properties(modulus::miniaudio PROPERTIES
INTERFACE_LINK_LIBRARIES "${_modulus_miniaudio_target}"
)
unset(_modulus_miniaudio_target)