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()