project(com.ubuntu.shorts) cmake_minimum_required(VERSION 2.8.9) find_program(INTLTOOL_MERGE intltool-merge) find_program(INTLTOOL_EXTRACT intltool-extract) # Standard install paths include(GNUInstallDirs) option(INSTALL_TESTS "Install the tests on make install" on) option(CLICK_MODE "Installs to a contained location" on) set(APP_NAME shorts) set(DESKTOP_FILE "${PROJECT_NAME}_${APP_NAME}.desktop") set(APP_HARDCODE shorts-app) set(MAIN_QML shorts-app.qml) set(ICON_FILE rssreader-app@30.png) set(AUTOPILOT_DIR shorts_app) set(UBUNTU_MANIFEST_PATH "click/manifest.json.in" CACHE INTERNAL "Relative path to the manifest file") if(CLICK_MODE) if(NOT DEFINED BZR_SOURCE) set(BZR_SOURCE "lp:ubuntu-rssreader-app") message("-- Setting BZR_SOURCE to ${BZR_SOURCE}") endif(NOT DEFINED BZR_SOURCE) set(CMAKE_INSTALL_PREFIX /) set(CMAKE_INSTALL_BINDIR /) set(DATA_DIR /) set(ICON ${ICON_FILE}) set(EXEC "qmlscene ${MAIN_QML}") set(DESKTOP_DIR ${DATA_DIR}) else(CLICK_MODE) set(DATA_DIR ${CMAKE_INSTALL_DATADIR}/${APP_HARDCODE}) set(EXEC ${APP_HARDCODE}) set(ICON ${CMAKE_INSTALL_PREFIX}/${DATA_DIR}/${ICON_FILE}) configure_file(${APP_HARDCODE}.in ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE}) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE} DESTINATION ${CMAKE_INSTALL_BINDIR}) set(DESKTOP_DIR ${CMAKE_INSTALL_DATADIR}/applications) endif(CLICK_MODE) file(GLOB_RECURSE I18N_SRC_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/po *.js *.qml) list(APPEND I18N_SRC_FILES ${DESKTOP_FILE}.in.in.h) list(SORT I18N_SRC_FILES) file(GLOB SRC_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.qml *.js *.json *.png) # make the files visible in the qtcreator tree add_custom_target(shorts_QMlFiles ALL SOURCES ${SRC_FILES}) install(DIRECTORY article_items feeds icons_tmp listview DESTINATION ${DATA_DIR}) install(FILES BaseTab.qml SavedTab.qml TopicTab.qml ShortsTab.qml NetworkManager.qml OrganicGrid.qml ArticleViewPage.qml GridModePage.qml GoogleFeedApi.qml OptionsKeeper.qml dateutils.js imgSeparator.js databasemodule_v2.js ArticleViewItem.qml ListModePage.qml ReadingOptions.qml DESTINATION ${DATA_DIR}) install(FILES ${MAIN_QML} ${ICON_FILE} DESTINATION ${DATA_DIR}) configure_file(${DESKTOP_FILE}.in.in ${DESKTOP_FILE}.in) add_custom_target(${DESKTOP_FILE} ALL COMMENT "Merging translations into ${DESKTOP_FILE}..." COMMAND LC_ALL=C ${INTLTOOL_MERGE} -d -u ${CMAKE_SOURCE_DIR}/po ${DESKTOP_FILE}.in ${DESKTOP_FILE} ) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${DESKTOP_FILE} DESTINATION ${DESKTOP_DIR}) # Tests enable_testing() add_subdirectory(click) add_subdirectory(po) add_subdirectory(tests) add_subdirectory(feeds) add_subdirectory(article_items)