23 lines
608 B
CMake
23 lines
608 B
CMake
set(impl_basename "${CARGO_TARGET_DIR}/release/libPROJECT_NAME_impl")
|
|
|
|
add_custom_command(
|
|
OUTPUT ${impl_basename}.a
|
|
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} ${CARGO} build --release --package PROJECT-NAME-impl
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
DEPFILE ${impl_basename}.d
|
|
USES_TERMINAL
|
|
JOB_SERVER_AWARE
|
|
DEPENDS_EXPLICIT_ONLY
|
|
)
|
|
|
|
# HACK ensure CMake *actually adds* the command above
|
|
add_custom_target(build_impl
|
|
DEPENDS ${impl_basename}.a
|
|
)
|
|
|
|
add_library(PROJECT_NAME_impl STATIC IMPORTED)
|
|
|
|
set_target_properties(PROJECT_NAME_impl PROPERTIES
|
|
IMPORTED_LOCATION ${impl_basename}.a
|
|
)
|