fix cmake

This commit is contained in:
numzero 2026-08-22 01:38:29 +03:00
parent d0998119c8
commit 9f5e52277a
2 changed files with 14 additions and 3 deletions

View File

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.18) cmake_minimum_required(VERSION 3.18...4.2)
project(PROJECT-NAME VERSION 1.0.0 LANGUAGES CXX) project(PROJECT-NAME VERSION 1.0.0 LANGUAGES CXX)

View File

@ -1,13 +1,24 @@
# build the Rust side as a static library
set(impl_basename "${CARGO_TARGET_DIR}/release/libPROJECT_NAME_impl") set(impl_basename "${CARGO_TARGET_DIR}/release/libPROJECT_NAME_impl")
set(cargo_cmake_args)
if("${CMAKE_VERSION}" VERSION_GREATER_EQUAL "3.27")
list(APPEND cargo_cmake_args DEPENDS_EXPLICIT_ONLY)
endif()
if("${CMAKE_VERSION}" VERSION_GREATER_EQUAL "3.28")
list(APPEND cargo_cmake_args JOB_SERVER_AWARE TRUE)
endif()
add_custom_command( add_custom_command(
OUTPUT ${impl_basename}.a OUTPUT ${impl_basename}.a
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} ${CARGO} build --release --package PROJECT-NAME-impl COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} ${CARGO} build --release --package PROJECT-NAME-impl
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPFILE ${impl_basename}.d DEPFILE ${impl_basename}.d
USES_TERMINAL USES_TERMINAL
JOB_SERVER_AWARE VERBATIM
DEPENDS_EXPLICIT_ONLY ${cargo_cmake_args}
) )
# HACK ensure CMake *actually adds* the command above # HACK ensure CMake *actually adds* the command above