#compilar
# cmake -DPYTHON_LIBRARY_DIR=$(python3 -c "import sysconfig; print(sysconfig.get_config_var('LIBDIR'))") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") ../
# make
# make install

cmake_minimum_required(VERSION 3.1)



set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

if(NOT CMAKE_BUILD_TYPE)
  set(CMAKE_BUILD_TYPE Release)
endif()

set(CMAKE_CXX_FLAGS "-O3")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

project(ctreelearn)

#set(Torch_DIR "/Users/wonderalexandre/opt/anaconda3/lib/python3.8/site-packages/torch/share/cmake")
#find_package(Torch REQUIRED)


include_directories("${CMAKE_SOURCE_DIR}/cpp/include/aap_bits")
include_directories("${CMAKE_SOURCE_DIR}/python")

file (GLOB SOURCE_FILES "ctreelearn/src/*.cpp")
file (GLOB HEADER_FILES "ctreelearn/include/*.hpp")
file (GLOB PYTHON_FILES "ctreelearn/*.cpp" "ctreelearn/*.hpp")

# Set up such that XCode organizes the files
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${SOURCE_FILES} ${HEADER_FILES} ${PYTHON_FILES} )

include(pybind11.cmake)
pybind11_add_module(ctreelearn 
	${SOURCE_FILES}
	${HEADER_FILES}
	${PYTHON_FILES}
)

target_link_libraries(ctreelearn PUBLIC)

install(TARGETS ctreelearn
  COMPONENT python
  LIBRARY DESTINATION "${PYTHON_LIBRARY_DIR}"
  )
