Warning, /education/marble/src/apps/behaim/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 set(marble_SRCS main.cpp)
0002 qt5_add_resources(marble_QRCS MarbleBehaim.qrc)
0003
0004 include_directories(${CMAKE_CURRENT_BINARY_DIR})
0005
0006 if (ANDROID)
0007 set(TARGET MarbleBehaim)
0008
0009 find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED COMPONENTS AndroidExtras)
0010
0011 add_library (${TARGET} SHARED ${marble_SRCS} ${marble_QRCS})
0012
0013 # while not directly linked, need to be listed here to have deployqt pick up those libs
0014 target_link_libraries (
0015 ${TARGET}
0016 marblewidget
0017 astro
0018 Qt5::Concurrent
0019 Qt5::Xml
0020 Qt5::Widgets
0021 Qt5::PrintSupport
0022 Qt5::Network
0023 Qt5::Sql
0024 Qt5::Svg
0025 Qt5::Positioning
0026 Qt5::AndroidExtras
0027 Qt5::Multimedia
0028 )
0029
0030 if (TARGET Qt5::WebEngineWidgets)
0031 target_link_libraries(${TARGET} Qt5::WebEngineWidgets Qt5::WebEngine)
0032 endif()
0033 else()
0034 set(TARGET marble-behaim)
0035 add_executable (${TARGET} ${marble_SRCS} ${marble_QRCS})
0036 endif()
0037
0038 target_link_libraries (
0039 ${TARGET}
0040 marbledeclarative
0041 )
0042
0043 FILE(GLOB QML_FILES *.qml)
0044 add_custom_target(marble-behaim_resources ALL SOURCES ${QML_FILES} package/AndroidManifest.xml)
0045
0046 if (ANDROID)
0047 install(DIRECTORY "../../../data/android/" DESTINATION "${CMAKE_INSTALL_PREFIX}/res")
0048 set(ABSOLUTE_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}")
0049 if(NOT IS_ABSOLUTE "${ABSOLUTE_INSTALL_PATH}")
0050 set(ABSOLUTE_INSTALL_PATH "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_PREFIX}")
0051 endif()
0052 get_filename_component(ABSOLUTE_INSTALL_PATH "${ABSOLUTE_INSTALL_PATH}" ABSOLUTE)
0053 get_filename_component(QT_ANDROID_QT_ROOT "${Qt5Core_DIR}/../../.." ABSOLUTE)
0054 set(ANDROID_SDK_ROOT $ENV{ANDROID_SDK_ROOT})
0055 set(ANDROID_NDK_ROOT $ENV{ANDROID_NDK_ROOT})
0056 set(QT_ANDROID_APP_PATH "${ABSOLUTE_INSTALL_PATH}/libs/${ANDROID_ABI}/libMarbleBehaim.so")
0057 set(QT_ANDROID_APP_EXTRA_LIBS "${ABSOLUTE_INSTALL_PATH}/lib/libastro.so,${ABSOLUTE_INSTALL_PATH}/lib/libmarblewidget-qt5.so,${ABSOLUTE_INSTALL_PATH}/lib/libmarbledeclarative.so")
0058 set(QML_ROOT_PATH "${ABSOLUTE_INSTALL_PATH}/")
0059 set(QT_ANDROID_APP_EXTRA_PLUGINS "${ABSOLUTE_INSTALL_PATH}//share,${ABSOLUTE_INSTALL_PATH}//lib/qml")
0060 set(QT_ANDROID_APP_PACKAGE_SOURCE_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/package")
0061 set(QT_ANDROID_APP_PACKAGE_NAME "org.kde.marble.behaim")
0062 set(QT_ANDROID_APP_NAME "Marble Globe: Behaim's Erdapfel")
0063 configure_file(package/deploy-behaim.json.in ${CMAKE_CURRENT_BINARY_DIR}/deploy-behaim.json @ONLY)
0064 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/deploy-behaim.json DESTINATION "${CMAKE_INSTALL_PREFIX}/share")
0065 install(TARGETS ${TARGET} LIBRARY DESTINATION libs/${ANDROID_ABI})
0066 if (TARGET create-apk-MarbleBehaim)
0067 set(PACKAGE_DIR "${CMAKE_BINARY_DIR}/MarbleBehaim_projects/")
0068 set_target_properties(create-apk-MarbleBehaim PROPERTIES ANDROID_APK_DIR "${PACKAGE_DIR}")
0069 add_custom_target(marblebehaim-move-metadata ALL
0070 COMMAND cmake -E echo "Moving MarbleBehaim shared Android resources"
0071 COMMAND cmake -E remove_directory "${PACKAGE_DIR}"
0072 COMMAND cmake -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/package" "${PACKAGE_DIR}"
0073 COMMAND cmake -E copy_directory "${CMAKE_SOURCE_DIR}/data/android/" "${PACKAGE_DIR}/res"
0074 )
0075 add_dependencies(create-apk-MarbleBehaim marblebehaim-move-metadata)
0076 endif()
0077 else()
0078 if(MARBLE_INSTALL_ANDROID_APPS)
0079 install(TARGETS ${TARGET} RUNTIME DESTINATION bin)
0080 endif()
0081 endif()