Tizen 2.0 Release
[framework/connectivity/mobileap-agent.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(mobileap-agent C)
3
4 SET(SRCS src/mobileap_agent.c
5         src/mobileap_main.c
6         src/mobileap_wifi.c
7         src/mobileap_usb.c
8         src/mobileap_bluetooth.c
9         src/mobileap_handler.c
10         src/mobileap_common.c
11         src/mobileap_notification.c
12         src/mobileap_network.c
13 )
14
15 SET(APP_VENDOR "samsung")
16 SET(APP_NAME mobileap-agent)
17 SET(APP_DIR /usr/bin)
18 SET(INCLUDE_DIR ${CMAKE_SOURCE_DIR}/include)
19
20 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
21         SET(CMAKE_BUILD_TYPE "Release")
22 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
23
24 IF("${CMAKE_BUILD_TYPE}" STREQUAL "Private")
25         SET(CMAKE_BUILD_TYPE "Release")
26         ADD_DEFINITIONS("-D__PRIVATE_CODE__")
27         SET(PRIVATE_REQUIRED_PKGS "mdm kies-control-point")
28 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "Private")
29 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
30
31 INCLUDE_DIRECTORIES(${INCLUDE_DIR})
32
33 INCLUDE(FindPkgConfig)
34 pkg_check_modules(pkgs REQUIRED dlog dbus-glib-1 pmapi vconf notification libssl secure-storage capi-network-connection capi-network-bluetooth ${PRIVATE_REQUIRED_PKGS})
35 FOREACH(flag ${pkgs_CFLAGS})
36         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
37 ENDFOREACH(flag)
38
39 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
40 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
41 SET(CMAKE_C_FLAGS_RELEASE "-O2")
42
43 FIND_PROGRAM(UNAME NAMES uname)
44 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
45 IF("${ARCH}" STREQUAL "arm")
46         ADD_DEFINITIONS("-DTARGET")
47         MESSAGE("add -DTARGET")
48 ENDIF("${ARCH}" STREQUAL "arm")
49
50 FIND_PROGRAM(DBUS_BINDING_TOOL NAMES dbus-binding-tool)
51 EXEC_PROGRAM("${DBUS_BINDING_TOOL}" ARGS "--prefix=tethering ${INCLUDE_DIR}/tethering-dbus-interface.xml --mode=glib-server --output=${INCLUDE_DIR}/tethering-server-stub.h")
52
53 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
54 ADD_DEFINITIONS("-DVENDOR=\"${APP_VENDOR}\"")
55 ADD_DEFINITIONS("-DAPPNAME=\"${APP_NAME}\"")
56 ADD_DEFINITIONS("-DAPP_DIR=\"${APP_DIR}\"")
57
58 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
59
60 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
61 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
62
63 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
64 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/packaging/org.tizen.tethering.service DESTINATION share/dbus-1/services)
65