mirror of
https://github.com/Leonmmcoset/cleonos.git
synced 2026-04-21 10:40:00 +00:00
Stage 23
This commit is contained in:
@@ -93,6 +93,7 @@ set(USER_OBJ_ROOT "${USER_BUILD_ROOT}/obj")
|
||||
set(USER_APP_DIR "${USER_BUILD_ROOT}/apps")
|
||||
set(USER_LIB_DIR "${USER_BUILD_ROOT}/lib")
|
||||
set(USER_RUST_LIB "${USER_LIB_DIR}/libcleonos_user_rust.a")
|
||||
set(KERNEL_RUST_LIB "${BUILD_ROOT}/libclks_kernel_rust.a")
|
||||
|
||||
resolve_tool_with_fallback(CC gcc cc clang)
|
||||
resolve_tool_with_fallback(LD ld.lld ld)
|
||||
@@ -299,11 +300,19 @@ foreach(SRC IN LISTS ASM_SOURCES)
|
||||
add_kernel_asm_object("${SRC}" KERNEL_OBJECTS)
|
||||
endforeach()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${KERNEL_RUST_LIB}"
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory "${BUILD_ROOT}"
|
||||
COMMAND ${RUSTC} --crate-type staticlib -C panic=abort -O "${CMAKE_SOURCE_DIR}/clks/rust/src/lib.rs" -o "${KERNEL_RUST_LIB}"
|
||||
DEPENDS "${CMAKE_SOURCE_DIR}/clks/rust/src/lib.rs"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${KERNEL_ELF}"
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory "${BUILD_ROOT}"
|
||||
COMMAND ${LD} ${LDFLAGS_COMMON} -T "${LINKER_SCRIPT}" -o "${KERNEL_ELF}" ${KERNEL_OBJECTS}
|
||||
DEPENDS ${KERNEL_OBJECTS} "${LINKER_SCRIPT}"
|
||||
COMMAND ${LD} ${LDFLAGS_COMMON} -T "${LINKER_SCRIPT}" -o "${KERNEL_ELF}" ${KERNEL_OBJECTS} "${KERNEL_RUST_LIB}"
|
||||
DEPENDS ${KERNEL_OBJECTS} "${LINKER_SCRIPT}" "${KERNEL_RUST_LIB}" "${CMAKE_SOURCE_DIR}/clks/rust/src/lib.rs"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user