upload tizen1.0 source
[framework/base/syspopup.git] / syspopup-caller / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true)
3
4 PROJECT(syspopup_caller C)
5 SET(VERSION 1.1)
6
7 ### Global setting ###
8
9 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
10 SET(EXEC_PREFIX "\${prefix}")
11 SET(LIBDIR "\${prefix}/lib")
12 SET(INCLUDEDIR "\${prefix}/include")
13
14 # Build type : Release
15 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
16         SET(CMAKE_BUILD_TYPE "Release")
17 ENDIF()
18 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
19
20 # Set required packages
21 INCLUDE(FindPkgConfig)
22
23 pkg_check_modules(spcpkgs REQUIRED dlog bundle sqlite3 glib-2.0 aul dbus-glib-1)
24
25 FOREACH(flag ${spcpkgs_CFLAGS})
26         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
27 ENDFOREACH(flag)
28
29 # Compiler flags
30 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
31 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wl,-zdefs" )
32 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
33 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
34 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
35 SET(CMAKE_C_FLAGS_RELEASE "-O2")
36
37 SET(CMAKE_SKIP_BUILD_RPATH true)
38
39 # Get uname value to set 'TARGET' definition 
40 # TODO: Is this needed?
41 FIND_PROGRAM(UNAME NAMES uname)
42 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
43 IF("${ARCH}" STREQUAL "arm")
44         ADD_DEFINITIONS("-DTARGET")
45         MESSAGE("add -DTARGET")
46 ENDIF("${ARCH}" STREQUAL "arm")
47
48 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
49
50 # Linker flags
51 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
52
53 ### Build ###
54
55 add_library(syspopup_caller SHARED syspopup_caller.c)
56 target_link_libraries(syspopup_caller syspopup_mods ${spcpkgs_LDFLAGS})
57 SET_TARGET_PROPERTIES(syspopup_caller PROPERTIES SOVERSION 0.1.0)
58
59 # pkgconfig file
60 #CONFIGURE_FILE(syspopup-caller.pc.in syspopup-caller/syspopup-caller.pc @ONLY)
61 CONFIGURE_FILE(syspopup-caller.pc.in ${CMAKE_CURRENT_BINARY_DIR}/syspopup-caller.pc @ONLY)
62
63 ### Install ###
64 INSTALL(TARGETS syspopup_caller DESTINATION lib COMPONENT RuntimeLibraries)
65 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../include/syspopup_caller.h DESTINATION include)
66 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/syspopup-caller.pc DESTINATION lib/pkgconfig)
67