main/mapbox-gl-qml: switch to CMake (MR 1997)
This commit is contained in:
parent
00fd796a2e
commit
bddcea0851
2 changed files with 145 additions and 7 deletions
|
@ -2,23 +2,37 @@
|
|||
# Maintainer: Bart Ribbers <bribbers@disroot.org>
|
||||
pkgname=mapbox-gl-qml
|
||||
pkgver=1.7.5
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="QML bindings for Mapbox"
|
||||
url="https://github.com/rinigus/mapbox-gl-qml"
|
||||
# armhf blocked by qt5-qtdeclarative
|
||||
arch="all !armhf"
|
||||
license="LGPL-3.0-only"
|
||||
makedepends="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtlocation-dev mapbox-gl-native-dev"
|
||||
source="https://github.com/rinigus/mapbox-gl-qml/archive/$pkgver/mapbox-gl-qml-$pkgver.tar.gz"
|
||||
makedepends="
|
||||
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
|
||||
|
||||
build() {
|
||||
qmake-qt5
|
||||
make
|
||||
cmake -B build \
|
||||
-DCMAKE_BUILD_TYPE=None \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
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…
Add table
Reference in a new issue