include_guard(GLOBAL) set(PLATFORM_TARGET "x86_64-pc-elf") set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY") set(CMAKE_SYSTEM_NAME "Generic-ELF") set(CMAKE_SYSTEM_PROCESSOR "x86_64") set(CMAKE_ASM_COMPILER_TARGET "${PLATFORM_TARGET}") set(CMAKE_CXX_COMPILER_TARGET "${PLATFORM_TARGET}") find_program(CMAKE_ASM_COMPILER "${CMAKE_ASM_COMPILER_TARGET}-gcc" REQUIRED) find_program(CMAKE_CXX_COMPILER "${CMAKE_CXX_COMPILER_TARGET}-g++" REQUIRED) set(CMAKE_CXX_FLAGS_INIT "-mno-red-zone \ -mcmodel=kernel \ -fno-pie \ -fno-rtti \ -fno-exceptions \ -ffunction-sections \ -fdata-sections" ) set(CMAKE_EXE_LINKER_FLAGS_INIT "-Wl,--gc-sections") set(CMAKE_CXX_FLAGS_DEBUG "-ggdb3") set(CMAKE_ASM_FLAGS_DEBUG "-ggdb3") set(CMAKE_ASM_FLAGS_MINSIZEREL "-Os -DNDEBUG -ggdb3") set(CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG -ggdb3") set(CMAKE_ASM_FLAGS_RELEASE "-O3 -DNDEBUG -ggdb3") set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG -ggdb3") set(CMAKE_ASM_FLAGS_RELWITHDEBINFO "-O2 -DNDEBUG -ggdb3") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -DNDEBUG -ggdb3")