~dpm/ubuntu-filemanager-app/run-ap-from-out-of-source-build

117.2.1 by nskaggs
add cmake build
1
project(com.ubuntu.filemanager)
2
cmake_minimum_required(VERSION 2.8.9)
3
4
# Standard install paths
5
include(GNUInstallDirs)
6
7
option(INSTALL_TESTS "Install the tests on make install" on)
8
option(CLICK_MODE "Installs to a contained location" off)
9
10
set(APP_NAME filemanager)
11
set(DESKTOP_FILE "${PROJECT_NAME}_${APP_NAME}.desktop")
12
set(URLS_FILE "${PROJECT_NAME}_${APP_NAME}.url-dispatcher")
117.2.5 by nskaggs
tweak cmake
13
set(APP_HARDCODE ubuntu-filemanager-app)
117.2.6 by nskaggs
fix deb control, add build dris to cmake
14
set(MAIN_QML ${APP_HARDCODE}.qml)
139.1.2 by nskaggs
cmake tweaks
15
set(ICON_FILE filemanager64.png)
117.2.4 by Nicholas Skaggs
fix cmake build
16
set(AUTOPILOT_DIR ubuntu_filemanager_app)
117.2.1 by nskaggs
add cmake build
17
18
if(CLICK_MODE)
19
    if(NOT DEFINED BZR_SOURCE)
117.2.5 by nskaggs
tweak cmake
20
        set(BZR_SOURCE "lp:${APP_HARDCODE}")
117.2.1 by nskaggs
add cmake build
21
        message("-- Setting BZR_SOURCE to ${BZR_SOURCE}")
22
    endif(NOT DEFINED BZR_SOURCE)
23
    set(CMAKE_INSTALL_PREFIX /)
24
    set(CMAKE_INSTALL_BINDIR /)
25
    set(DATA_DIR /)
139.1.2 by nskaggs
cmake tweaks
26
    set(ICON ${ICON_FILE})
139.1.4 by nskaggs
force launching with -qt5
27
    set(EXEC "qmlscene -qt5 ${MAIN_QML}")
117.2.1 by nskaggs
add cmake build
28
    set(DESKTOP_DIR ${DATA_DIR})
29
    set(URLS_DIR ${DATA_DIR})
30
else(CLICK_MODE)
31
    set(DATA_DIR ${CMAKE_INSTALL_DATADIR}/${APP_HARDCODE})
32
    set(EXEC ${APP_HARDCODE})
139.1.2 by nskaggs
cmake tweaks
33
    set(ICON ${CMAKE_INSTALL_PREFIX}/${DATA_DIR}/${ICON_FILE})
117.2.1 by nskaggs
add cmake build
34
    configure_file(${APP_HARDCODE}.in
35
        ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE})
36
    install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE}
37
        DESTINATION ${CMAKE_INSTALL_BINDIR})
38
    set(DESKTOP_DIR ${CMAKE_INSTALL_DATADIR}/applications)
39
    set(URLS_DIR ${CMAKE_INSTALL_DATADIR}/url-dispatcher/urls)
40
endif(CLICK_MODE)
41
42
file(GLOB_RECURSE I18N_SRC_FILES
43
     RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
44
     rc/**.qml desktop/**.desktop.in)
45
list(SORT I18N_SRC_FILES)
46
47
48
file(GLOB SRC_FILES
49
     RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
117.2.7 by nskaggs
remove Makefile add json
50
     *.qml *.js *.png *.js *.json)
91.2.25 by Michael Spencer
Refactored files into sub-directories
51
install(DIRECTORY ui components icons
117.2.12 by nskaggs
add more qml build installs
52
    DESTINATION ${DATA_DIR})
139.1.2 by nskaggs
cmake tweaks
53
install(FILES ${SRC_FILES} ${ICON_FILE} DESTINATION ${DATA_DIR})
117.2.1 by nskaggs
add cmake build
54
55
configure_file(${DESKTOP_FILE}.in ${CMAKE_CURRENT_BINARY_DIR}/${DESKTOP_FILE})
117.2.5 by nskaggs
tweak cmake
56
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${DESKTOP_FILE}
57
    DESTINATION ${DESKTOP_DIR})
117.2.1 by nskaggs
add cmake build
58
59
install(FILES ${URLS_FILE} DESTINATION ${URLS_DIR})
60
61
# Tests
62
enable_testing()
63
64
add_subdirectory(click)
65
add_subdirectory(po)
66
add_subdirectory(tests)