kpublictransport, add KF5/KF6 recipe (#10645)

This commit is contained in:
Schrijvers Luc
2024-06-29 09:13:00 +02:00
committed by GitHub
parent 00980a3fb6
commit 13b492c797
2 changed files with 217 additions and 0 deletions

View File

@@ -0,0 +1,103 @@
SUMMARY="Library to assist with accessing public transport timetables and other data"
DESCRIPTION="A library for accessing realtime public transport data and for performing public \
transport journey queries.
This includes:
Finding bus stops or train stations, departures/arrivals from there, and journeys between those.
Path and routing information for individual transport sections of a journey.
Information about train coach and train station platform layouts.
Information about rental vehicle positions and availability, such as shared bikes or scooters.
Realtime information about the operational status of elevators or escalators.
Unified access to onboard API on trains for obtaining the current position and journey.
!! Before using this, please read the license compliance and attribution section below !!
* When using the data retrieved by this library you need to comply with the license terms of the \
backends this is coming from, in particular https://www.navitia.io/api-term-of-use.
* Attribution information that need to be displayed in an appropriate place in the application using \
this are provided globally via KPublicTransport::Manager::attributions() as well as more \
fine-grained per query reply via KPublicTransport::Reply::attributions().
* Besides attributing backend data correctly, this library also contains static data retrieved from \
Wikidata licensed as CC0 as well as data from OpenStreetMap licensed as ODbL, so those should be \
appropriately credited in your application as well."
HOMEPAGE="https://invent.kde.org/libraries/kpublictransport"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="$HOMEPAGE/-/archive/v$portVersion/kpublictransport-v$portVersion.tar.bz2"
CHECKSUM_SHA256="c1342ec43723bfad054f09afe01f906410296f535fa6b55c0b3d4e62e1184618"
SOURCE_DIR="kpublictransport-v$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
kpublictransport$secondaryArchSuffix = $portVersion
lib:libKPublicTransport$secondaryArchSuffix = $libVersionCompat
lib:libKPublicTransportOnboard$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
kpublictransport${secondaryArchSuffix}_devel = $portVersion
devel:libKPublicTransport$secondaryArchSuffix = $libVersionCompat
devel:libKPublicTransportOnboard$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
kpublictransport$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libKF5I18n$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:msgmerge
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt5 \
-DKDE_INSTALL_QMLDIR=$dataDir/Qt5/qml \
-DECM_MKSPECS_INSTALL_DIR=$dataDir/Qt5/mkspecs \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -C build $jobArgs
}
INSTALL()
{
make -C build install
prepareInstalledDevelLibs \
libKPublicTransport \
libKPublicTransportOnboard
packageEntries devel \
$developDir \
$libDir/cmake
}
TEST()
{
# 77% tests passed, 10 tests failed out of 43
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
ctest --test-dir build --output-on-failure
}

View File

@@ -0,0 +1,114 @@
SUMMARY="Library to assist with accessing public transport timetables and other data"
DESCRIPTION="A library for accessing realtime public transport data and for performing public \
transport journey queries.
This includes:
Finding bus stops or train stations, departures/arrivals from there, and journeys between those.
Path and routing information for individual transport sections of a journey.
Information about train coach and train station platform layouts.
Information about rental vehicle positions and availability, such as shared bikes or scooters.
Realtime information about the operational status of elevators or escalators.
Unified access to onboard API on trains for obtaining the current position and journey.
!! Before using this, please read the license compliance and attribution section below !!
* When using the data retrieved by this library you need to comply with the license terms of the \
backends this is coming from, in particular https://www.navitia.io/api-term-of-use.
* Attribution information that need to be displayed in an appropriate place in the application using \
this are provided globally via KPublicTransport::Manager::attributions() as well as more \
fine-grained per query reply via KPublicTransport::Reply::attributions().
* Besides attributing backend data correctly, this library also contains static data retrieved from \
Wikidata licensed as CC0 as well as data from OpenStreetMap licensed as ODbL, so those should be \
appropriately credited in your application as well."
HOMEPAGE="https://invent.kde.org/libraries/kpublictransport"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kpublictransport-$portVersion.tar.xz"
CHECKSUM_SHA256="a9a25ad3398a2dc928bb69add1947c839d73ce8e00957b7bbd6b985477f437bb"
SOURCE_DIR="kpublictransport-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
kpublictransport24$secondaryArchSuffix = $portVersion
lib:libKPublicTransport$secondaryArchSuffix = $libVersionCompat
lib:libKPublicTransportOnboard$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libKF6I18n$secondaryArchSuffix
lib:libQt6Core$secondaryArchSuffix
lib:libQt6Qml$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
CONFLICTS="
kpublictransport$secondaryArchSuffix
"
PROVIDES_devel="
kpublictransport24${secondaryArchSuffix}_devel = $portVersion
devel:libKPublicTransport$secondaryArchSuffix = $libVersionCompat
devel:libKPublicTransportOnboard$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
kpublictransport24$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix
devel:libKF6I18n$secondaryArchSuffix
devel:libprotobuf$secondaryArchSuffix
devel:libQt6Core$secondaryArchSuffix
devel:libQt6Qml$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:msgmerge
# cmd:osmconvert
# cmd:osmfilter
# cmd:osmupdate
cmd:pkg_config$secondaryArchSuffix
# cmd:rsync
# cmd:wget
"
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt6 \
-DKDE_INSTALL_QMLDIR=$dataDir/Qt6/qml \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -Cbuild $jobArgs
}
INSTALL()
{
make -Cbuild install
prepareInstalledDevelLibs \
libKPublicTransport \
libKPublicTransportOnboard
packageEntries devel \
$developDir \
$libDir/cmake
}
TEST()
{
# 77% tests passed, 10 tests failed out of 43
export LIBRARY_PATH="$sourceDir/build/bin${LIBRARY_PATH:+:$LIBRARY_PATH}"
ctest --test-dir build --output-on-failure
}