diff options
| author | Billy O'Neal <bion@microsoft.com> | 2021-01-21 08:58:11 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-21 08:58:11 -0800 |
| commit | bedeaa639c21a759ad211b048deb7968a6648f10 (patch) | |
| tree | 734603a897ff891ddb08977bb5cc1e67b66a7e80 | |
| parent | d0268cf16649ffb8b847b719a9cab224623291ff (diff) | |
| download | vcpkg-bedeaa639c21a759ad211b048deb7968a6648f10.tar.gz vcpkg-bedeaa639c21a759ad211b048deb7968a6648f10.zip | |
[osgearth] Make all find_packages required in effort to make this port less "flaky", and turn on in CI. (#15777)
| -rw-r--r-- | port_versions/baseline.json | 2 | ||||
| -rw-r--r-- | port_versions/o-/osgearth.json | 5 | ||||
| -rw-r--r-- | ports/osgearth/CONTROL | 5 | ||||
| -rw-r--r-- | ports/osgearth/make-all-find-packages-required.patch | 84 | ||||
| -rw-r--r-- | ports/osgearth/portfile.cmake | 7 | ||||
| -rw-r--r-- | ports/osgearth/vcpkg.json | 25 | ||||
| -rw-r--r-- | scripts/ci.baseline.txt | 6 | ||||
| -rw-r--r-- | toolsrc/src/vcpkg/platform-expression.cpp | 3 |
8 files changed, 123 insertions, 14 deletions
diff --git a/port_versions/baseline.json b/port_versions/baseline.json index 1cb2af9c7..f45c801d2 100644 --- a/port_versions/baseline.json +++ b/port_versions/baseline.json @@ -4354,7 +4354,7 @@ }, "osgearth": { "baseline": "3.1", - "port-version": 0 + "port-version": 1 }, "osi": { "baseline": "0.108.6", diff --git a/port_versions/o-/osgearth.json b/port_versions/o-/osgearth.json index 3a430bfc9..13b6b3fec 100644 --- a/port_versions/o-/osgearth.json +++ b/port_versions/o-/osgearth.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "d194c647fcf69fe345c13ae7b6da3451e4bbddb6", + "version": "3.1", + "port-version": 1 + }, + { "git-tree": "168a035bd41f62a0d394f4e18fb703692603e39d", "version-string": "3.1", "port-version": 0 diff --git a/ports/osgearth/CONTROL b/ports/osgearth/CONTROL deleted file mode 100644 index c6d7b7a13..000000000 --- a/ports/osgearth/CONTROL +++ /dev/null @@ -1,5 +0,0 @@ -Source: osgearth
-Version: 3.1
-Homepage: https://github.com/gwaldron/osgearth -Description: osgEarth - Dynamic map generation toolkit for OpenSceneGraph Copyright 2015 Pelican Mapping.
-Build-Depends: osg[plugins]
\ No newline at end of file diff --git a/ports/osgearth/make-all-find-packages-required.patch b/ports/osgearth/make-all-find-packages-required.patch new file mode 100644 index 000000000..f5ea6793f --- /dev/null +++ b/ports/osgearth/make-all-find-packages-required.patch @@ -0,0 +1,84 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 049e37e..c78bd16 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -121,9 +121,9 @@ option(OSGEARTH_ENABLE_GEOCODER "Enable the geocoder (GDAL/OGR must be built wit
+
+ # Mobile/GLES:
+ IF (OSGEARTH_USE_GLES)
+- find_package(OpenGLES)
++ find_package(OpenGLES REQUIRED)
+ ELSE ()
+- find_package(OpenGL)
++ find_package(OpenGL REQUIRED)
+ ENDIF (OSGEARTH_USE_GLES)
+
+ # required
+@@ -132,28 +132,28 @@ find_package(CURL REQUIRED)
+ find_package(GDAL REQUIRED)
+
+ # optional
+-find_package(GEOS)
+-find_package(Sqlite3)
+-find_package(Draco)
+-find_package(BASISU)
+-find_package(GLEW)
+-find_package(Protobuf)
+-find_package(WEBP)
++find_package(GEOS REQUIRED)
++find_package(Sqlite3 REQUIRED)
++find_package(Draco REQUIRED)
++find_package(BASISU REQUIRED)
++find_package(GLEW REQUIRED)
++find_package(Protobuf REQUIRED)
++find_package(WEBP REQUIRED)
+
+ if(OSGEARTH_ENABLE_PROFILING)
+- find_package(Tracy)
++ find_package(Tracy REQUIRED)
+ endif()
+
+ if(OSGEARTH_BUILD_ZIP_PLUGIN)
+- find_package(LIBZIP)
++ find_package(LIBZIP REQUIRED)
+ endif()
+
+ if(OSGEARTH_BUILD_TRITON_NODEKIT)
+- find_package(Triton QUIET)
++ find_package(Triton QUIET REQUIRED)
+ endif()
+
+ if(OSGEARTH_BUILD_SILVERLINING_NODEKIT)
+- find_package(SilverLining QUIET)
++ find_package(SilverLining QUIET REQUIRED)
+ endif()
+
+ # Sqlite enables the MBTiles format:
+@@ -182,18 +182,18 @@ SET (PROTOBUF_USE_DLLS FALSE CACHE BOOL "Set this to true if Protobuf is compile
+ # Duktape is the JavaScript interpreter
+ SET (WITH_EXTERNAL_DUKTAPE FALSE CACHE BOOL "Use bundled or system wide version of Duktape")
+ IF (WITH_EXTERNAL_DUKTAPE)
+- find_package(Duktape)
++ find_package(Duktape REQUIRED)
+ ENDIF (WITH_EXTERNAL_DUKTAPE)
+
+ # Whether to install shaders (glsl files).
+-# If true, shaders install into a resources folder. If false, they are inlined in the
++# If true, shaders install into a resources folder. If false, they are inlined in the
+ # code and you cannot tweak them after install.
+ OPTION(OSGEARTH_INSTALL_SHADERS "Whether to deploy GLSL shaders when doing a Make INSTALL" OFF)
+
+ # TinyXML is an XML parsing library
+ SET (WITH_EXTERNAL_TINYXML FALSE CACHE BOOL "Use bundled or system wide version of TinyXML")
+ IF (WITH_EXTERNAL_TINYXML)
+- find_package(TinyXML)
++ find_package(TinyXML REQUIRED)
+ ENDIF (WITH_EXTERNAL_TINYXML)
+
+ # postfix settings for various configs
+@@ -272,4 +272,4 @@ ADD_SUBDIRECTORY(src)
+
+ if (OSGEARTH_BUILD_DOCS)
+ ADD_SUBDIRECTORY(docs)
+-endif()
++endif()
diff --git a/ports/osgearth/portfile.cmake b/ports/osgearth/portfile.cmake index 7f8f9be1e..57d42b523 100644 --- a/ports/osgearth/portfile.cmake +++ b/ports/osgearth/portfile.cmake @@ -11,8 +11,10 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO gwaldron/osgearth REF 342fcadf4c8892ba84841cb5b4162bdc51519e3c #version 3.1 - SHA512 03378a918306846d2144e545785c783b01e33fa2dd5c77d16d390a275217b6ce7a3a743c35ae99a497b272a7516b055442c0a891bd312cce727a5538b40364f5 + SHA512 03378a918306846d2144e545785c783b01e33fa2dd5c77d16d390a275217b6ce7a3a743c35ae99a497b272a7516b055442c0a891bd312cce727a5538b40364f5 HEAD_REF master + PATCHES + make-all-find-packages-required.patch ) vcpkg_configure_cmake( @@ -25,6 +27,7 @@ vcpkg_configure_cmake( -DOSGEARTH_BUILD_PROCEDURAL_NODEKIT=OFF -DOSGEARTH_BUILD_TRITON_NODEKIT=OFF -DOSGEARTH_BUILD_SILVERLINING_NODEKIT=OFF + -DWITH_EXTERNAL_TINYXML=ON ) vcpkg_install_cmake() @@ -64,4 +67,4 @@ file(REMOVE_RECURSE ${OSGEARTH_DEBUG_TOOLS}) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/${OSG_PLUGINS_SUBDIR}) # Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
\ No newline at end of file +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/osgearth/vcpkg.json b/ports/osgearth/vcpkg.json new file mode 100644 index 000000000..7d7a22015 --- /dev/null +++ b/ports/osgearth/vcpkg.json @@ -0,0 +1,25 @@ +{ + "name": "osgearth", + "version": "3.1", + "port-version": 1, + "description": "osgEarth - Dynamic map generation toolkit for OpenSceneGraph Copyright 2015 Pelican Mapping.", + "homepage": "https://github.com/gwaldron/osgearth", + "supports": "!(x86 | wasm32) & !staticcrt", + "dependencies": [ + "basisu", + "draco", + "geos", + "glew", + "libwebp", + "libzip", + "opengl", + { + "name": "osg", + "features": [ + "plugins" + ] + }, + "protobuf", + "sqlite3" + ] +} diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 3cf0de85a..f4d376c7b 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -1199,12 +1199,6 @@ opusfile:arm-uwp=fail opusfile:x64-uwp=fail orocos-kdl:arm-uwp=fail orocos-kdl:x64-uwp=fail -osgearth:x64-linux=fail -osgearth:x64-osx=fail -osgearth:x64-windows-static=fail -osgearth:x64-windows-static-md=fail -osgearth:x64-windows=fail -osgearth:x86-windows=fail paho-mqtt:arm-uwp=fail paho-mqtt:x64-uwp=fail pangomm:x64-osx=fail diff --git a/toolsrc/src/vcpkg/platform-expression.cpp b/toolsrc/src/vcpkg/platform-expression.cpp index 034ee6bd5..a6177c85f 100644 --- a/toolsrc/src/vcpkg/platform-expression.cpp +++ b/toolsrc/src/vcpkg/platform-expression.cpp @@ -32,6 +32,7 @@ namespace vcpkg::PlatformExpression ios, static_link, + static_crt, }; static Identifier string2identifier(StringView name) @@ -51,6 +52,7 @@ namespace vcpkg::PlatformExpression {"emscripten", Identifier::emscripten}, {"ios", Identifier::ios}, {"static", Identifier::static_link}, + {"staticcrt", Identifier::static_link}, }; auto id_pair = id_map.find(name); @@ -398,6 +400,7 @@ namespace vcpkg::PlatformExpression case Identifier::wasm32: return true_if_exists_and_equal("VCPKG_TARGET_ARCHITECTURE", "wasm32"); case Identifier::static_link: return true_if_exists_and_equal("VCPKG_LIBRARY_LINKAGE", "static"); + case Identifier::static_crt: return true_if_exists_and_equal("VCPKG_CRT_LINKAGE", "static"); default: Checks::unreachable(VCPKG_LINE_INFO); } } |
