cmake_minimum_required(VERSION 3.9)
project(SimplePlacer)

set(CMAKE_CXX_STANDARD 14)

# source file
file(GLOB_RECURSE ALL_SOURCE_FILE ./src/*.cpp ./src/*.h)

set(RL_MODE 0)

add_executable(SimplePlacer ${ALL_SOURCE_FILE})

# boost
IF (CMAKE_SYSTEM_NAME MATCHES "Windows")
    SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "3rdparty/boost1.7.2/include")
    SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "3rdparty/boost1.7.2/lib")
    find_package(Boost)
    include_directories(${Boost_INCLUDE_DIR})
    LINK_DIRECTORIES(${CMAKE_LIBRARY_PATH})
ELSE ()
    SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "3rdparty/boost_1_72_0/")
    SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "3rdparty/boost_1_72_0/stage/lib")
    find_package(Boost)
    include_directories(${Boost_INCLUDE_DIR})
    LINK_DIRECTORIES(${CMAKE_LIBRARY_PATH})
ENDIF ()


# opencv
IF (CMAKE_SYSTEM_NAME MATCHES "Windows")
    set(OpenCV_DIR "3rdparty/opencv")
    find_package(OpenCV REQUIRED)
    include_directories(${OpenCV_INCLUDE_DIRS})
    set(OpenCV_LIBS opencv_core opencv_imgproc opencv_highgui opencv_imgcodecs)
    target_link_libraries(SimplePlacer ${OpenCV_LIBS})
ENDIF ()

IF (CMAKE_SYSTEM_NAME MATCHES "Windows")
    set(CMAKE_EXE_LINKER_FLAGS "-static-libstdc++ -static-libgcc -pthread -std=c++11 -Wl,--no-as-needed -Wl,-Bstatic,--whole-archive -lwinpthread -Wl,--no-whole-archive -Wl,-Bdynamic")
ELSE ()
    set(CMAKE_EXE_LINKER_FLAGS "-static-libstdc++ -static-libgcc -pthread -std=c++11 -Wl,--no-as-needed -Wl,-Bstatic,--whole-archive -Wl,--no-whole-archive -Wl,-Bdynamic")
ENDIF ()