You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
1.2 KiB
CMake

# Copyright (C) 2021,2022 fef <owo@fef.moe>. All rights reserved.
set(_amd64_march_options
"nocona" "core2" "penryn" "bonnell" "atom" "silvermont" "slm" "goldmont" "goldmont-plus"
"tremont" "nehalem" "corei7" "westmere" "sandybridge" "corei7-avx" "ivybridge" "core-avx-i"
"haswell" "core-avx2" "broadwell" "skylake" "skylake-avx512" "skx" "cascadelake" "cooperlake"
"cannonlake" "icelake-client" "rocketlake" "icelake-server" "tigerlake" "sapphirerapids"
"alderlake" "knl" "knm" "k8" "athlon64" "athlon-fx" "opteron" "k8-sse3" "athlon64-sse3"
"opteron-sse3" "amdfam10" "barcelona" "btver1" "btver2" "bdver1" "bdver2" "bdver3" "bdver4"
"znver1" "znver2" "znver3" "x86-64" "x86-64-v2" "x86-64-v3"
)
set(BOOT_TYPE "bios" CACHE STRING "Bootloader type")
set_property(CACHE BOOT_TYPE PROPERTY STRINGS
"bios"
)
option(CFG_X86_64 "64-bit kernel (32-bit support is fundamentally broken)" ON)
if(CFG_X86_64)
set(X86_ARCH amd64)
set(M_ARCH "x86-64" CACHE STRING "Value for -march")
set_property(CACHE M_ARCH PROPERTY STRINGS ${_amd64_march_options})
else()
set(X86_ARCH i386)
set(M_ARCH "i686" CACHE STRING "Value for -march")
set_property(CACHE M_ARCH PROPERTY STRINGS "i686")
endif()