build: update to support building under a hosted cross-compiler
This commit is contained in:
@@ -1,4 +1,9 @@
|
||||
file(GLOB headers ${CMAKE_CURRENT_SOURCE_DIR}/include/magenta/*.h)
|
||||
cmake_minimum_required(VERSION 3.31)
|
||||
project(libmagenta C ASM)
|
||||
|
||||
file(GLOB headers
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include/magenta/*.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include-user/magenta/*.h)
|
||||
file(GLOB asm_sources
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/arch/${CMAKE_SYSTEM_PROCESSOR}/*.S)
|
||||
|
||||
@@ -6,7 +11,14 @@ set(public_include_dirs
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include-user)
|
||||
|
||||
add_library(libmagenta STATIC ${asm_sources})
|
||||
add_library(libmagenta STATIC ${asm_sources} ${headers})
|
||||
target_include_directories(libmagenta PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include-user)
|
||||
target_compile_options(libmagenta PRIVATE -ffreestanding -nostdlib)
|
||||
|
||||
set_target_properties(libmagenta PROPERTIES
|
||||
PREFIX "")
|
||||
|
||||
install(TARGETS libmagenta)
|
||||
install(FILES ${headers} DESTINATION include/magenta)
|
||||
|
||||
Reference in New Issue
Block a user