boc-sys 0.0.1

Implementation details of boc.
Documentation
cmake_minimum_required(VERSION 3.22)

project(verona-rt-sys-bindings)

include(FetchContent)

if(CMAKE_GENERATOR STREQUAL "Ninja")
    set(CMAKE_COLOR_DIAGNOSTICS ON)
endif()

# We override snmalloc to use our submodule, so that we don't
# need to hit the network to build. This matters for docs.rs.
# See #18 for details.
set(SNMALLOC_PATH "../snmalloc/")
FetchContent_Declare(snmalloc SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/${SNMALLOC_PATH}")

set(VERONA_PATH "../verona-rt/")
add_subdirectory(${VERONA_PATH} verona-rt)


find_package(Threads REQUIRED)
add_library(boxcar_bindings STATIC bindings.cc)
target_link_libraries(boxcar_bindings verona_rt)
set_property(TARGET boxcar_bindings PROPERTY CXX_STANDARD 17)

add_executable(playground playground.cc)
target_link_libraries(playground verona_rt)

install(TARGETS boxcar_bindings DESTINATION .)