cmake_minimum_required(VERSION 3.1)

project(nbind VERSION 1.0.0)

add_definitions(-DBUILDING_NODE_EXTENSION)    
add_definitions(-DUSING_V8_SHARED)
add_definitions(-DUSING_UV_SHARED)     
add_definitions(-DV8_DEPRECATION_WARNINGS)

include(node_modules/node-cmake/NodeJS.cmake)
nodejs_init()

include_directories(node_modules/nbind/include)
file(GLOB NBIND_SOURCE_FILES node_modules/nbind/src/*.cc node_modules/nbind/src/v8/*.cc)

# Download automatically, you can also just copy the conan.cmake file
if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan.cmake")
    message(STATUS "Downloading conan.cmake from https://github.com/conan-io/cmake-conan")
    file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/master/conan.cmake"
            "${CMAKE_BINARY_DIR}/conan.cmake")
endif()

include(${CMAKE_BINARY_DIR}/conan.cmake)

conan_cmake_run(REQUIRES 
        Hello/0.1@memsharded/testing
        BASIC_SETUP NO_OUTPUT_DIRS
        BUILD missing)
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)

SET(SRCS
    ${NBIND_SOURCE_FILES}
    hello.cc
    )

add_nodejs_module(${PROJECT_NAME} ${SRCS})
target_link_libraries(${PROJECT_NAME} ${CONAN_LIBS})