69 lines
2.0 KiB
CMake
69 lines
2.0 KiB
CMake
function(pre_project_config)
|
|
|
|
# Basic input sanitization
|
|
if(DEFINED TGT_BSP)
|
|
if(${TGT_BSP} MATCHES "arm/raspberrypi" AND NOT ${OS_FSFW} MATCHES linux)
|
|
message(STATUS "FSFW OSAL invalid for specified target BSP ${TGT_BSP}!")
|
|
message(STATUS "Setting valid OS_FSFW: linux")
|
|
set(FSFW_OSAL "linux")
|
|
endif()
|
|
endif()
|
|
|
|
if(FSFW_OSAL MATCHES linux AND TGT_BSP)
|
|
if(${TGT_BSP} MATCHES "host/none")
|
|
elseif(${TGT_BSP} MATCHES "arm/raspberrypi")
|
|
if(NOT SYSROOT_PATH)
|
|
if(NOT DEFINED ENV{LINUX_ROOTFS})
|
|
if(NOT LINUX_ROOTFS)
|
|
message(FATAL_ERROR "LINUX_ROOTFS must be set to Raspberry Pi rootfs location")
|
|
else()
|
|
set(ENV{LINUX_ROOTFS} "${LINUX_ROOTFS}")
|
|
endif()
|
|
else()
|
|
message(STATUS
|
|
"LINUX_ROOTFS from environmental variables used: "
|
|
"$ENV{LINUX_ROOTFS}"
|
|
)
|
|
endif()
|
|
endif()
|
|
|
|
if(NOT DEFINED ENV{RASPBERRY_VERSION})
|
|
if(NOT RASPBERRY_VERSION)
|
|
message(STATUS "No RASPBERRY_VERSION specified, setting to 4")
|
|
set(RASPBERRY_VERSION "4" CACHE STRING "Raspberry Pi version")
|
|
else()
|
|
message(STATUS
|
|
"Setting RASPBERRY_VERSION to ${RASPBERRY_VERSION}"
|
|
)
|
|
set(RASPBERRY_VERSION
|
|
${RASPBERRY_VERSION} CACHE STRING "Raspberry Pi version"
|
|
)
|
|
set(ENV{RASPBERRY_VERSION} ${RASPBERRY_VERSION})
|
|
endif()
|
|
else()
|
|
message(STATUS
|
|
"RASPBERRY_VERSION from environmental variables used: "
|
|
"$ENV{RASPBERRY_VERSION}"
|
|
)
|
|
endif()
|
|
|
|
if(LINUX_CROSS_COMPILE)
|
|
set(CMAKE_TOOLCHAIN_FILE
|
|
"${CMAKE_SCRIPT_PATH}/RPiCrossCompileConfig.cmake"
|
|
PARENT_SCOPE
|
|
)
|
|
endif()
|
|
elseif(${TGT_BSP} MATCHES "arm/beagleboneblack")
|
|
if(LINUX_CROSS_COMPILE)
|
|
set(CMAKE_TOOLCHAIN_FILE
|
|
"${CMAKE_SCRIPT_PATH}/BBBCrossCompileConfig.cmake"
|
|
PARENT_SCOPE
|
|
)
|
|
endif()
|
|
else()
|
|
message(WARNING "Target BSP (TGT_BSP) ${TGT_BSP} unknown!")
|
|
endif()
|
|
endif()
|
|
|
|
endfunction()
|