implement CMake ARM architecture compile options auto-config
This commit is contained in:
parent
1da681acea
commit
e97770f8f6
1 changed files with 8 additions and 3 deletions
|
|
@ -25,17 +25,22 @@ set(SOURCES
|
||||||
)
|
)
|
||||||
|
|
||||||
set(ARCHITECTURE "ARMv7" CACHE STRING "cutil target architecture")
|
set(ARCHITECTURE "ARMv7" CACHE STRING "cutil target architecture")
|
||||||
|
set(ARM_PROCESSOR "cortex-m4" CACHE STRING "cutil ARM processor")
|
||||||
set(ARM_PROFILE "m" CACHE STRING "cutil ARM architecture profile")
|
set(ARM_PROFILE "m" CACHE STRING "cutil ARM architecture profile")
|
||||||
|
|
||||||
if ("${ARCHITECTURE}" STREQUAL "ARMv7")
|
if ("${ARCHITECTURE}" MATCHES "ARM*")
|
||||||
if ("${ARM_PROFILE}" STREQUAL "m")
|
if ("${ARM_PROFILE}" STREQUAL "m")
|
||||||
add_compile_options("-mcpu=cortex-m4")
|
add_compile_options("-mcpu=${ARM_PROCESSOR}")
|
||||||
add_compile_options("-mthumb")
|
add_compile_options("-mthumb")
|
||||||
else()
|
else()
|
||||||
add_compile_options("-march=armv7-${ARM_PROFILE}")
|
string(TOLOWER "${ARCHITECTURE}" COMPILE_ARCHITECTURE)
|
||||||
|
add_compile_options("-march=${COMPILE_ARCHITECTURE}-${ARM_PROFILE}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
add_compile_definitions(ARM_PROCESSOR="${ARM_PROCESSOR}")
|
||||||
|
add_compile_definitions(ARM_PROFILE="${ARM_PROFILE}")
|
||||||
|
|
||||||
add_library(cutil STATIC ${SOURCES} ${HEADERS}
|
add_library(cutil STATIC ${SOURCES} ${HEADERS}
|
||||||
"arch/${ARCHITECTURE}.S"
|
"arch/${ARCHITECTURE}.S"
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue