diff options
| author | Alexey Gavrilov <alexey.gavrilov@mail.com> | 2026-03-28 11:36:06 +0700 |
|---|---|---|
| committer | Alexey Gavrilov <alexey.gavrilov@mail.com> | 2026-03-28 11:36:06 +0700 |
| commit | c62baf8bca986d493e1caf441ea7a6b9d1c1823f (patch) | |
| tree | 7d489cfbb25b12c6c63eb282b045454cbd578229 | |
| parent | 6ffe96d1e3f0289c2070e050cf8e1a30288e6d91 (diff) | |
Cmake build generator support: toolchain file
Two toolchain files for clang and gcc compilers under x86 platform.
Debug flags also passed at the configure time.
Signed-off-by: Alexey Gavrilov <alexey.gavrilov@mail.com>
| -rw-r--r-- | CMakeLists.txt | 17 | ||||
| -rw-r--r-- | arch/SecondaryInit.cpp | 2 | ||||
| -rw-r--r-- | arch/SecondaryInit.h | 2 | ||||
| -rw-r--r-- | cmake/toolchain/x86_generic_clang.cmake | 10 | ||||
| -rw-r--r-- | cmake/toolchain/x86_generic_gcc.cmake | 10 |
5 files changed, 20 insertions, 21 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 33ac2dc..b093d80 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,23 +13,6 @@ set(CXX_FLAGS -mgeneral-regs-only ) -#---DEV PROPERTIES--- (delete in production) -# message(STATUS ${CMAKE_ASM_NASM_COMPILER}) -set(CMAKE_SYSTEM_NAME Generic) -set(CMAKE_ASM_NASM_OBJECT_FORMAT elf32) -set(CMAKE_CXX_COMPILER i686-elf-g++) -set(CMAKE_CXX_COMPILER_WORKS 1) -# set(CMAKE_CUSTOM_LINKER i686-elf-ld) -# set(CMAKE_CXX_LINK_EXECUTABLE -# "ld <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>") -# set(CMAKE_CXX_FLAGS "-I${CMAKE_CURRENT_LIST_DIR}/include") -# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -Wall -ffreestanding -nostdinc -nostdlib -fno-rtti -mgeneral-regs-only") -# message(STATUS ${CMAKE_ASM_NASM_FLAGS}) -# message(STATUS ${CMAKE_ASM_NASM_OBJECT_FORMAT}) -# message(STATUS ${CMAKE_CXX_LINK_EXECUTABLE}) -# message(STATUS ${CMAKE_CXX_LINK_FLAGS}) -#-------------------------------------------- - cmake_minimum_required(VERSION 3.25) project(ObjectiveProject LANGUAGES CXX ASM_NASM) diff --git a/arch/SecondaryInit.cpp b/arch/SecondaryInit.cpp index 7eba61b..900f84b 100644 --- a/arch/SecondaryInit.cpp +++ b/arch/SecondaryInit.cpp @@ -3,8 +3,6 @@ void SecondaryInitialization::processorInitialize() { PrimaryInitialization::processorInitialize(); - - Segments(); }; void SecondaryInitialization::devicesInitialize() diff --git a/arch/SecondaryInit.h b/arch/SecondaryInit.h index 104f44c..4823052 100644 --- a/arch/SecondaryInit.h +++ b/arch/SecondaryInit.h @@ -1,5 +1,3 @@ -#include "../kernel/mem/Segments.h" -#include "../kernel/mem/Kheap.h" #include <Types.h> #if defined(__IAPC) diff --git a/cmake/toolchain/x86_generic_clang.cmake b/cmake/toolchain/x86_generic_clang.cmake new file mode 100644 index 0000000..108f9c4 --- /dev/null +++ b/cmake/toolchain/x86_generic_clang.cmake @@ -0,0 +1,10 @@ +set(CMAKE_SYSTEM_NAME Generic) +set(CMAKE_CROSSCOMPILING true) +set(CMAKE_SYSTEM_PROCESSOR i686) + +set(CMAKE_ASM_NASM_OBJECT_FORMAT elf32) + +set(CMAKE_CXX_COMPILER clang++) +set(CMAKE_CXX_COMPILER_TARGET i686) + +set(CMAKE_CXX_FLAGS_DEBUG_INIT "-Wextra -ggdb -g3 -O0") diff --git a/cmake/toolchain/x86_generic_gcc.cmake b/cmake/toolchain/x86_generic_gcc.cmake new file mode 100644 index 0000000..138bc45 --- /dev/null +++ b/cmake/toolchain/x86_generic_gcc.cmake @@ -0,0 +1,10 @@ +set(CMAKE_SYSTEM_NAME Generic) +set(CMAKE_CROSSCOMPILING true) +set(CMAKE_SYSTEM_PROCESSOR i686) + +set(CMAKE_ASM_NASM_OBJECT_FORMAT elf32) + +set(CMAKE_CXX_COMPILER i686-elf-g++) +set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY) + +set(CMAKE_CXX_FLAGS_DEBUG_INIT "-Wextra -ggdb -g3 -O0") |
