feat: added basic ACPI support using LAI
This commit is contained in:
@@ -7,17 +7,18 @@ SET(CMAKE_C_COMPILER ${COMPILER_RT}/i686-elf-gcc)
|
||||
SET(CMAKE_ASM_COMPILER ${COMPILER_RT}/i686-elf-gcc)
|
||||
|
||||
# Optionally enable cmake debugging
|
||||
#SET(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
SET(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
# Set compile flags
|
||||
SET(CMAKE_C_FLAGS "-g -ffreestanding -Wall -Wextra -fno-exceptions -fstack-protector -fno-pie -m32")
|
||||
SET(CMAKE_ASM_FLAGS "${CFLAGS} -m32 -x assembler-with-cpp")
|
||||
SET(CMAKE_EXE_LINKER_FLAGS "-T${CMAKE_CURRENT_LIST_DIR}/linker.ld -lgcc -ffreestanding -nostdlib -no-pie")
|
||||
SET(CMAKE_EXE_LINKER_FLAGS "-T${CMAKE_CURRENT_LIST_DIR}/linker.ld -nostdlib -lgcc")
|
||||
|
||||
include_directories(AFTER include)
|
||||
include_directories(AFTER include lai/include)
|
||||
|
||||
set(CMAKE_C_STANDARD 99)
|
||||
|
||||
FILE(GLOB lai lai/core/*.c lai/helpers/*.c lai/driver/*.c)
|
||||
FILE(GLOB_RECURSE kernel_src kernel/**.c)
|
||||
FILE(GLOB_RECURSE kernel_asm kernel/**.S)
|
||||
FILE(GLOB_RECURSE boot_asm boot/boot.S)
|
||||
@@ -31,9 +32,11 @@ add_compile_definitions(ENABLE_SELF_TEST) # Support for pretty printing pci cla
|
||||
add_compile_definitions(ENABLE_PCIPP) # Support for pretty printing pci class/subclass/interface
|
||||
add_compile_definitions(K_SHELL)
|
||||
|
||||
add_executable(my-kernel.bin ${kernel_src} ${kernel_asm} ${boot_asm})
|
||||
# find libgcc.a
|
||||
add_library(libgcc STATIC IMPORTED)
|
||||
set_target_properties(libgcc PROPERTIES IMPORTED_LOCATION ${COMPILER_RT}/../lib/gcc/i686-elf/10.2.0/libgcc.a)
|
||||
|
||||
add_executable(my-kernel.bin ${kernel_src} ${kernel_asm} ${boot_asm} ${lai})
|
||||
target_link_libraries(my-kernel.bin libgcc)
|
||||
set_source_files_properties(${kernel_src} PROPERTIES LANGUAGE C COMPILE_FLAGS "")
|
||||
set_target_properties(my-kernel.bin PROPERTIES LINKER_LANGUAGE C PREFIX "" SUFFIX "" LINK_FLAGS "")
|
||||
|
||||
|
||||
|
||||
set_target_properties(my-kernel.bin PROPERTIES LINKER_LANGUAGE C PREFIX "" SUFFIX "" LINK_FLAGS "")
|
||||
Reference in New Issue
Block a user