main/mapbox-gl-qml: switch to CMake (MR 1997)
This commit is contained in:
parent
00fd796a2e
commit
bddcea0851
@ -2,23 +2,37 @@
|
|||||||
# Maintainer: Bart Ribbers <bribbers@disroot.org>
|
# Maintainer: Bart Ribbers <bribbers@disroot.org>
|
||||||
pkgname=mapbox-gl-qml
|
pkgname=mapbox-gl-qml
|
||||||
pkgver=1.7.5
|
pkgver=1.7.5
|
||||||
pkgrel=0
|
pkgrel=1
|
||||||
pkgdesc="QML bindings for Mapbox"
|
pkgdesc="QML bindings for Mapbox"
|
||||||
url="https://github.com/rinigus/mapbox-gl-qml"
|
url="https://github.com/rinigus/mapbox-gl-qml"
|
||||||
# armhf blocked by qt5-qtdeclarative
|
# armhf blocked by qt5-qtdeclarative
|
||||||
arch="all !armhf"
|
arch="all !armhf"
|
||||||
license="LGPL-3.0-only"
|
license="LGPL-3.0-only"
|
||||||
makedepends="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtlocation-dev mapbox-gl-native-dev"
|
makedepends="
|
||||||
source="https://github.com/rinigus/mapbox-gl-qml/archive/$pkgver/mapbox-gl-qml-$pkgver.tar.gz"
|
cmake
|
||||||
|
curl-dev
|
||||||
|
mapbox-gl-native-dev
|
||||||
|
openssl-dev
|
||||||
|
qt5-qtbase-dev
|
||||||
|
qt5-qtdeclarative-dev
|
||||||
|
qt5-qtlocation-dev
|
||||||
|
"
|
||||||
|
source="https://github.com/rinigus/mapbox-gl-qml/archive/$pkgver/mapbox-gl-qml-$pkgver.tar.gz
|
||||||
|
cmake.patch
|
||||||
|
"
|
||||||
options="!check" # No tests
|
options="!check" # No tests
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
qmake-qt5
|
cmake -B build \
|
||||||
make
|
-DCMAKE_BUILD_TYPE=None \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib
|
||||||
|
cmake --build build
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
INSTALL_ROOT="$pkgdir" make install
|
DESTDIR="$pkgdir" cmake --install build
|
||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="34be4fccc7790d1ccf619da9f368cde3466717a7b4c8479f53ba5885a5e889d18de50ccd02be91438e2c879406bd21f79a3d50677be03edac89d7f24cca96b17 mapbox-gl-qml-1.7.5.tar.gz"
|
sha512sums="34be4fccc7790d1ccf619da9f368cde3466717a7b4c8479f53ba5885a5e889d18de50ccd02be91438e2c879406bd21f79a3d50677be03edac89d7f24cca96b17 mapbox-gl-qml-1.7.5.tar.gz
|
||||||
|
83feae9c8f5ce59140fa928b202d113e175f6b281452344ea6982c29a592816d57d1e6ac4a7b57282a46102906df305f5b0aa5f921e1d5ef37fd5aad3b9ae9f9 cmake.patch"
|
||||||
|
124
main/mapbox-gl-qml/cmake.patch
Normal file
124
main/mapbox-gl-qml/cmake.patch
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..1dd2229
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -0,0 +1,47 @@
|
||||||
|
+cmake_minimum_required(VERSION 3.6.0)
|
||||||
|
+
|
||||||
|
+project(mapbox-gl-qml
|
||||||
|
+ VERSION 1.7.6
|
||||||
|
+ DESCRIPTION "Unofficial Mapbox GL Native bindings for Qt QML")
|
||||||
|
+
|
||||||
|
+set(CMAKE_AUTOMOC ON)
|
||||||
|
+set(CMAKE_AUTORCC ON)
|
||||||
|
+set(CMAKE_AUTOUIC ON)
|
||||||
|
+
|
||||||
|
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
|
+
|
||||||
|
+option(USE_CURL_SSL "Use curl SSL" ON)
|
||||||
|
+
|
||||||
|
+include(FindPkgConfig)
|
||||||
|
+include(FeatureSummary)
|
||||||
|
+include(GNUInstallDirs)
|
||||||
|
+
|
||||||
|
+set(QT_MIN_VERSION "5.6.0")
|
||||||
|
+find_package(Qt5 ${QT_MIN_VERSION} COMPONENTS Gui Quick Positioning Sql REQUIRED)
|
||||||
|
+find_package(QMapboxGL REQUIRED)
|
||||||
|
+
|
||||||
|
+if(USE_CURL_SSL)
|
||||||
|
+ find_package(PkgConfig)
|
||||||
|
+ pkg_check_modules(CURL libcurl IMPORTED_TARGET)
|
||||||
|
+ pkg_check_modules(OPENSSL openssl IMPORTED_TARGET)
|
||||||
|
+
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY _CMAKE_libcurl_TYPE REQUIRED)
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY _CMAKE_openssl_TYPE REQUIRED)
|
||||||
|
+
|
||||||
|
+ if(CURL_FOUND)
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY PACKAGES_FOUND libcurl)
|
||||||
|
+ else()
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY PACKAGES_NOT_FOUND libcurl)
|
||||||
|
+ endif()
|
||||||
|
+
|
||||||
|
+ if(OPENSSL_FOUND)
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY PACKAGES_FOUND openssl)
|
||||||
|
+ else()
|
||||||
|
+ set_property(GLOBAL APPEND PROPERTY PACKAGES_NOT_FOUND openssl)
|
||||||
|
+ endif()
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
+add_subdirectory(src)
|
||||||
|
+
|
||||||
|
+feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
||||||
|
+
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..2427510
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -0,0 +1,53 @@
|
||||||
|
+### Sets QT_INSTALL_QML to the directory where QML Plugins should be installed
|
||||||
|
+function(FindQtInstallQml)
|
||||||
|
+ find_program(QMAKE NAMES qmake-qt5 qmake)
|
||||||
|
+ if(NOT QMAKE)
|
||||||
|
+ message(FATAL_ERROR "qmake not found")
|
||||||
|
+ endif()
|
||||||
|
+ execute_process(
|
||||||
|
+ COMMAND ${QMAKE} -query QT_INSTALL_QML
|
||||||
|
+ OUTPUT_VARIABLE PROC_RESULT
|
||||||
|
+ OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
+ )
|
||||||
|
+ set(QT_INSTALL_QML ${PROC_RESULT} PARENT_SCOPE)
|
||||||
|
+endfunction()
|
||||||
|
+
|
||||||
|
+set(SRC
|
||||||
|
+ qquickitemmapboxgl.cpp
|
||||||
|
+ qsgmapboxglnode.cpp
|
||||||
|
+ qsgtextureplain.cpp
|
||||||
|
+ qmapboxsync.cpp
|
||||||
|
+ plugin/mapboxglextensionplugin.cpp)
|
||||||
|
+set(HEADERS
|
||||||
|
+ qmapboxsync_p.h
|
||||||
|
+ include/qsgmapboxglnode.h
|
||||||
|
+ include/qquickitemmapboxgl.h
|
||||||
|
+ include/qsgtextureplain.h
|
||||||
|
+ plugin/mapboxglextensionplugin.h)
|
||||||
|
+
|
||||||
|
+add_library(qmlmapboxplugin SHARED ${SRC} ${HEADERS})
|
||||||
|
+
|
||||||
|
+target_include_directories(qmlmapboxplugin PRIVATE include src)
|
||||||
|
+
|
||||||
|
+target_link_libraries(qmlmapboxplugin PRIVATE
|
||||||
|
+ Qt5::Gui
|
||||||
|
+ Qt5::Qml
|
||||||
|
+ Qt5::Quick
|
||||||
|
+ Qt5::Positioning
|
||||||
|
+ Qt5::Sql
|
||||||
|
+ qmapboxgl)
|
||||||
|
+
|
||||||
|
+if(USE_CURL_SSL)
|
||||||
|
+ add_definitions(-DUSE_CURL_SSL=1)
|
||||||
|
+ target_link_libraries(qmlmapboxplugin PRIVATE
|
||||||
|
+ PkgConfig::CURL
|
||||||
|
+ PkgConfig::OPENSSL)
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
+FindQtInstallQml()
|
||||||
|
+
|
||||||
|
+install(FILES
|
||||||
|
+ plugin/MapboxMapGestureArea.qml
|
||||||
|
+ plugin/qmldir
|
||||||
|
+ DESTINATION ${QT_INSTALL_QML}/MapboxMap/)
|
||||||
|
+install(TARGETS qmlmapboxplugin DESTINATION ${QT_INSTALL_QML}/MapboxMap/)
|
||||||
|
diff --git a/include/qquickitemmapboxgl.h b/src/include/qquickitemmapboxgl.h
|
||||||
|
similarity index 100%
|
||||||
|
rename from include/qquickitemmapboxgl.h
|
||||||
|
rename to src/include/qquickitemmapboxgl.h
|
||||||
|
diff --git a/include/qsgmapboxglnode.h b/src/include/qsgmapboxglnode.h
|
||||||
|
similarity index 100%
|
||||||
|
rename from include/qsgmapboxglnode.h
|
||||||
|
rename to src/include/qsgmapboxglnode.h
|
||||||
|
diff --git a/include/qsgtextureplain.h b/src/include/qsgtextureplain.h
|
||||||
|
similarity index 100%
|
||||||
|
rename from include/qsgtextureplain.h
|
||||||
|
rename to src/include/qsgtextureplain.h
|
Loading…
Reference in New Issue
Block a user