Warning, /libraries/kpublictransport/src/lib/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: 2018 Volker Krause <vkrause@kde.org>
0002 # SPDX-License-Identifier: BSD-3-Clause
0003 
0004 add_subdirectory(knowledgedb)
0005 
0006 add_library(KPublicTransport)
0007 
0008 
0009 target_sources(KPublicTransport PRIVATE
0010     assetrepository.cpp
0011     journeyreply.cpp
0012     journeyrequest.cpp
0013     locationreply.cpp
0014     locationrequest.cpp
0015     manager.cpp
0016     reply.cpp
0017     requestcontext.cpp
0018     stopoverreply.cpp
0019     stopoverrequest.cpp
0020     vehiclelayoutreply.cpp
0021     vehiclelayoutrequest.cpp
0022 
0023     backends/abstractbackend.cpp
0024     backends/accessibilitycloudbackend.cpp
0025     backends/accessibilitycloudparser.cpp
0026     backends/cache.cpp
0027     backends/deutschebahnbackend.cpp
0028     backends/deutschebahnvehiclelayoutparser.cpp
0029     backends/efabackend.cpp
0030     backends/efaparser.cpp
0031     backends/efacompactparser.cpp
0032     backends/efamodeoftransport.cpp
0033     backends/efaxmlparser.cpp
0034     backends/hafasbackend.cpp
0035     backends/hafasparser.cpp
0036     backends/hafasmgatebackend.cpp
0037     backends/hafasmgateparser.cpp
0038     backends/hafasquerybackend.cpp
0039     backends/hafasqueryparser.cpp
0040     backends/hafasvehiclelayoutparser.cpp
0041     backends/ivvassbackend.cpp
0042     backends/ivvassparser.cpp
0043     backends/ivvassproductmap.cpp
0044     backends/localbackendutils.cpp
0045     backends/ltglinkbackend.cpp
0046     backends/navitiabackend.cpp
0047     backends/navitiaparser.cpp
0048     backends/navitiaphysicalmode.cpp
0049     backends/networkreplycollection.cpp
0050     backends/oebbbackend.cpp
0051     backends/oebbvehiclelayoutparser.cpp
0052     backends/openjourneyplannerbackend.cpp
0053     backends/openjourneyplannerparser.cpp
0054     backends/openjourneyplannerrequestbuilder.cpp
0055     backends/opentripplannergraphqlbackend.cpp
0056     backends/opentripplannerparser.cpp
0057     backends/opentripplannerrestbackend.cpp
0058     backends/otp/otp.qrc
0059     backends/pasazieruvilciensbackend.cpp
0060     backends/scopedxmlstreamreader.cpp
0061     backends/zpcgbackend.cpp
0062 
0063     datatypes/attribution.cpp
0064     datatypes/attributionutil.cpp
0065     datatypes/backend.cpp
0066     datatypes/coveragearea.cpp
0067     datatypes/disruption.cpp
0068     datatypes/equipment.cpp
0069     datatypes/equipmentutil.cpp
0070     datatypes/individualtransport.cpp
0071     datatypes/journey.cpp
0072     datatypes/journeyutil.cpp
0073     datatypes/json.cpp
0074     datatypes/line.cpp
0075     datatypes/lineutil.cpp
0076     datatypes/load.cpp
0077     datatypes/loadutil.cpp
0078     datatypes/location.cpp
0079     datatypes/locationutil.cpp
0080     datatypes/mergeutil.cpp
0081     datatypes/notesutil.cpp
0082     datatypes/path.cpp
0083     datatypes/platform.cpp
0084     datatypes/platformutils.cpp
0085     datatypes/rentalvehicle.cpp
0086     datatypes/rentalvehicleutil.cpp
0087     datatypes/stopover.cpp
0088     datatypes/stopoverutil.cpp
0089     datatypes/timeutil.cpp
0090     datatypes/variant.cpp
0091     datatypes/vehicle.cpp
0092 
0093     gbfs/gbfs.cpp
0094     gbfs/gbfs.qrc
0095     gbfs/gbfsbackend.cpp
0096     gbfs/gbfsjob.cpp
0097     gbfs/gbfsreader.cpp
0098     gbfs/gbfsservice.cpp
0099     gbfs/gbfsstore.cpp
0100     gbfs/gbfsvehicletypes.cpp
0101 
0102     geo/convexhull.cpp
0103     geo/geojson.cpp
0104     geo/polylinedecoder.cpp
0105 
0106     gtfs/hvt.cpp
0107 
0108     ifopt/ifoptutil.cpp
0109 
0110     json/jsonp.cpp
0111     json/jsonpointer.cpp
0112 
0113     knowledgedb/asset-attributions.qrc
0114     knowledgedb/linemetadata.cpp
0115 
0116     layout/platformlayout.cpp
0117 
0118     models/abstractquerymodel.cpp
0119     models/backendmodel.cpp
0120     models/journeyquerymodel.cpp
0121     models/locationhistorymodel.cpp
0122     models/locationquerymodel.cpp
0123     models/pathmodel.cpp
0124     models/stopoverquerymodel.cpp
0125     models/vehiclelayoutquerymodel.cpp
0126 
0127     networks/networks.qrc
0128     networks/certs/network_certs.qrc
0129     networks/geometry/geometry.qrc
0130     networks/stations/stations.qrc
0131 
0132     uic/uicrailwaycoach.cpp
0133     uic/uicstationcode.cpp
0134 )
0135 ecm_qt_declare_logging_category(KPublicTransport
0136     HEADER logging.h
0137     IDENTIFIER KPublicTransport::Log
0138     CATEGORY_NAME org.kde.kpublictransport
0139     DESCRIPTION "KPublicTransport"
0140     EXPORT KPUBLICTRANSPORT
0141 )
0142 
0143 generate_export_header(KPublicTransport BASE_NAME KPublicTransport)
0144 set_target_properties(KPublicTransport PROPERTIES
0145     VERSION ${KPUBLICTRANSPORT_VERSION}
0146     SOVERSION ${KPUBLICTRANSPORT_SOVERSION}
0147     EXPORT_NAME KPublicTransport
0148 )
0149 target_include_directories(KPublicTransport PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>")
0150 target_include_directories(KPublicTransport INTERFACE "$<INSTALL_INTERFACE:${KPUBLICTRANSPORT_INSTALL_INCLUDEDIR}>")
0151 target_link_libraries(KPublicTransport
0152     PUBLIC
0153         Qt::Gui
0154     PRIVATE
0155         KGraphQL
0156         KOSM
0157         Qt::Network
0158         ZLIB::ZLIB
0159 )
0160 
0161 ecm_generate_headers(KPublicTransport_FORWARDING_HEADERS
0162     HEADER_NAMES
0163         JourneyReply
0164         JourneyRequest
0165         LocationReply
0166         LocationRequest
0167         Manager
0168         Reply
0169         StopoverReply
0170         StopoverRequest
0171         VehicleLayoutReply
0172         VehicleLayoutRequest
0173     PREFIX KPublicTransport
0174     REQUIRED_HEADERS KPublicTransport_HEADERS
0175 )
0176 # # ### for testing only
0177 ecm_generate_headers(KPublicTransport_Backends_FORWARDING_HEADERS
0178     HEADER_NAMES
0179         Cache
0180         HafasMgateParser
0181         NavitiaParser
0182     PREFIX KPublicTransport
0183     REQUIRED_HEADERS KPublicTransport_Backends_HEADERS
0184     RELATIVE backends
0185 )
0186 ecm_generate_headers(KPublicTransport_Datatypes_FORWARDING_HEADERS
0187     HEADER_NAMES
0188         Attribution
0189         Backend
0190         CoverageArea
0191         Datatypes
0192         Disruption
0193         Equipment
0194         IndividualTransport
0195         Journey
0196         Line
0197         Load
0198         Location
0199         RentalVehicle
0200         Path
0201         Platform
0202         Stopover
0203         Vehicle
0204     PREFIX KPublicTransport
0205     REQUIRED_HEADERS KPublicTransport_Datatypes_HEADERS
0206     RELATIVE datatypes
0207 )
0208 ecm_generate_headers(KPublicTransport_Layout_FORWARDING_HEADERS
0209     HEADER_NAMES
0210         PlatformLayout
0211     PREFIX KPublicTransport
0212     REQUIRED_HEADERS KPublicTransport_Layout_HEADERS
0213     RELATIVE layout
0214 )
0215 ecm_generate_headers(KPublicTransport_Models_FORWARDING_HEADERS
0216     HEADER_NAMES
0217         AbstractQueryModel
0218         BackendModel
0219         JourneyQueryModel
0220         LocationHistoryModel
0221         LocationQueryModel
0222         PathModel
0223         StopoverQueryModel
0224         VehicleLayoutQueryModel
0225     PREFIX KPublicTransport
0226     REQUIRED_HEADERS KPublicTransport_Models_HEADERS
0227     RELATIVE models
0228 )
0229 
0230 install(TARGETS KPublicTransport EXPORT KPublicTransportTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
0231 ecm_qt_install_logging_categories(
0232     EXPORT KPUBLICTRANSPORT
0233     FILE org_kde_kpublictransport.categories
0234     DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0235 )
0236 install(FILES
0237     ${KPublicTransport_FORWARDING_HEADERS}
0238     ${KPublicTransport_Datatypes_FORWARDING_HEADERS}
0239     ${KPublicTransport_Layout_FORWARDING_HEADERS}
0240     ${KPublicTransport_Models_FORWARDING_HEADERS}
0241     DESTINATION ${KPUBLICTRANSPORT_INSTALL_INCLUDEDIR}/KPublicTransport
0242 )
0243 install(FILES
0244     ${KPublicTransport_HEADERS}
0245     ${KPublicTransport_Datatypes_HEADERS}
0246     ${KPublicTransport_Layout_HEADERS}
0247     ${KPublicTransport_Models_HEADERS}
0248     ${CMAKE_CURRENT_BINARY_DIR}/kpublictransport_export.h
0249     DESTINATION ${KPUBLICTRANSPORT_INSTALL_INCLUDEDIR}/kpublictransport
0250 )
0251 
0252 
0253 if (BUILD_QCH)
0254     ecm_add_qch(
0255         KPublicTransport_QCH
0256         NAME KPublicTransport
0257         BASE_NAME KPublicTransport
0258         VERSION ${RELEASE_SERVICE_VERSION}
0259         ORG_DOMAIN org.kde
0260         SOURCES # using only public headers, to cover only public API
0261         ${KPublicTransport_HEADERS}
0262         ${KPublicTransport_Datatypes_HEADERS}
0263         ${KPublicTransport_Models_HEADERS}
0264         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0265         #IMAGE_DIRS "${CMAKE_SOURCE_DIR}/docs/pics"
0266         LINK_QCHS
0267             Qt6Core_QCH
0268         INCLUDE_DIRS
0269             ${CMAKE_CURRENT_BINARY_DIR}
0270         BLANK_MACROS
0271             KPUBLICTRANSPORT_EXPORT
0272         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0273         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0274         COMPONENT Devel
0275     )
0276 endif()