added q7s xcompile file
This commit is contained in:
parent
4c30deb6cb
commit
9ee2e4e1da
@ -48,11 +48,11 @@ if(CMAKE_CROSSCOMPILING)
|
||||
|
||||
set_property(CACHE TGT_BSP
|
||||
PROPERTY STRINGS
|
||||
"arm/raspberrypi"
|
||||
"arm/q7s" "arm/raspberrypi"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(${TGT_BSP} MATCHES "arm/raspberrypi")
|
||||
if(${TGT_BSP} MATCHES "arm/raspberrypi" OR ${TGT_BSP} MATCHES "arm/q7s")
|
||||
|
||||
set(BSP_PATH "bsp_linux")
|
||||
|
||||
|
@ -12,7 +12,12 @@ endif()
|
||||
# Disable compiler checks for cross-compiling.
|
||||
if(${OS_FSFW} STREQUAL linux AND TGT_BSP)
|
||||
|
||||
if(${TGT_BSP} MATCHES "arm/raspberrypi")
|
||||
if(${TGT_BSP} MATCHES "arm/q7s")
|
||||
set(CMAKE_TOOLCHAIN_FILE
|
||||
"${CMAKE_SCRIPT_PATH}/Q7SCrossCompileConfig.cmake"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
elseif (${TGT_BSP} MATCHES "arm/raspberrypi")
|
||||
if(NOT DEFINED ENV{RASPBIAN_ROOTFS})
|
||||
if(NOT RASPBIAN_ROOTFS)
|
||||
set(ENV{RASPBIAN_ROOTFS} "$ENV{HOME}/raspberrypi/rootfs")
|
||||
|
81
buildsystem/cmake/Q7SCrossCompileConfig.cmake
Normal file
81
buildsystem/cmake/Q7SCrossCompileConfig.cmake
Normal file
@ -0,0 +1,81 @@
|
||||
# CROSS_COMPILE also needs to be set accordingly or passed to the CMake command
|
||||
|
||||
#if(NOT DEFINED ENV{Q7S_ROOTFS})
|
||||
# message(FATAL_ERROR
|
||||
# "Define the Q7S_ROOTFS variable to "
|
||||
# "point to the raspbian rootfs."
|
||||
# )
|
||||
#else()
|
||||
# set(SYSROOT_PATH "$ENV{Q7S_ROOTFS}")
|
||||
#endif()
|
||||
|
||||
if(NOT DEFINED ENV{CROSS_COMPILE})
|
||||
set(CROSS_COMPILE "arm-linux-gnueabihf")
|
||||
message(STATUS
|
||||
"No CROSS_COMPILE environmental variable set, using default ARM linux "
|
||||
"cross compiler name ${CROSS_COMPILE}"
|
||||
)
|
||||
else()
|
||||
set(CROSS_COMPILE "$ENV{CROSS_COMPILE}")
|
||||
message(STATUS
|
||||
"Using environmental variable CROSS_COMPILE as cross-compiler: "
|
||||
"$ENV{CROSS_COMPILE}"
|
||||
)
|
||||
endif()
|
||||
|
||||
# message(STATUS "Using sysroot path: ${SYSROOT_PATH}")
|
||||
|
||||
set(CROSS_COMPILE_CC "${CROSS_COMPILE}-gcc")
|
||||
set(CROSS_COMPILE_CXX "${CROSS_COMPILE}-g++")
|
||||
set(CROSS_COMPILE_LD "${CROSS_COMPILE}-ld")
|
||||
set(CROSS_COMPILE_AR "${CROSS_COMPILE}-ar")
|
||||
set(CROSS_COMPILE_RANLIB "${CROSS_COMPILE}-ranlib")
|
||||
set(CROSS_COMPILE_STRIP "${CROSS_COMPILE}-strip")
|
||||
set(CROSS_COMPILE_NM "${CROSS_COMPILE}-nm")
|
||||
set(CROSS_COMPILE_OBJCOPY "${CROSS_COMPILE}-objcopy")
|
||||
set(CROSS_COMPILE_SIZE "${CROSS_COMPILE}-size")
|
||||
|
||||
# At the very least, cross compile gcc and g++ have to be set!
|
||||
find_program (CROSS_COMPILE_CC_FOUND ${CROSS_COMPILE_CC} REQUIRED)
|
||||
find_program (CROSS_COMPILE_CXX_FOUND ${CROSS_COMPILE_CXX} REQUIRED)
|
||||
|
||||
set(CMAKE_CROSSCOMPILING TRUE)
|
||||
# set(CMAKE_SYSROOT "${SYSROOT_PATH}")
|
||||
|
||||
# Define name of the target system
|
||||
set(CMAKE_SYSTEM_NAME "Linux")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "armv7")
|
||||
|
||||
# Define the compiler
|
||||
set(CMAKE_C_COMPILER ${CROSS_COMPILE_CC})
|
||||
set(CMAKE_CXX_COMPILER ${CROSS_COMPILE_CXX})
|
||||
|
||||
# List of library dirs where LD has to look. Pass them directly through gcc.
|
||||
set(LIB_DIRS
|
||||
)
|
||||
# You can additionally check the linker paths if you add the
|
||||
# flags ' -Xlinker --verbose'
|
||||
foreach(LIB ${LIB_DIRS})
|
||||
set(COMMON_FLAGS "${COMMON_FLAGS} -L${LIB} -Wl,-rpath-link,${LIB}")
|
||||
endforeach()
|
||||
|
||||
set(CMAKE_PREFIX_PATH
|
||||
"${CMAKE_PREFIX_PATH}"
|
||||
# "${SYSROOT_PATH}/usr/lib/${CROSS_COMPILE}"
|
||||
)
|
||||
|
||||
set(CMAKE_C_FLAGS
|
||||
"-mcpu=cortex-a9 -mfpu=neon-vfpv3 -mfloat-abi=hard ${COMMON_FLAGS}"
|
||||
CACHE STRING "C flags for Q7S"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS
|
||||
"${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "CPP flags for Q7S"
|
||||
)
|
||||
|
||||
# search for programs in the build host directories
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
# for libraries and headers in the target directories
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
@ -101,35 +101,35 @@ set(CMAKE_PREFIX_PATH
|
||||
if(RASPBERRY_VERSION VERSION_GREATER 3)
|
||||
set(CMAKE_C_FLAGS
|
||||
"-mcpu=cortex-a72 -mfpu=neon-vfpv4 -mfloat-abi=hard ${COMMON_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 4"
|
||||
CACHE STRING "CPP flags for Raspberry PI 4"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS
|
||||
"${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 4"
|
||||
CACHE STRING "C flags for Raspberry PI 4"
|
||||
)
|
||||
elseif(RASPBERRY_VERSION VERSION_GREATER 2)
|
||||
set(CMAKE_C_FLAGS
|
||||
"-mcpu=cortex-a53 -mfpu=neon-vfpv4 -mfloat-abi=hard ${COMMON_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 3"
|
||||
CACHE STRING "C flags for Raspberry PI 3"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 3"
|
||||
CACHE STRING "CPP flags for Raspberry PI 3"
|
||||
)
|
||||
elseif(RASPBERRY_VERSION VERSION_GREATER 1)
|
||||
set(CMAKE_C_FLAGS
|
||||
"-mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard ${COMMON_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 2"
|
||||
CACHE STRING "C flags for Raspberry PI 2"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 2"
|
||||
CACHE STRING "CPP flags for Raspberry PI 2"
|
||||
)
|
||||
else()
|
||||
set(CMAKE_C_FLAGS
|
||||
"-mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard ${COMMON_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 1 B+ Zero"
|
||||
CACHE STRING "C flags for Raspberry PI 1 B+ Zero"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "Flags for Raspberry PI 1 B+ Zero"
|
||||
CACHE STRING "CPP flags for Raspberry PI 1 B+ Zero"
|
||||
)
|
||||
endif()
|
||||
|
||||
|
27
buildsystem/cmake/scripts/Q7S/create_cmake_debug_cfg.sh
Normal file
27
buildsystem/cmake/scripts/Q7S/create_cmake_debug_cfg.sh
Normal file
@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
counter=0
|
||||
while [ ${counter} -lt 5 ]
|
||||
do
|
||||
cd ..
|
||||
if [ -f "cmake_build_config.py" ];then
|
||||
break
|
||||
fi
|
||||
counter=$((counter=counter + 1))
|
||||
done
|
||||
|
||||
if [ "${counter}" -ge 5 ];then
|
||||
echo "cmake_build_config.py not found in upper directories!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
os_fsfw="linux"
|
||||
tgt_bsp="arm/q7s"
|
||||
build_generator=""
|
||||
if [ "${OS}" = "Windows_NT" ]; then
|
||||
build_generator="MinGW Makefiles"
|
||||
# Could be other OS but this works for now.
|
||||
else
|
||||
build_generator="Unix Makefiles"
|
||||
fi
|
||||
|
||||
python3 cmake_build_config.py -o "${os_fsfw}" -g "${build_generator}" -b "debug" -t "${tgt_bsp}"
|
27
buildsystem/cmake/scripts/Q7S/create_cmake_release_cfg.sh
Normal file
27
buildsystem/cmake/scripts/Q7S/create_cmake_release_cfg.sh
Normal file
@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
counter=0
|
||||
while [ ${counter} -lt 5 ]
|
||||
do
|
||||
cd ..
|
||||
if [ -f "cmake_build_config.py" ];then
|
||||
break
|
||||
fi
|
||||
counter=$((counter=counter + 1))
|
||||
done
|
||||
|
||||
if [ "${counter}" -ge 5 ];then
|
||||
echo "cmake_build_config.py not found in upper directories!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
os_fsfw="linux"
|
||||
tgt_bsp="arm/q7s"
|
||||
build_generator=""
|
||||
if [ "${OS}" = "Windows_NT" ]; then
|
||||
build_generator="MinGW Makefiles"
|
||||
# Could be other OS but this works for now.
|
||||
else
|
||||
build_generator="Unix Makefiles"
|
||||
fi
|
||||
|
||||
python3 cmake_build_config.py -o "${os_fsfw}" -g "${build_generator}" -b "release" -t "${tgt_bsp}"
|
27
buildsystem/cmake/scripts/Q7S/create_cmake_relwithdeb_cfg.sh
Normal file
27
buildsystem/cmake/scripts/Q7S/create_cmake_relwithdeb_cfg.sh
Normal file
@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
counter=0
|
||||
while [ ${counter} -lt 5 ]
|
||||
do
|
||||
cd ..
|
||||
if [ -f "cmake_build_config.py" ];then
|
||||
break
|
||||
fi
|
||||
counter=$((counter=counter + 1))
|
||||
done
|
||||
|
||||
if [ "${counter}" -ge 5 ];then
|
||||
echo "cmake_build_config.py not found in upper directories!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
os_fsfw="linux"
|
||||
tgt_bsp="arm/q7s"
|
||||
build_generator=""
|
||||
if [ "${OS}" = "Windows_NT" ]; then
|
||||
build_generator="MinGW Makefiles"
|
||||
# Could be other OS but this works for now.
|
||||
else
|
||||
build_generator="Unix Makefiles"
|
||||
fi
|
||||
|
||||
python3 cmake_build_config.py -o "${os_fsfw}" -g "${build_generator}" -b "reldeb" -t "${tgt_bsp}"
|
Loading…
x
Reference in New Issue
Block a user