cmake_minimum_required (VERSION 3.2)

project(plugin)

if (CMAKE_OPENXGPLUGIN_BUILD_TYPE STREQUAL Debug)
	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -DDEBUG_IS_ON=1 -DTRACE_IS_ON=1 -DINFO_IS_ON=1")
else()
	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
endif()

set(CMAKE_CURRENT_SOURCE_DIR ${CMAKE_OPENXGPLUGIN_DIR})


set(EXTERNAL_INSTALL_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/build/ext)
set(SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)    

include_directories(${EXTERNAL_INSTALL_LOCATION}/json/include)
include_directories(${EXTERNAL_INSTALL_LOCATION}/pistache/include)
link_directories(${EXTERNAL_INSTALL_LOCATION}/pistache/libs)


include_directories(${SRC_DIR}/sctp)
include_directories(${SRC_DIR}/sbi)
include_directories(${SRC_DIR}/common)
include_directories(${SRC_DIR}/plugin_app)
include_directories(${SRC_DIR}/api)
include_directories(${SRC_DIR}/impl)
include_directories(${SRC_DIR}/model)
include_directories(${SRC_DIR}/utils)

file(GLOB SRCS
    ${SRC_DIR}/sbi/*.cpp
    ${SRC_DIR}/sctp/*.cpp
    ${SRC_DIR}/plugin_app/*.cpp
    ${SRC_DIR}/common/*.cpp
    ${SRC_DIR}/common/*.c
    ${SRC_DIR}/api/*.cpp
    ${SRC_DIR}/impl/*.cpp
    ${SRC_DIR}/model/*.cpp
    ${SRC_DIR}/utils/*.cpp
    ${SRC_DIR}/utils/*.c
)

add_executable(${PROJECT_NAME} ${SRCS} )
target_link_libraries(${PROJECT_NAME} curl pistache sctp pthread config++)

