cmake_minimum_required(VERSION 3.16..3.30)

project(CubingEngineCpp
    VERSION "1.0"
    LANGUAGES CXX
)
set(TARGET_NAME cubing-engine-cpp)

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
include(plugin)

# Extension definition
# ====================
# Declare the binding
add_library(${TARGET_NAME}
	SHARED  # compile as an *.so
	propagator.hpp
	propagator.cpp
)
set_target_properties(${TARGET_NAME}
    PROPERTIES
    LINKER_LANGUAGE CXX
    POSITION_INDEPENDENT_CODE ON
)

target_link_libraries(${TARGET_NAME}
	PUBLIC
    Paramita::interfaces
)
