Refine the build configure
[platform/framework/native/certificate-selector.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 # Set application name and PKG_ID
4 SET(this_target CertificateSelector)
5 SET(PKG_ID hyCsE05ySM)
6
7 INCLUDE(FindPkgConfig)
8 pkg_check_modules(${this_target}_pkgs REQUIRED "osp-appfw osp-uifw appinfo")
9 FOREACH(flag ${${this_target}_pkgs_CFLAGS})
10         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
11 ENDFOREACH(flag)
12
13 # Include directories
14 INCLUDE_DIRECTORIES(inc)
15
16 # Source files
17 FILE(GLOB ${this_target}_SOURCE_FILES src/*.cpp)
18
19 ## SET C COMPILER FLAGS
20 SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
21
22 ## SET CPP COMPILER FLAGS
23 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIE -fvisibility=hidden")
24 SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
25
26 # Create executable
27 SET(CMAKE_EXECUTABLE_SUFFIX ".exe")
28 ADD_EXECUTABLE (${this_target} ${${this_target}_SOURCE_FILES})
29
30 ## SET LINKER FLAGS
31 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
32
33 TARGET_LINK_LIBRARIES(${this_target} ${${this_target}_pkgs_LDFLAGS})
34 TARGET_LINK_LIBRARIES(${this_target} -pie)
35
36 # Copy resources
37 INSTALL(TARGETS ${this_target} DESTINATION /usr/apps/${PKG_ID}/bin)
38
39 INSTALL(FILES ${CMAKE_SOURCE_DIR}/manifest.xml DESTINATION /usr/apps/${PKG_ID}/info)
40 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/res DESTINATION /usr/apps/${PKG_ID})
41 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/shared DESTINATION /usr/apps/${PKG_ID})