1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
4 #SET(PREFIX $(CMAKE_INSTALL_PREFIX))
6 SET(EXEC_PREFIX "\${prefix}")
7 SET(LIBDIR "\${prefix}/lib")
8 SET(INCLUDEDIR "\${prefix}/include")
10 INCLUDE(FindPkgConfig)
11 pkg_check_modules(pkgs REQUIRED capi-network-wifi-direct glib-2.0 gio-2.0 gobject-2.0 dlog libnl-2.0 capi-appfw-application vconf ${MDM_REQUIRED_PKGS})
12 FOREACH(flag ${pkgs_CFLAGS})
13 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
16 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
17 ${CMAKE_SOURCE_DIR}/oem
20 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fPIE")
21 SET(CMAKE_C_FLAGS_DEBUG "O0 -g -fPIE")
22 SET(CMAKE_C_FLAGS_RELEASE "O2 -fPIE")
24 SET(ARCH "${ARCHITECTURE}")
26 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
27 ADD_DEFINITIONS("-DUSE_DLOG")
29 IF(TIZEN_TETHERING_ENABLE)
30 ADD_DEFINITIONS(-DTIZEN_TETHERING_ENABLE)
31 ENDIF(TIZEN_TETHERING_ENABLE)
33 IF(TIZEN_FEATURE_SERVICE_DISCOVERY)
34 ADD_DEFINITIONS(-DTIZEN_FEATURE_SERVICE_DISCOVERY)
35 ENDIF(TIZEN_FEATURE_SERVICE_DISCOVERY)
36 IF(TIZEN_FEATURE_WIFI_DISPLAY)
37 ADD_DEFINITIONS(-DTIZEN_FEATURE_WIFI_DISPLAY)
38 ENDIF(TIZEN_FEATURE_WIFI_DISPLAY)
39 IF(TIZEN_WLAN_CONCURRENT_ENABLE)
40 ADD_DEFINITIONS(-DTIZEN_WLAN_CONCURRENT_ENABLE)
41 ENDIF(TIZEN_WLAN_CONCURRENT_ENABLE)
44 ADD_DEFINITIONS(-DTIZEN_ARCH_64)
48 ADD_DEFINITIONS(-DTIZEN_MOBILE)
52 ADD_DEFINITIONS(-DTIZEN_TV)
55 IF(TIZEN_WIFI_MODULE_BUNDLE)
56 ADD_DEFINITIONS(-DTIZEN_WIFI_MODULE_BUNDLE)
57 ENDIF(TIZEN_WIFI_MODULE_BUNDLE)
60 ADD_DEFINITIONS(-DCTRL_IFACE_DBUS)
61 ENDIF(CTRL_IFACE_DBUS)
64 ${CMAKE_SOURCE_DIR}/src/wifi-direct-manager.c
65 ${CMAKE_SOURCE_DIR}/src/wifi-direct-state.c
66 ${CMAKE_SOURCE_DIR}/src/wifi-direct-client.c
67 ${CMAKE_SOURCE_DIR}/src/wifi-direct-peer.c
68 ${CMAKE_SOURCE_DIR}/src/wifi-direct-group.c
69 ${CMAKE_SOURCE_DIR}/src/wifi-direct-session.c
70 ${CMAKE_SOURCE_DIR}/src/wifi-direct-event.c
71 ${CMAKE_SOURCE_DIR}/src/wifi-direct-util.c
72 ${CMAKE_SOURCE_DIR}/oem/wifi-direct-oem.c
75 IF(TIZEN_FEATURE_SERVICE_DISCOVERY)
76 SET(SRCS ${SRCS} ${CMAKE_SOURCE_DIR}/src/wifi-direct-service.c)
77 ENDIF(TIZEN_FEATURE_SERVICE_DISCOVERY)
79 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
80 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
81 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -ldl)
83 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
84 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/udhcp_script.non-autoip DESTINATION etc/wifi-direct)
85 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/wifi-direct-server.sh DESTINATION bin)
86 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/p2p_supp.sh DESTINATION sbin)
87 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/ccode.conf DESTINATION etc/wifi-direct)
88 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/persistent-peer DESTINATION /opt/etc)
89 IF(TIZEN_WIFI_MODULE_BUNDLE)
90 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/bundle/p2p_supp.conf DESTINATION etc/wifi-direct)
91 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/bundle/p2p_supp.conf DESTINATION /opt/etc)
92 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/bundle/dhcpd.p2p.conf DESTINATION etc/wifi-direct)
93 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/bundle/dhcpd-notify.sh DESTINATION bin)
94 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/bundle/wifi-direct-dhcp.sh DESTINATION bin)
95 ELSE(TIZEN_WIFI_MODULE_BUNDLE)
96 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/p2p_supp.conf DESTINATION etc/wifi-direct)
97 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/p2p_supp.conf DESTINATION /opt/etc)
98 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/dhcpd.p2p.conf DESTINATION etc/wifi-direct)
99 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/dhcpd-notify.sh DESTINATION bin)
100 INSTALL(FILES ${CMAKE_SOURCE_DIR}/files/common/wifi-direct-dhcp.sh DESTINATION bin)
101 ENDIF(TIZEN_WIFI_MODULE_BUNDLE)
103 IF("${ARCH}" MATCHES "^arm.*|.*86.*")
105 ADD_SUBDIRECTORY(plugin/wpasupplicant/ctrl_iface_dbus)
106 ELSE(CTRL_IFACE_DBUS)
107 ADD_SUBDIRECTORY(plugin/wpasupplicant/ctrl_iface_sock)
108 ENDIF(CTRL_IFACE_DBUS)
110 ADD_SUBDIRECTORY(plugin/wpasupplicant/emul)