mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-01 15:31:47 +08:00
6028fd5e1a
* update opengl and install all headers * improve angle * update egl-registry * fix osx regression * update baseline. * fix uwp regressions * fix osx and linux regression * add encoding patch * bump glad control * rechdeck gl visibility from native build * removed unnecessary commented code * add GL_VISIBILITY to the exported targets Co-authored-by: dan-shaw <51385773+dan-shaw@users.noreply.github.com>
76 lines
2.8 KiB
CMake
76 lines
2.8 KiB
CMake
if (VCPKG_TARGET_IS_LINUX)
|
|
message(WARNING "Building with a gcc version less than 6.1 is not supported.")
|
|
message(WARNING "${PORT} currently requires the following libraries from the system package manager:\n libx11-dev\n libmesa-dev\n libxi-dev\n libxext-dev\n\nThese can be installed on Ubuntu systems via apt-get install libx11-dev libmesa-dev libxi-dev libxext-dev.")
|
|
endif()
|
|
|
|
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
|
set(ANGLE_CPU_BITNESS ANGLE_IS_32_BIT_CPU)
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
|
set(ANGLE_CPU_BITNESS ANGLE_IS_64_BIT_CPU)
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
|
set(ANGLE_CPU_BITNESS ANGLE_IS_32_BIT_CPU)
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
|
set(ANGLE_CPU_BITNESS ANGLE_IS_64_BIT_CPU)
|
|
else()
|
|
message(FATAL_ERROR "Unsupported architecture: ${VCPKG_TARGET_ARCHITECTURE}")
|
|
endif()
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO google/angle
|
|
REF 1fdf6ca5141d8e349e875eab6e51d93d929a7f0e
|
|
SHA512 2553307f3d10b5c32166b9ed610b4b15310dccba00c644cd35026de86d87ea2e221c2e528f33b02f01c1ded2f08150e429de1fa300b73d655f8944f6f5047a82
|
|
# On update check headers against opengl-registry
|
|
PATCHES
|
|
001-fix-uwp.patch
|
|
002-fix-builder-error.patch
|
|
)
|
|
|
|
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
|
file(COPY ${CMAKE_CURRENT_LIST_DIR}/commit.h DESTINATION ${SOURCE_PATH})
|
|
|
|
vcpkg_configure_cmake(
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
PREFER_NINJA
|
|
OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=1
|
|
OPTIONS
|
|
-D${ANGLE_CPU_BITNESS}=1
|
|
)
|
|
|
|
vcpkg_install_cmake()
|
|
|
|
vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-angle TARGET_PATH share/unofficial-angle)
|
|
|
|
vcpkg_copy_pdbs()
|
|
|
|
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
|
|
|
# File conflict with opengl-registry! Make sure headers are similar on Update!
|
|
# angle defines some additional entrypoints.
|
|
# opengl-registry probably needs an upstream update to account for those
|
|
# Due to that all angle headers get moved to include/angle.
|
|
# If you want to use those instead of the onces provided by opengl-registry make sure
|
|
# VCPKG_INSTALLED_DIR/include/angle is before VCPKG_INSTALLED_DIR/include
|
|
file(GLOB_RECURSE angle_includes "${CURRENT_PACKAGES_DIR}/include")
|
|
file(COPY ${angle_includes} DESTINATION "${CURRENT_PACKAGES_DIR}/include/angle")
|
|
|
|
set(_double_files
|
|
include/GLES/egl.h
|
|
include/GLES/gl.h
|
|
include/GLES/glext.h
|
|
include/GLES/glplatform.h
|
|
include/GLES2/gl2.h
|
|
include/GLES2/gl2ext.h
|
|
include/GLES2/gl2platform.h
|
|
include/GLES3/gl3.h
|
|
include/GLES3/gl31.h
|
|
include/GLES3/gl32.h
|
|
include/GLES3/gl3platform.h)
|
|
foreach(_file ${_double_files})
|
|
if(EXISTS "${CURRENT_PACKAGES_DIR}/${_file}")
|
|
file(REMOVE "${CURRENT_PACKAGES_DIR}/${_file}")
|
|
endif()
|
|
endforeach()
|
|
|
|
|