aboutsummaryrefslogtreecommitdiff
path: root/ports/glbinding
diff options
context:
space:
mode:
authormyd7349 <myd7349@gmail.com>2019-06-23 08:16:07 +0800
committermyd7349 <myd7349@gmail.com>2019-06-23 08:16:07 +0800
commit644851da5fbe46aadd0a8fa54e1d7d213f469fb0 (patch)
tree3f5d20aca85fcf02375cf553e893c105758a5d39 /ports/glbinding
parentf1870ae02bedbaa5a501ddf3a7ba5d0a743a1053 (diff)
parentf3db66b403840b24ea2612d09cca30a5285f5ea3 (diff)
downloadvcpkg-644851da5fbe46aadd0a8fa54e1d7d213f469fb0.tar.gz
vcpkg-644851da5fbe46aadd0a8fa54e1d7d213f469fb0.zip
Merge branch 'master' into sx-init
Diffstat (limited to 'ports/glbinding')
-rw-r--r--ports/glbinding/0001_force-system-install.patch (renamed from ports/glbinding/force-system-install.patch)0
-rw-r--r--ports/glbinding/0002_fix-uwpmacro.patch33
-rw-r--r--ports/glbinding/0003_fix-cmake-configs-paths.patch62
-rw-r--r--ports/glbinding/0004_fix-config-expected-paths.patch35
-rw-r--r--ports/glbinding/CONTROL4
-rw-r--r--ports/glbinding/portfile.cmake32
6 files changed, 150 insertions, 16 deletions
diff --git a/ports/glbinding/force-system-install.patch b/ports/glbinding/0001_force-system-install.patch
index 1674f145a..1674f145a 100644
--- a/ports/glbinding/force-system-install.patch
+++ b/ports/glbinding/0001_force-system-install.patch
diff --git a/ports/glbinding/0002_fix-uwpmacro.patch b/ports/glbinding/0002_fix-uwpmacro.patch
new file mode 100644
index 000000000..61c179662
--- /dev/null
+++ b/ports/glbinding/0002_fix-uwpmacro.patch
@@ -0,0 +1,33 @@
+diff --git a/source/glbinding/CMakeLists.txt b/source/glbinding/CMakeLists.txt
+index 97654c8..bca68d1 100644
+--- a/source/glbinding/CMakeLists.txt
++++ b/source/glbinding/CMakeLists.txt
+@@ -261,6 +261,11 @@ target_link_libraries(${target}
+ # Compile definitions
+ #
+
++
++if (CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
++ target_compile_definitions(${target} PRIVATE SYSTEM_WINDOWS WINDOWS_STORE)
++endif()
++
+ target_compile_definitions(${target}
+ PRIVATE
+ # since we use stl and stl is intended to use exceptions, exceptions should not be disabled
+diff --git a/source/glbinding/source/getProcAddress.cpp b/source/glbinding/source/getProcAddress.cpp
+index c1cfc5c..7e5f8bc 100644
+--- a/source/glbinding/source/getProcAddress.cpp
++++ b/source/glbinding/source/getProcAddress.cpp
+@@ -18,7 +18,11 @@ namespace glbinding {
+
+ ProcAddress getProcAddress(const char * name)
+ {
+- static auto module = LoadLibrary(_T("OPENGL32.DLL"));
++#ifdef WINDOWS_STORE
++ static auto module = ::LoadPackagedLibrary(_T("OPENGL32.DLL"), 0);
++#else
++ static auto module = ::LoadLibrary(_T("OPENGL32.DLL"));
++#endif
+
+ // Prevent static linking of opengl32
+ static auto wglGetProcAddress_ = reinterpret_cast<void * (__stdcall *)(const char *)>(::GetProcAddress(module, "wglGetProcAddress"));
diff --git a/ports/glbinding/0003_fix-cmake-configs-paths.patch b/ports/glbinding/0003_fix-cmake-configs-paths.patch
new file mode 100644
index 000000000..359837784
--- /dev/null
+++ b/ports/glbinding/0003_fix-cmake-configs-paths.patch
@@ -0,0 +1,62 @@
+diff --git a/3rdparty/KHR/CMakeLists.txt b/3rdparty/KHR/CMakeLists.txt
+index 25fac3a..429544f 100644
+--- a/3rdparty/KHR/CMakeLists.txt
++++ b/3rdparty/KHR/CMakeLists.txt
+@@ -43,7 +43,7 @@ add_library(${target} INTERFACE)
+ add_library(externals::${target} ALIAS ${target})
+
+ # Export library for downstream projects
+-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake)
++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake)
+
+
+ #
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 700b48b..8aaab8d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -141,15 +141,15 @@ endif()
+ if(1)
+ # Install into the system (/usr/bin or /usr/local/bin)
+ set(INSTALL_ROOT "share/${project}") # /usr/[local]/share/<project>
+- set(INSTALL_CMAKE "share/${project}/cmake") # /usr/[local]/share/<project>/cmake
++ set(INSTALL_CMAKE "share/${project}") # /usr/[local]/share/<project>/cmake
+ set(INSTALL_EXAMPLES "share/${project}") # /usr/[local]/share/<project>
+ set(INSTALL_DATA "share/${project}") # /usr/[local]/share/<project>
+ set(INSTALL_BIN "bin") # /usr/[local]/bin
+ set(INSTALL_SHARED "lib") # /usr/[local]/lib
+ set(INSTALL_LIB "lib") # /usr/[local]/lib
+ set(INSTALL_INCLUDE "include") # /usr/[local]/include
+- set(INSTALL_DOC "share/doc/${project}") # /usr/[local]/share/doc/<project>
+- set(INSTALL_SHORTCUTS "share/applications") # /usr/[local]/share/applications
++ set(INSTALL_DOC "share/${project}/doc") # /usr/[local]/share/doc/<project>
++ set(INSTALL_SHORTCUTS "share/${project}/applications") # /usr/[local]/share/applications
+ set(INSTALL_ICONS "share/pixmaps") # /usr/[local]/share/pixmaps
+ set(INSTALL_INIT "etc/init") # /etc/init (upstart init scripts)
+ else()
+diff --git a/source/glbinding-aux/CMakeLists.txt b/source/glbinding-aux/CMakeLists.txt
+index 61cc166..cb0758a 100644
+--- a/source/glbinding-aux/CMakeLists.txt
++++ b/source/glbinding-aux/CMakeLists.txt
+@@ -137,7 +137,7 @@ add_library(${target}
+ add_library(${META_PROJECT_NAME}::${target} ALIAS ${target})
+
+ # Export library for downstream projects
+-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake)
++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake)
+
+ # Create API export header
+ generate_export_header(${target}
+diff --git a/source/glbinding/CMakeLists.txt b/source/glbinding/CMakeLists.txt
+index bca68d1..f014494 100644
+--- a/source/glbinding/CMakeLists.txt
++++ b/source/glbinding/CMakeLists.txt
+@@ -172,7 +172,7 @@ add_library(${target}
+ add_library(${META_PROJECT_NAME}::${target} ALIAS ${target})
+
+ # Export library for downstream projects
+-export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/cmake/${target}/${target}-export.cmake)
++export(TARGETS ${target} NAMESPACE ${META_PROJECT_NAME}:: FILE ${PROJECT_BINARY_DIR}/${target}-export.cmake)
+
+ # Create API export header
+ generate_export_header(${target}
diff --git a/ports/glbinding/0004_fix-config-expected-paths.patch b/ports/glbinding/0004_fix-config-expected-paths.patch
new file mode 100644
index 000000000..e6fb16440
--- /dev/null
+++ b/ports/glbinding/0004_fix-config-expected-paths.patch
@@ -0,0 +1,35 @@
+diff --git a/glbinding-config.cmake b/glbinding-config.cmake
+index 03fc505..01b6cc8 100644
+--- a/glbinding-config.cmake
++++ b/glbinding-config.cmake
+@@ -1,7 +1,7 @@
+
+ # This config script tries to locate the project either in its source tree
+ # or from an install location.
+-#
++#
+ # Please adjust the list of submodules to search for.
+
+
+@@ -35,20 +35,11 @@ endmacro()
+
+ # Try install location
+ set(MODULE_FOUND FALSE)
+-find_modules("cmake")
++find_modules(".")
+
+ if(MODULE_FOUND)
+ return()
+ endif()
+
+-# Try common build locations
+-if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
+- find_modules("build-debug/cmake")
+- find_modules("build/cmake")
+-else()
+- find_modules("build/cmake")
+- find_modules("build-debug/cmake")
+-endif()
+-
+ # Signal success/failure to CMake
+ set(glbinding_FOUND ${MODULE_FOUND})
diff --git a/ports/glbinding/CONTROL b/ports/glbinding/CONTROL
index f63cec773..016283ca9 100644
--- a/ports/glbinding/CONTROL
+++ b/ports/glbinding/CONTROL
@@ -1,3 +1,5 @@
Source: glbinding
-Version: 3.0.2-5
+Version: 3.1.0-1
Description: glbinding is an MIT licensed, cross-platform C++ binding for the OpenGL API
+Homepage: https://github.com/cginternals/glbinding
+Build-Depends: egl-registry
diff --git a/ports/glbinding/portfile.cmake b/ports/glbinding/portfile.cmake
index e645e5021..d9fb5c0b2 100644
--- a/ports/glbinding/portfile.cmake
+++ b/ports/glbinding/portfile.cmake
@@ -2,10 +2,14 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO cginternals/glbinding
- REF d7a1873ad741fb13a9c6dcbae93d0cda45a11933
- SHA512 70848d8ddad3e2ddfc54549ed3cdde569991858135140b30b50fa6e92c5aec6e3dd235418e091456f9b68da2fad09fbef117dedac7b48c26bcab62b6f0fa791f
+ REF v3.1.0
+ SHA512 d7294c9a0dc47a7c107b134e5dfa78c5812fc6bf739b9fd778fa7ce946d5ea971839a65c3985e0915fd75311e4a85fb221d33a71856c460199eab0e7622f7151
HEAD_REF master
- PATCHES force-system-install.patch
+ PATCHES
+ 0001_force-system-install.patch
+ 0002_fix-uwpmacro.patch
+ 0003_fix-cmake-configs-paths.patch
+ 0004_fix-config-expected-paths.patch
)
vcpkg_configure_cmake(
@@ -14,24 +18,21 @@ vcpkg_configure_cmake(
-DOPTION_BUILD_TESTS=OFF
-DOPTION_BUILD_GPU_TESTS=OFF
-DOPTION_BUILD_TOOLS=OFF
+ -DOPTION_BUILD_EXAMPLES=OFF
-DGIT_REV=0
-DCMAKE_DISABLE_FIND_PACKAGE_cpplocate=ON
+ -DOPTION_BUILD_EXAMPLES=OFF
)
vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets(CONFIG_PATH share/glbinding)
+vcpkg_copy_pdbs()
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-
-vcpkg_fixup_cmake_targets(CONFIG_PATH share/glbinding/cmake)
-
-# _IMPORT_PREFIX needs to go up one extra level in the directory tree.
-# These files should be modified.
-# /share/glbinding/glbinding-export.cmake
-# /share/glbinding-aux/glbinding-aux-export.cmake
+## _IMPORT_PREFIX needs to go up one extra level in the directory tree.
file(GLOB_RECURSE TARGET_CMAKES "${CURRENT_PACKAGES_DIR}/*-export.cmake")
foreach(TARGET_CMAKE IN LISTS TARGET_CMAKES)
file(READ ${TARGET_CMAKE} _contents)
- string(REPLACE
+ string(REPLACE
[[
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
@@ -47,10 +48,11 @@ get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
file(WRITE ${TARGET_CMAKE} "${_contents}")
endforeach()
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/glbinding/glbinding-config.cmake "include(\${CMAKE_CURRENT_LIST_DIR}/glbinding/glbinding-export.cmake)\ninclude(\${CMAKE_CURRENT_LIST_DIR}/glbinding-aux/glbinding-aux-export.cmake)\nset(glbinding_FOUND TRUE)\n")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+# Remove files already published by egl-registry
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/KHR)
# Handle copyright
file(RENAME ${CURRENT_PACKAGES_DIR}/share/glbinding/LICENSE ${CURRENT_PACKAGES_DIR}/share/glbinding/copyright)
-
-vcpkg_copy_pdbs()