Removing debian folder Multi-User support
[apps/core/preloaded/calculator.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(calculator C)
3
4 SET(SRCS 
5     src/calc-main.c 
6     src/calculator_edje.c 
7     src/calculator_parser.c
8     src/calc-expression.c
9     src/calc-string.c
10     src/calc-view.c
11         src/decnumber/decNumber.c
12         src/decnumber/decContext.c)
13     
14 SET(VENDOR "tizen")
15 SET(PACKAGE ${PROJECT_NAME})
16 SET(PKGNAME "org.${VENDOR}.${PACKAGE}")
17 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
18 #SET(INSTALL_DIR_APPS "/usr/apps/${PKGNAME}")
19 SET(INSTALL_DIR_PRE "/usr")
20
21 SET(BINDIR "${PREFIX}/bin")
22 SET(RESDIR "${PREFIX}/res")
23 SET(DATADIR "${PREFIX}/data")
24 SET(LOCALEDIR "${RESDIR}/locale")
25 SET(ICONDIR "${RESDIR}/icons")
26 SET(DESKTOPICONDIR "${ICONDIR}/default/small")
27 SET(EDJDIR "${RESDIR}/edje")
28     
29 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
30
31 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
32
33 INCLUDE(FindPkgConfig)
34 pkg_check_modules(pkgs REQUIRED elementary
35                                 dlog glib-2.0 evas edje vconf
36                                 ecore ecore-input capi-appfw-application
37                                 feedback
38 )
39
40 FIND_LIBRARY(LIB_M m)
41
42 # Apply Public emulator image
43 FIND_PROGRAM(UNAME NAMES uname)
44 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
45 IF("${ARCH}" STREQUAL "arm")
46     INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.calculator.png DESTINATION ${ICONDIR})
47     MESSAGE("install confidential icon ...")
48 ELSE("${ARCH}" STREQUAL "arm")
49     INSTALL(FILES ${CMAKE_SOURCE_DIR}/03_mainmenu_icon_calculator.png DESTINATION ${ICONDIR} RENAME
50     org.tizen.calculator.png)
51     MESSAGE("install releasable icon ...")
52 ENDIF("${ARCH}" STREQUAL "arm")
53
54 ADD_DEFINITIONS(${pkgs_CFLAGS})
55 ADD_DEFINITIONS("-fpie")
56
57 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
58 ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
59 ADD_DEFINITIONS("-DSLP_DEBUG")
60 ADD_DEFINITIONS("-DSLP_PROF")
61
62 ADD_DEFINITIONS("-DVENDOR=\"${VENDOR}\"")
63 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
64 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
65 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
66
67 ADD_DEFINITIONS("-DINSTALL_DIR_APPS=\"${INSTALL_DIR_APPS}\"")
68 ADD_DEFINITIONS("-DBINDIR=\"${BINDIR}\"")
69 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
70 ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
71 ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
72
73
74 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
75 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-pie" ${LIB_M})
76
77 ADD_CUSTOM_TARGET(calculator.edj 
78     COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images
79     ${CMAKE_SOURCE_DIR}/calculator.edc ${CMAKE_BINARY_DIR}/calculator.edj
80     DEPENDS ${CMAKE_SOURCE_DIR}/calculator.edc
81 )
82 ADD_DEPENDENCIES(${PROJECT_NAME} calculator.edj)
83
84 ADD_CUSTOM_TARGET(calculator_theme.edj
85     COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/theme
86     ${CMAKE_SOURCE_DIR}/theme/calculator_theme.edc ${CMAKE_BINARY_DIR}/theme/calculator_theme.edj
87     DEPENDS ${CMAKE_SOURCE_DIR}/theme/calculator_theme.edc
88 )
89 ADD_DEPENDENCIES(${PROJECT_NAME} calculator_theme.edj)
90
91 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION 
92 ${BINDIR})
93 INSTALL(FILES ${CMAKE_BINARY_DIR}/calculator.edj DESTINATION ${EDJDIR})
94 INSTALL(FILES ${CMAKE_BINARY_DIR}/theme/calculator_theme.edj DESTINATION 
95 ${EDJDIR})
96
97 # install application HOME directory
98 INSTALL(DIRECTORY DESTINATION ${DATADIR})
99
100 # process setting
101 install(FILES ${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.ini DESTINATION /usr/share/process-info )
102
103 ADD_SUBDIRECTORY(po)
104
105 # desktop icon
106 set(PREFIX ${CMAKE_INSTALL_PREFIX})
107 install(FILES ${CMAKE_SOURCE_DIR}/org.tizen.calculator.xml DESTINATION /usr/share/packages)
108 install(FILES ${CMAKE_SOURCE_DIR}/org.tizen.calculator.png DESTINATION  /usr/share/icons/default/small)