mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-23 23:19:55 +08:00
90 lines
2.6 KiB
CMake
90 lines
2.6 KiB
CMake
|
# https://github.com/raysan5/raylib/issues/388
|
||
|
if(TARGET_TRIPLET MATCHES "^arm" OR TARGET_TRIPLET MATCHES "uwp$")
|
||
|
message(FATAL_ERROR "raylib doesn't support ARM or UWP.")
|
||
|
endif()
|
||
|
|
||
|
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||
|
message(
|
||
|
"raylib currently requires the following libraries from the system package manager:
|
||
|
libgl1-mesa-dev
|
||
|
libx11-dev
|
||
|
libxcursor-dev
|
||
|
libxinerama-dev
|
||
|
libxrandr-dev
|
||
|
These can be installed on Ubuntu systems via sudo apt install libgl1-mesa-dev libx11-dev libxcursor-dev libxinerama-dev libxrandr-dev"
|
||
|
)
|
||
|
endif()
|
||
|
|
||
|
include(vcpkg_common_functions)
|
||
|
|
||
|
vcpkg_from_github(
|
||
|
OUT_SOURCE_PATH SOURCE_PATH
|
||
|
REPO raysan5/raylib
|
||
|
REF f37e55a77bd6177dbaea4d7f484961c09104e104
|
||
|
SHA512 57146ebc7ab22a4e60c1d9eecd4c7a8f1930d6709f45761af809da9ea4f161e9fd450fa1042252a80bd7952ed9571a5d8dee4d454c8903a778e3e1328300b2bd
|
||
|
HEAD_REF master
|
||
|
)
|
||
|
|
||
|
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SHARED)
|
||
|
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" STATIC)
|
||
|
|
||
|
if("non-audio" IN_LIST FEATURES)
|
||
|
set(USE_AUDIO OFF)
|
||
|
else()
|
||
|
set(USE_AUDIO ON)
|
||
|
endif()
|
||
|
|
||
|
vcpkg_configure_cmake(
|
||
|
SOURCE_PATH ${SOURCE_PATH}
|
||
|
PREFER_NINJA
|
||
|
OPTIONS
|
||
|
-DBUILD_EXAMPLES=OFF
|
||
|
-DBUILD_GAMES=OFF
|
||
|
-DSHARED=${SHARED}
|
||
|
-DSTATIC=${STATIC}
|
||
|
-DUSE_AUDIO=${USE_AUDIO}
|
||
|
-DUSE_EXTERNAL_GLFW=OFF # externl glfw3 causes build errors on Windows
|
||
|
OPTIONS_DEBUG
|
||
|
-DENABLE_ASAN=ON
|
||
|
-DENABLE_UBSAN=ON
|
||
|
-DENABLE_MSAN=OFF
|
||
|
OPTIONS_RELEASE
|
||
|
-DENABLE_ASAN=OFF
|
||
|
-DENABLE_UBSAN=OFF
|
||
|
-DENABLE_MSAN=OFF
|
||
|
)
|
||
|
|
||
|
vcpkg_install_cmake()
|
||
|
|
||
|
vcpkg_copy_pdbs()
|
||
|
|
||
|
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT})
|
||
|
|
||
|
configure_file(
|
||
|
${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake
|
||
|
${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake
|
||
|
@ONLY
|
||
|
)
|
||
|
|
||
|
file(REMOVE_RECURSE
|
||
|
${CURRENT_PACKAGES_DIR}/debug/include
|
||
|
${CURRENT_PACKAGES_DIR}/debug/share
|
||
|
)
|
||
|
|
||
|
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||
|
vcpkg_replace_string(
|
||
|
${CURRENT_PACKAGES_DIR}/include/raylib.h
|
||
|
"defined(USE_LIBTYPE_SHARED)"
|
||
|
"1 // defined(USE_LIBTYPE_SHARED)"
|
||
|
)
|
||
|
endif()
|
||
|
|
||
|
# Install usage
|
||
|
configure_file(${CMAKE_CURRENT_LIST_DIR}/usage ${CURRENT_PACKAGES_DIR}/share/${PORT}/usage @ONLY)
|
||
|
|
||
|
# Handle copyright
|
||
|
configure_file(${SOURCE_PATH}/LICENSE.md ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
|
||
|
|
||
|
# CMake integration test
|
||
|
#vcpkg_test_cmake(PACKAGE_NAME ${PORT})
|