CMakeLists.txt 733 B

12345678910111213141516171819202122232425262728
  1. cmake_minimum_required(VERSION 3.15)
  2. project(gblibc)
  3. add_library(gblibc STATIC
  4. src/stdio.c
  5. src/arithmetic.c
  6. src/string.c
  7. src/fcntl.c
  8. src/unistd.c
  9. src/wait.c
  10. src/assert.c
  11. src/dirent.c
  12. src/ctype.c
  13. src/stdlib.c
  14. )
  15. add_library(crt0 OBJECT
  16. src/crt0.s
  17. )
  18. file(GLOB_RECURSE GBLIBC_PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include)
  19. target_include_directories(gblibc PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include
  20. PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/private-include)
  21. set_target_properties(gblibc PROPERTIES PRIVATE_HEADER
  22. "private-include/devutil.h,private-include/syscall.h")
  23. set_target_properties(gblibc PROPERTIES PUBLIC_HEADER "${GBLIBC_PUBLIC_HEADERS}")