cmake_minimum_required(VERSION 3.21)

project(
    ${SKBUILD_PROJECT_NAME}
    VERSION ${SKBUILD_PROJECT_VERSION}
)

message(SKBUILD_STATE="${SKBUILD_STATE}")

if(SKBUILD_STATE STREQUAL "editable")
    # Temporary fix for https://github.com/scikit-build/scikit-build-core/issues/374
    set(GGML_PYTHON_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/ggml)
else()
    set(GGML_PYTHON_INSTALL_DIR ${SKBUILD_PLATLIB_DIR}/ggml)
endif()

set(BUILD_SHARED_LIBS "On")
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
add_subdirectory(vendor/ggml)
install(
    TARGETS ggml 
    ARCHIVE DESTINATION ${GGML_PYTHON_INSTALL_DIR}
    LIBRARY DESTINATION ${GGML_PYTHON_INSTALL_DIR}
    RUNTIME DESTINATION ${GGML_PYTHON_INSTALL_DIR}
    FRAMEWORK DESTINATION ${GGML_PYTHON_INSTALL_DIR}
    RESOURCE DESTINATION ${GGML_PYTHON_INSTALL_DIR}
)