mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-24 03:17:49 +08:00
145 lines
6.0 KiB
CMake
145 lines
6.0 KiB
CMake
include(vcpkg_common_functions)
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO Milerius/shiva
|
|
REF 1.0
|
|
SHA512 d1ce33e89b17fa8f82e21b51dfa1308e38c617fea52c34a20b7b6c8643318280df24c043238ddd73ba2dbc139c5b5de1c2cb3add1f5629a54694c78b415d73d1
|
|
HEAD_REF master
|
|
)
|
|
|
|
vcpkg_configure_cmake(
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
PREFER_NINJA
|
|
OPTIONS
|
|
-DSHIVA_BUILD_TESTS=OFF -DSHIVA_USE_SFML_AS_RENDERER=ON -DSHIVA_INSTALL_PLUGINS=ON -DSHIVA_BUILD_EXAMPLES=OFF
|
|
)
|
|
|
|
vcpkg_install_cmake()
|
|
|
|
|
|
if (VCPKG_CMAKE_SYSTEM_NAME)
|
|
file(GLOB PLUGINS_RELEASE ${SOURCE_PATH}/bin/Release/systems/*)
|
|
file(GLOB PLUGINS_DEBUG ${SOURCE_PATH}/bin/Debug/systems/*)
|
|
else()
|
|
file(GLOB PLUGINS_RELEASE ${SOURCE_PATH}/bin/Release/systems/*.dll)
|
|
file(GLOB PLUGINS_DEBUG ${SOURCE_PATH}/bin/Debug/systems/*.dll)
|
|
endif()
|
|
|
|
message(STATUS "PLUGINS_RELEASE -> ${PLUGINS_RELEASE}")
|
|
message(STATUS "PLUGINS_DEBUG -> ${PLUGINS_DEBUG}")
|
|
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/shiva-sfml)
|
|
|
|
|
|
if (VCPKG_CMAKE_SYSTEM_NAME)
|
|
set(SUFFIX_BINARY lib)
|
|
else()
|
|
set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled)
|
|
set(SUFFIX_BINARY bin)
|
|
endif()
|
|
|
|
##! Pre removing
|
|
if (VCPKG_CMAKE_SYSTEM_NAME)
|
|
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib)
|
|
endif()
|
|
|
|
##! Include
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include/shiva-sfml)
|
|
|
|
##! Release
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY})
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva/plugins)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Release)
|
|
|
|
##! Debug
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY})
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva/plugins)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml)
|
|
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Debug)
|
|
|
|
##! Copy Plugins
|
|
file(COPY ${PLUGINS_RELEASE} DESTINATION ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Release)
|
|
file(COPY ${PLUGINS_DEBUG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Debug)
|
|
|
|
if (NOT VCPKG_CMAKE_SYSTEM_NAME)
|
|
find_file(LUADLL lua.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(FMTDLL fmt.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(FLACDLL FLAC.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(FREETYPEDLL freetype.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(LIBBZ2DLL libbz2.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(LIBPNG16DLL libpng16.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(OGGDLL ogg.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(OPENAL32DLL OpenAL32.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(SFMLAUDIO2DLL sfml-audio-2.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(SFMLGRAPHICS2DLL sfml-graphics-2.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(SFMLSYSTEM2DLL sfml-system-2.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(SFMLWINDOW2DLL sfml-window-2.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(VORBISDLL vorbis.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(VORBISENCDLL vorbisenc.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(VORBISFILEDLL vorbisfile.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
find_file(ZLIB1DLL zlib1.dll PATHS ${CURRENT_INSTALLED_DIR}/bin)
|
|
set(DEPENDANCIES_RELEASE_DLL
|
|
${LUADLL}
|
|
${FMTDLL}
|
|
${FLACDLL}
|
|
${FREETYPEDLL}
|
|
${LIBBZ2DLL}
|
|
${LIBPNG16DLL}
|
|
${OGGDLL}
|
|
${OPENAL32DLL}
|
|
${SFMLAUDIO2DLL}
|
|
${SFMLGRAPHICS2DLL}
|
|
${SFMLSYSTEM2DLL}
|
|
${SFMLWINDOW2DLL}
|
|
${VORBISDLL}
|
|
${VORBISENCDLL}
|
|
${VORBISFILEDLL}
|
|
${ZLIB1DLL})
|
|
|
|
find_file(LUADLL_D lua.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(FMTDLL_D fmtd.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(FLACDLL_D FLAC.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(FREETYPEDLL_D freetyped.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(LIBBZ2DLL_D libbz2d.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(LIBPNG16DLL_D libpng16d.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(OGGDLL_D ogg.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(OPENAL32DLL_D OpenAL32.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(SFMLAUDIO2DLL_D sfml-audio-d-2.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(SFMLGRAPHICS2DLL_D sfml-graphics-d-2.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(SFMLSYSTEM2DLL_D sfml-system-d-2.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(SFMLWINDOW2DLL_D sfml-window-d-2.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(VORBISDLL_D vorbis.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(VORBISENCDLL_D vorbisenc.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(VORBISFILEDLL_D vorbisfile.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
find_file(ZLIB1DLL_D zlibd1.dll PATHS ${CURRENT_INSTALLED_DIR}/debug/bin)
|
|
set(DEPENDANCIES_DEBUG_DLL
|
|
${LUADLL_D}
|
|
${FMTDLL_D}
|
|
${FLACDLL_D}
|
|
${FREETYPEDLL_D}
|
|
${LIBBZ2DLL_D}
|
|
${LIBPNG16DLL_D}
|
|
${OGGDLL_D}
|
|
${OPENAL32DLL}
|
|
${SFMLAUDIO2DLL_D}
|
|
${SFMLGRAPHICS2DLL_D}
|
|
${SFMLSYSTEM2DLL_D}
|
|
${SFMLWINDOW2DLL_D}
|
|
${VORBISDLL_D}
|
|
${VORBISENCDLL_D}
|
|
${VORBISFILEDLL_D}
|
|
${ZLIB1DLL_D}
|
|
)
|
|
|
|
file(COPY ${DEPENDANCIES_RELEASE_DLL} DESTINATION ${CURRENT_PACKAGES_DIR}/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Release)
|
|
file(COPY ${DEPENDANCIES_DEBUG_DLL} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/${SUFFIX_BINARY}/shiva/plugins/shiva-sfml/Debug)
|
|
endif()
|
|
|
|
file(WRITE ${CURRENT_PACKAGES_DIR}/include/shiva-sfml/empty.h "")
|
|
file(WRITE ${CURRENT_PACKAGES_DIR}/share/shiva-sfml/copyright "")
|