aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorig-or <19777752+ig-or@users.noreply.github.com>2020-07-30 22:25:43 -0700
committerGitHub <noreply@github.com>2020-07-30 22:25:43 -0700
commit8d09f42a046e5d4cdc2112d169534d375953e618 (patch)
tree65566ce60d76308aad20bd2ee279fbd84eb919d0
parent3edf825296c1e943f9422a9d8d666b9a88e696e2 (diff)
downloadvcpkg-8d09f42a046e5d4cdc2112d169534d375953e618.tar.gz
vcpkg-8d09f42a046e5d4cdc2112d169534d375953e618.zip
[marble] Add new port (#8628)
* KDE Marble library port * fix in port KDE Marble library * port KDE Marble library: switch to another version * vcpkg_fail_port_install added (since only Windows currently supported) * remove some comments * Update portfile * KDE Marble library port * fix in port KDE Marble library * port KDE Marble library: switch to another version * vcpkg_fail_port_install added (since only Windows currently supported) * remove some comments * Update portfile * small fix in KDE Marble library port * removed ON_LIBRARY_LINKAGE static, and ANDROID FREEBSD * [marble]Fix triplet judgment * [kde] Add x64-windows-static state to baseline * [marble] Re-add x64-windows-static state to baseline * marble port changed * marble profile.cmake small correction * marble: another tiny changes in a port file * marble: patch to move exe to tools * [marble] patch for another QT version * Update ports/marble/CONTROL * move dll files to bin folder (out of tools folder) Co-authored-by: Igor Sandler <isandler@topcon.com> Co-authored-by: Phoebe <v-phma@microsoft.com> Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com> Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
-rw-r--r--ports/marble/CONTROL6
-rw-r--r--ports/marble/portfile.cmake45
-rw-r--r--ports/marble/qtfix.patch97
-rw-r--r--scripts/ci.baseline.txt6
4 files changed, 154 insertions, 0 deletions
diff --git a/ports/marble/CONTROL b/ports/marble/CONTROL
new file mode 100644
index 000000000..20dd30c0c
--- /dev/null
+++ b/ports/marble/CONTROL
@@ -0,0 +1,6 @@
+Source: marble
+Version: 19.08.2
+Homepage: https://marble.kde.org
+Description: Marble KDE library
+Supports: windows & x64 & !static
+Build-Depends: qt5-base, qt5-svg, qt5-quickcontrols, qt5-webchannel
diff --git a/ports/marble/portfile.cmake b/ports/marble/portfile.cmake
new file mode 100644
index 000000000..665eb31d1
--- /dev/null
+++ b/ports/marble/portfile.cmake
@@ -0,0 +1,45 @@
+vcpkg_fail_port_install(ON_TARGET "LINUX" "OSX" "UWP" "ANDROID" ON_ARCH "arm" "x86" ON_LIBRARY_LINKAGE "static")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO KDE/marble
+ REF 552cb9ae1f34482d1ec56532a703e0d820856286 #v20.04.3
+ SHA512 ac6106a6db53534c96d7281b1a07624c2852ed8c78cce0b91c5f865b106487f1f49aaa4c72d00ffb1f79a761d8d2eca18129ef9517bef463a1840554ed3e51fb
+ HEAD_REF master
+ PATCHES "qtfix.patch"
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+
+vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake)
+
+# Install plugins and data files
+file(GLOB_RECURSE PLUGINS "${CURRENT_PACKAGES_DIR}/plugins/*")
+file(GLOB_RECURSE PLUGINS_DESIGNER "${CURRENT_PACKAGES_DIR}/lib/plugins/*")
+file(GLOB_RECURSE PLUGINS_DEBUG "${CURRENT_PACKAGES_DIR}/debug/lib/plugins/*")
+file(GLOB_RECURSE MKSPECS "${CURRENT_PACKAGES_DIR}/mkspecs/*")
+
+file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/${PORT})
+file(COPY ${PLUGINS} ${PLUGINS_DESIGNER} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}/plugins)
+file(COPY ${PLUGINS_DEBUG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}/plugins)
+file(COPY "${CURRENT_PACKAGES_DIR}/data" DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) # have to keep folder structure here
+file(COPY ${MKSPECS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}/mkspecs)
+
+# remove plugin folder
+file(REMOVE_RECURSE
+ ${CURRENT_PACKAGES_DIR}/plugins ${CURRENT_PACKAGES_DIR}/debug/plugins
+ ${CURRENT_PACKAGES_DIR}/data ${CURRENT_PACKAGES_DIR}/debug/data
+ ${CURRENT_PACKAGES_DIR}/debug/include
+ ${CURRENT_PACKAGES_DIR}/mkspecs ${CURRENT_PACKAGES_DIR}/debug/mkspecs
+ ${CURRENT_PACKAGES_DIR}/debug/share
+ ${CURRENT_PACKAGES_DIR}/debug/lib/plugins ${CURRENT_PACKAGES_DIR}/lib/plugins
+)
+
+vcpkg_copy_pdbs()
+
+file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/marble/qtfix.patch b/ports/marble/qtfix.patch
new file mode 100644
index 000000000..39a420be0
--- /dev/null
+++ b/ports/marble/qtfix.patch
@@ -0,0 +1,97 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a3b2139dc..1f9a10513 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -171,7 +171,7 @@ set (PEDANTIC FALSE CACHE BOOL "Determines if we should compile with -Wall -Werr
+ set (WITH_DESIGNER_PLUGIN TRUE CACHE BOOL "Build plugins for Qt Designer")
+ add_feature_info("Qt Designer plugins" WITH_DESIGNER_PLUGIN "Marble widget support in Qt Designer. Toggle with WITH_DESIGNER_PLUGIN=YES/NO")
+
+-set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Base directory for executables and libraries" FORCE)
++set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/bin CACHE PATH "Base directory for executables and libraries" FORCE)
+ if (NOT QT_PLUGINS_DIR)
+ set(QT_PLUGINS_DIR ${CMAKE_INSTALL_LIBDIR}/plugins)
+ endif()
+@@ -248,7 +248,7 @@ add_definitions(
+ -DQT_NO_URL_CAST_FROM_STRING
+ -DQT_NO_CAST_TO_ASCII
+ -DQT_NO_CAST_FROM_BYTEARRAY
+- -DQT_STRICT_ITERATORS
++# -DQT_STRICT_ITERATORS
+ -DQT_DISABLE_DEPRECATED_BEFORE=0x050700
+ )
+
+diff --git a/src/apps/marble-qt/CMakeLists.txt b/src/apps/marble-qt/CMakeLists.txt
+index d28e3aa5e..7bbf4a63c 100644
+--- a/src/apps/marble-qt/CMakeLists.txt
++++ b/src/apps/marble-qt/CMakeLists.txt
+@@ -48,7 +48,7 @@ if(STATIC_BUILD)
+ endif(STATIC_BUILD)
+
+ if(WIN32)
+-install (TARGETS marble-qt RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX})
++ install (TARGETS marble-qt RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/tools/marble)
+ else(WIN32)
+ if (APPLE)
+ # No need for this when installing to a bundle
+diff --git a/src/lib/astro/CMakeLists.txt b/src/lib/astro/CMakeLists.txt
+index 5e1afd60f..fc53985f4 100644
+--- a/src/lib/astro/CMakeLists.txt
++++ b/src/lib/astro/CMakeLists.txt
+@@ -50,7 +50,7 @@ target_include_directories(astro
+
+ # choose the correct target install library path
+ if(WIN32)
+- INSTALL(TARGETS astro EXPORT AstroTargets RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX} ARCHIVE DESTINATION lib)
++ INSTALL(TARGETS astro EXPORT AstroTargets RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
+ elseif(APPLE)
+ INSTALL(TARGETS astro LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/Marble.app/Contents/MacOS/lib)
+ else()
+diff --git a/src/lib/marble/CMakeLists.txt b/src/lib/marble/CMakeLists.txt
+index 7d27be94b..f1f377967 100644
+--- a/src/lib/marble/CMakeLists.txt
++++ b/src/lib/marble/CMakeLists.txt
+@@ -448,7 +448,7 @@ target_include_directories(marblewidget
+
+ # choose the correct target install library path
+ if(WIN32)
+- install(TARGETS marblewidget EXPORT MarbleTargets RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX} ARCHIVE DESTINATION lib)
++ install(TARGETS marblewidget EXPORT MarbleTargets RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
+ elseif(APPLE)
+ install(TARGETS marblewidget LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/Marble.app/Contents/MacOS/lib)
+ else()
+diff --git a/src/lib/marble/declarative/CMakeLists.txt b/src/lib/marble/declarative/CMakeLists.txt
+index dd5d519c4..482a02ad5 100644
+--- a/src/lib/marble/declarative/CMakeLists.txt
++++ b/src/lib/marble/declarative/CMakeLists.txt
+@@ -53,7 +53,7 @@ if(Qt5Positioning_FOUND)
+ endif()
+
+ if(WIN32)
+- install(TARGETS marbledeclarative RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX} ARCHIVE DESTINATION lib)
++ install(TARGETS marbledeclarative RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
+ else()
+ install(TARGETS marbledeclarative LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ endif()
+diff --git a/src/plugins/positionprovider/CMakeLists.txt b/src/plugins/positionprovider/CMakeLists.txt
+index 85591098e..87011876e 100644
+--- a/src/plugins/positionprovider/CMakeLists.txt
++++ b/src/plugins/positionprovider/CMakeLists.txt
+@@ -12,12 +12,12 @@ find_package(Qt5 ${REQUIRED_QT_VERSION}
+ COMPONENTS
+ Positioning
+ )
+-marble_set_package_properties( Qt5Positioning PROPERTIES DESCRIPTION "a collection of APIs and frameworks" )
+-marble_set_package_properties( Qt5Positioning PROPERTIES URL "https://www.qt.io/developers/" )
+-marble_set_package_properties( Qt5Positioning PROPERTIES TYPE OPTIONAL PURPOSE "position information via Qt5Positioning" )
+-if(Qt5Positioning_FOUND)
+- ADD_SUBDIRECTORY( qtpositioning )
+-endif()
++#marble_set_package_properties( Qt5Positioning PROPERTIES DESCRIPTION "a collection of APIs and frameworks" )
++#marble_set_package_properties( Qt5Positioning PROPERTIES URL "https://www.qt.io/developers/" )
++#arble_set_package_properties( Qt5Positioning PROPERTIES TYPE OPTIONAL PURPOSE "position information via Qt5Positioning" )
++#if(Qt5Positioning_FOUND)
++# ADD_SUBDIRECTORY( qtpositioning )
++#endif()
+
+
+ macro_optional_find_package(libwlocate)
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index 91493b9a5..05baa8b33 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -975,6 +975,12 @@ luasocket:x64-linux=fail
luasocket:x64-osx=fail
lzfse:arm-uwp=fail
magnum:arm64-windows=skip
+marble:x64-windows-static=fail
+marble:arm64-windows=fail
+marble:arm-uwp=fail
+marble:x64-linux=fail
+marble:x64-osx=fail
+marble:x86-windows=fail
marl:arm-uwp=fail
marl:x64-uwp=fail
mathgl:x64-osx=fail