first version of working cmake

This commit is contained in:
2024-12-20 14:27:45 +01:00
parent 32b9cc78b4
commit f419b1a3e6
6 changed files with 115 additions and 34 deletions

View File

@@ -1,6 +1,9 @@
#cmake_minimum_required(VERSION 3.12)
project(libwrap)
message(STATUS " here 2 in libwrap")
set(LIBRARY_NAME libwrap)
set(STATIC_LIBRARY_FLAGS "rcs")
# Create object library for libwrap
set(LIB_SOURCES
@@ -24,7 +27,7 @@ set(LIB_SOURCES
sys/times.c
sys/unlink.c
sys/wait.c
sys/write.c
# sys/write.c
# Standard library
stdlib/malloc.c
# Miscellaneous
@@ -38,11 +41,20 @@ if(SEMIHOSTING)
endif()
add_library(${PROJECT_NAME} OBJECT ${LIB_SOURCES})
#add_library(${LIBRARY_NAME} OBJECT ${LIB_SOURCES})
add_library(${LIBRARY_NAME} STATIC ${LIB_SOURCES})
set_target_properties(${LIBRARY_NAME} PROPERTIES ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bare-metal-bsp/${PROJECT_NAME})
message(STATUS " CMAKE_BINARY_DIR: ${CMAKE_BINARY_DIR} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}")
# Retrieve the output directory for the library
get_target_property(LIBRARY_PATH ${LIBRARY_NAME} ARCHIVE_OUTPUT_DIRECTORY)
# Print the path to the console (for debugging purposes)
message(STATUS "The library output path is: ${LIBRARY_PATH}")
# Include directories
target_include_directories(${PROJECT_NAME} PRIVATE
target_include_directories(${LIBRARY_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${BSP_BASE}/include
include/
@@ -51,10 +63,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE
${BSP_BASE}/drivers
)
# Compile options
#link global_compile_options to this libraries
target_link_libraries(${PROJECT_NAME} PRIVATE global_compile_options)
#target_link_libraries(${PROJECT_NAME} PRIVATE global_compile_options)
# Compile definitions
#target_compile_definitions(libwrap_objects PRIVATE
@@ -62,4 +74,4 @@ target_link_libraries(${PROJECT_NAME} PRIVATE global_compile_options)
#)
# Export objects to parent scope
set(LIBWRAP_OBJECTS $<TARGET_OBJECTS:${PROJECT_NAME}> PARENT_SCOPE)
#set(LIBWRAP_OBJECTS $<TARGET_OBJECTS:${PROJECT_NAME}> PARENT_SCOPE)