PKGBUILD 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. # Maintainer (arch): Antonio Rojas <arojas@archlinux.org>
  2. # Maintainer (arch): Felix Yan <felixonmars@archlinux.org>
  3. # Contributor: Andrea Scarpino <andrea@archlinux.org>
  4. # Contributor: Gustavo Alvarez <sl1pkn07@gmail.com>
  5. # Contributor: Balló György <ballogyor+arch at gmail dot com>
  6. # Contributor: bill-auger <bill-auger@programmer.net>
  7. # Maintainer: Parabola Hackers <dev@lists.parabola.nu>
  8. # parabola changes and rationale:
  9. # - replaced 'qt5-webengine' dependency with 'qt5-webkit'
  10. # - pin to 'marble-*' binaries to 'marble-common'
  11. # Note: This is done to prevent breakage.
  12. # Only 'marble-common' requires the change;
  13. # but then 'marble-common' would need to be pinned
  14. # to (require) it's clients, which is weird.
  15. # For that reason, we build all split-packages.
  16. pkgbase=marble
  17. pkgname=(marble-common marble-qt marble-maps marble)
  18. pkgver=22.12.2
  19. pkgrel=1
  20. pkgrel+=.parabola1
  21. pkgdesc='Desktop Globe'
  22. arch=(x86_64)
  23. arch+=(armv7h i686)
  24. url='https://apps.kde.org/marble/'
  25. license=(GPL)
  26. makedepends=(extra-cmake-modules gpsd kdoctools kparts krunner libwlocate phonon-qt5
  27. plasma-workspace qt5-serialport qt5-tools qt5-webengine shapelib protobuf)
  28. makedepends=( ${makedepends[@]/qt5-webengine/qt5-webkit} )
  29. source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgbase-$pkgver.tar.xz{,.sig}
  30. no-knewstuff.patch)
  31. sha256sums=('ed9a6aed3c5c5057cce25e28ac0e9eaf377d79d866375fa62a5ac072d4edda3a'
  32. 'SKIP'
  33. '4718d89d5f0dc79969196ea7afc71bfd37ed9570c3e2718f0c54549bbb0991a1')
  34. validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
  35. F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cfeck@kde.org>
  36. D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
  37. prepare() {
  38. patch -d $pkgbase-$pkgver -p1 < no-knewstuff.patch # Drop unused dependency
  39. }
  40. build() {
  41. cmake -B build -S $pkgbase-$pkgver \
  42. -DCMAKE_INSTALL_PREFIX=/usr \
  43. -DCMAKE_INSTALL_SYSCONFDIR=/etc \
  44. -DQT_PLUGINS_DIR=lib/qt/plugins \
  45. -DBUILD_TESTING=OFF \
  46. -DBUILD_TOUCH=ON \
  47. -DBUILD_MARBLE_EXAMPLES=OFF \
  48. -DBUILD_MARBLE_TESTS=OFF \
  49. -DMOBILE=OFF
  50. cmake --build build
  51. }
  52. package_marble-common() {
  53. pkgdesc='Common libraries and plugins for Marble'
  54. depends=(qt5-svg qt5-webengine phonon-qt5 protobuf)
  55. depends=( ${depends[@]/qt5-webengine/qt5-webkit} )
  56. optdepends=('gpsd: GPS based geolocation'
  57. 'libwlocate: WLAN based geolocation'
  58. 'qt5-serialport: APRS plugin'
  59. 'shapelib: SHP plugin')
  60. DESTDIR="$pkgdir" cmake --install build
  61. rm -r "$pkgdir"/usr/share/{config.kcfg,kxmlgui5,metainfo,plasma} \
  62. "$pkgdir"/usr/bin \
  63. "$pkgdir"/usr/lib/qt/{qml,plugins/*.so,plugins/kf5} \
  64. "$pkgdir"/usr/share/applications/{marble_geo.desktop,marble_worldwind.desktop,org.kde.marble*.desktop} \
  65. "$pkgdir"/usr/share/kservices5/{plasma-*,marble_part.desktop} \
  66. "$pkgdir"/usr/share/locale/*/LC_MESSAGES/*.mo
  67. }
  68. package_marble-qt() {
  69. pkgdesc+=' (Qt version)'
  70. depends=(marble-common)
  71. # pin to 'marble-common'
  72. depends=( ${depends[*]/marble-common/marble-common=$pkgver} )
  73. DESTDIR="$pkgdir" cmake --install build/src/apps/marble-qt
  74. }
  75. package_marble() {
  76. depends=(marble-common kparts)
  77. optdepends=('krunner: Krunner plugin')
  78. groups=(kde-applications kde-education)
  79. # pin to 'marble-common'
  80. depends=( ${depends[*]/marble-common/marble-common=$pkgver} )
  81. DESTDIR="$pkgdir" cmake --install build/src/apps/marble-kde
  82. DESTDIR="$pkgdir" cmake --install build/src/plasma
  83. DESTDIR="$pkgdir" cmake --install build/src/plasmarunner
  84. DESTDIR="$pkgdir" cmake --install build/src/thumbnailer
  85. rm -r "$pkgdir"/usr/share/{icons,doc}
  86. }
  87. package_marble-maps() {
  88. pkgdesc='OpenStreetMap Navigation'
  89. depends=(marble-common kirigami2)
  90. # pin to 'marble-common'
  91. depends=( ${depends[*]/marble-common/marble-common=$pkgver} )
  92. DESTDIR="$pkgdir" cmake --install build/src/apps/marble-maps
  93. }