Revise directory structure
[platform/core/connectivity/asp-manager.git] / src / CMakeLists.txt
index ed5e18f..dfe4d34 100755 (executable)
@@ -1,56 +1,53 @@
+# Copyright (c) 2014-2015 Samsung Electronics Co., Ltd All Rights Reserved
+#
+#    Licensed under the Apache License, Version 2.0 (the "License");
+#    you may not use this file except in compliance with the License.
+#    You may obtain a copy of the License at
+#
+#        http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS,
+#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#    See the License for the specific language governing permissions and
+#    limitations under the License.
+#
+# @file        CMakeLists.txt
+#
+
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(asp-manager C)
 SET(PACKAGE ${PROJECT_NAME})
-SET(INTERFACES "${CMAKE_SOURCE_DIR}/interfaces")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(asp_pkgs REQUIRED 
-       glib-2.0 
-       gio-2.0 
-       gio-unix-2.0
-       dlog 
-       nsd-dns-sd
-       vconf
-       )
-
-FOREACH(flag ${asp_pkgs_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/interfaces)
 
 SET(SRCS
+       ${CMAKE_SOURCE_DIR}/src/asp-coordination-protocol.c
        ${CMAKE_SOURCE_DIR}/src/asp-manager.c
        ${CMAKE_SOURCE_DIR}/src/asp-manager-event.c
        ${CMAKE_SOURCE_DIR}/src/asp-manager-gdbus.c
+       ${CMAKE_SOURCE_DIR}/src/asp-manager-main.c
        ${CMAKE_SOURCE_DIR}/src/asp-manager-util.c
+       ${CMAKE_SOURCE_DIR}/src/asp-p2p-conn.c
+       ${CMAKE_SOURCE_DIR}/src/asp-service.c
+       ${CMAKE_SOURCE_DIR}/src/asp-session.c
+       ${CMAKE_SOURCE_DIR}/src/asp-session-peer.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech-ble.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech-infra.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech-nan.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech-nfc.c
+       ${CMAKE_SOURCE_DIR}/src/asp-tech-p2p.c
+       ${CMAKE_SOURCE_DIR}/src/gfsm.c
+       ${CMAKE_SOURCE_DIR}/interfaces/generated-code.c
        )
 
-FILE(GLOB SERVICE_SRCS ${CMAKE_SOURCE_DIR}/src/service/*.c)
-FILE(GLOB SESSION_SRCS ${CMAKE_SOURCE_DIR}/src/session/*.c)
-FILE(GLOB TECH_SRCS ${CMAKE_SOURCE_DIR}/src/tech/*.c)
-
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fpic -Wall -Werror-implicit-function-declaration -fvisibility=hidden")
-SET(ARM_CFLAGS "${ARM_CFLAGS} -mapcs -mabi=aapcs-linux -msoft-float -Uarm -fpic")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
+SET_SOURCE_FILES_PROPERTIES(${CMAKE_SOURCE_DIR}/interfaces/generated-code.c PROPERTIES GENERATED TRUE)
 
 ADD_DEFINITIONS("-DUSE_DLOG")
 
-ADD_CUSTOM_COMMAND(
-       WORKING_DIRECTORY
-       OUTPUT ${CMAKE_SOURCE_DIR}/src/generated-code.c
-       COMMAND gdbus-codegen --interface-prefix net.asp.
-                       --generate-c-code generated-code
-                       --c-namespace Asp
-                       --c-generate-object-manager
-                       --generate-docbook generated-code-docs
-                       ${INTERFACES}/aspmanager-iface-service.xml ${INTERFACES}/aspmanager-iface-session.xml 
-                       COMMENT "Generating GDBus .c/.h")
-
-ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS} ${SERVICE_SRCS} ${SESSION_SRCS} ${TECH_SRCS} ${CMAKE_SOURCE_DIR}/src/generated-code.c)
+ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
+ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
 
 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${asp_pkgs_LDFLAGS} -ldl)