Skip to content

Commit

Permalink
[angle] Improve UX for unofficial CMake package (#28547)
Browse files Browse the repository at this point in the history
* [angle] Propagate transitive dependencies

* [angle] Add usage info for unofficial CMake targets

Only the unofficial::angle::libGLESv2 and unofficial::angle::libEGL
targets are meant to be used, because they are the targets that no other
depends on.

Co-authored-by: friendlyanon <friendlyanon@users.noreply.github.com>
  • Loading branch information
friendlyanon and friendlyanon committed Jan 4, 2023
1 parent 4548ef8 commit 58054d0
Show file tree
Hide file tree
Showing 7 changed files with 26 additions and 3 deletions.
3 changes: 2 additions & 1 deletion ports/angle/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,8 @@ else()
)
endif()

install(EXPORT ANGLEExport FILE unofficial-angle-config.cmake NAMESPACE unofficial::angle:: DESTINATION share/unofficial-angle)
install(EXPORT ANGLEExport FILE unofficial-angle-targets.cmake NAMESPACE unofficial::angle:: DESTINATION share/unofficial-angle)
install(FILES unofficial-angle-config.cmake DESTINATION share/unofficial-angle)

if(NOT DISABLE_INSTALL_HEADERS)
install(
Expand Down
1 change: 1 addition & 0 deletions ports/angle/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ vcpkg_from_github(
)

file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/unofficial-angle-config.cmake" DESTINATION "${SOURCE_PATH}")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/angle_commit.h" DESTINATION "${SOURCE_PATH}")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/angle_commit.h" DESTINATION "${SOURCE_PATH}/src/common")

Expand Down
7 changes: 7 additions & 0 deletions ports/angle/unofficial-angle-config.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
include(CMakeFindDependencyMacro)
find_dependency(ZLIB)
if(UNIX AND NOT APPLE)
find_dependency(X11 COMPONENTS Xext Xi)
endif()

include("${CMAKE_CURRENT_LIST_DIR}/unofficial-angle-targets.cmake")
8 changes: 8 additions & 0 deletions ports/angle/usage
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
The package angle provides unofficial CMake targets:

find_package(unofficial-angle REQUIRED CONFIG)
target_link_libraries(main PRIVATE unofficial::angle::libGLESv2)

# Or use the EGL target
find_package(unofficial-angle REQUIRED CONFIG)
target_link_libraries(main PRIVATE unofficial::angle::libEGL)
3 changes: 2 additions & 1 deletion ports/angle/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{
"name": "angle",
"version-string": "chromium_4472",
"port-version": 6,
"port-version": 7,
"description": [
"A conformant OpenGL ES implementation for Windows, Mac and Linux.",
"The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support."
],
"homepage": "https://github.com/google/angle",
"license": "BSD-3-Clause",
"dependencies": [
"egl-registry",
{
Expand Down
5 changes: 5 additions & 0 deletions versions/a-/angle.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "96213b303b5b0804d7c8e9b6b94aa3cd3cc90660",
"version-string": "chromium_4472",
"port-version": 7
},
{
"git-tree": "d48bbcf1eba07a4156e745140be81caff95b8757",
"version-string": "chromium_4472",
Expand Down
2 changes: 1 addition & 1 deletion versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@
},
"angle": {
"baseline": "chromium_4472",
"port-version": 6
"port-version": 7
},
"antlr4": {
"baseline": "4.11.1",
Expand Down

0 comments on commit 58054d0

Please sign in to comment.