CMAKE_MINIMUM_REQUIRED(VERSION 3.8.2 FATAL_ERROR)
PROJECT(sample)
include(GNUInstallDirs)
add_library(sample SHARED sample_api.cpp)

SET(CMAKE_CXX_STANDARD 14)
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
SET(CMAKE_POSITION_INDEPENDENT_CODE ON)

set_target_properties(sample PROPERTIES 
  SOVERSION 1
  PUBLIC_HEADER sample_api.h)

FIND_PACKAGE(Torch REQUIRED)
SET(TORCH_DIR "/usr/local/lib/python3.8/site-packages/torch")
INCLUDE_DIRECTORIES( "${TORCH_DIR}/include" )
INCLUDE_DIRECTORIES( "${TORCH_DIR}/include/torch/csrc/api/include" )

target_include_directories(sample PRIVATE .)

TARGET_LINK_LIBRARIES(sample PRIVATE "${TORCH_LIBRARIES}")

install(TARGETS sample
    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
    PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})