build configuration for trenz te0720-1cfa
This commit is contained in:
@ -59,6 +59,8 @@ if(TGT_BSP)
|
||||
set(BSP_PATH "bsp_q7s")
|
||||
elseif(TGT_BSP MATCHES "arm/egse")
|
||||
set(BSP_PATH "bsp_egse")
|
||||
elseif(TGT_BSP MATCHES "arm/te0720-1cfa")
|
||||
set(BSP_PATH "bsp_te0720_1cfa")
|
||||
else()
|
||||
message(WARNING "CMake not configured for this target!")
|
||||
message(FATAL_ERROR "Target: ${TGT_BSP}!")
|
||||
|
@ -12,9 +12,9 @@ endif()
|
||||
|
||||
# Disable compiler checks for cross-compiling.
|
||||
if(FSFW_OSAL MATCHES linux AND TGT_BSP)
|
||||
if(TGT_BSP MATCHES "arm/q7s")
|
||||
if(TGT_BSP MATCHES "arm/q7s" OR TGT_BSP MATCHES "arm/te0720-1cfa")
|
||||
set(CMAKE_TOOLCHAIN_FILE
|
||||
"${CMAKE_SCRIPT_PATH}/Q7SCrossCompileConfig.cmake"
|
||||
"${CMAKE_SCRIPT_PATH}/Zynq7020CrossCompileConfig.cmake"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
elseif(TGT_BSP MATCHES "arm/raspberrypi" OR TGT_BSP MATCHES "arm/egse")
|
||||
|
@ -1,16 +1,16 @@
|
||||
if(DEFINED ENV{Q7S_SYSROOT})
|
||||
set(ENV{Q7S_ROOTFS} $ENV{Q7S_SYSROOT})
|
||||
if(DEFINED ENV{ZYNQ_7020_SYSROOT})
|
||||
set(ENV{ZYNQ_7020_ROOTFS} $ENV{ZYNQ_7020_SYSROOT})
|
||||
endif()
|
||||
# CROSS_COMPILE also needs to be set accordingly or passed to the CMake command
|
||||
if(NOT DEFINED ENV{Q7S_ROOTFS})
|
||||
if(NOT DEFINED ENV{ZYNQ_7020_ROOTFS})
|
||||
# Sysroot has not been cached yet and was not set in environment either
|
||||
if(NOT DEFINED SYSROOT_PATH)
|
||||
message(FATAL_ERROR
|
||||
"Define the Q7S_ROOTFS variable to point to the Q7S rootfs."
|
||||
"Define the ZYNQ_7020_ROOTFS variable to point to the Zynq-7020 rootfs."
|
||||
)
|
||||
endif()
|
||||
else()
|
||||
set(SYSROOT_PATH "$ENV{Q7S_ROOTFS}" CACHE PATH "Q7S root filesystem path")
|
||||
set(SYSROOT_PATH "$ENV{ZYNQ_7020_ROOTFS}" CACHE PATH "Zynq-7020 root filesystem path")
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED ENV{CROSS_COMPILE})
|
||||
@ -87,18 +87,17 @@ set(C_FLAGS
|
||||
-mfloat-abi=hard
|
||||
${COMMON_FLAGS}
|
||||
-lgpiod
|
||||
-lxiphos
|
||||
)
|
||||
|
||||
string (REPLACE ";" " " C_FLAGS "${C_FLAGS}")
|
||||
|
||||
set(CMAKE_C_FLAGS
|
||||
${C_FLAGS}
|
||||
CACHE STRING "C flags for Q7S"
|
||||
CACHE STRING "C flags for Zynq-7020"
|
||||
)
|
||||
set(CMAKE_CXX_FLAGS
|
||||
"${CMAKE_C_FLAGS}"
|
||||
CACHE STRING "CPP flags for Q7S"
|
||||
CACHE STRING "CPP flags for Zynq-7020"
|
||||
)
|
||||
|
||||
# search for programs in the build host directories
|
@ -41,7 +41,7 @@ else
|
||||
fi
|
||||
|
||||
if [ -d "$SYSROOT" ]; then
|
||||
export Q7S_SYSROOT=$SYSROOT
|
||||
export ZYNQ_7020_SYSROOT=$SYSROOT
|
||||
echo "Set sysroot path to $SYSROOT"
|
||||
else
|
||||
echo "Sysroot path $SYSROOT does not exist"
|
||||
|
@ -2,6 +2,6 @@
|
||||
export PATH=$PATH:"$HOME/EIVE/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin"
|
||||
export CROSS_COMPILE="arm-linux-gnueabihf"
|
||||
|
||||
export Q7S_SYSROOT="$HOME/Xilinx/cortexa9hf-neon-xiphos-linux-gnueabi"
|
||||
export ZYNQ_7020_SYSROOT="$HOME/Xilinx/cortexa9hf-neon-xiphos-linux-gnueabi"
|
||||
export CONSOLE_PREFIX="[Q7S ENV]"
|
||||
/bin/bash
|
||||
|
34
cmake/scripts/te0720-1cfa/make-debug-cfg.sh
Normal file
34
cmake/scripts/te0720-1cfa/make-debug-cfg.sh
Normal file
@ -0,0 +1,34 @@
|
||||
#!/bin/sh
|
||||
counter=0
|
||||
cfg_script_name="cmake-build-cfg.py"
|
||||
while [ ${counter} -lt 5 ]
|
||||
do
|
||||
cd ..
|
||||
if [ -f ${cfg_script_name} ];then
|
||||
break
|
||||
fi
|
||||
counter=$((counter=counter + 1))
|
||||
done
|
||||
|
||||
if [ "${counter}" -ge 5 ];then
|
||||
echo "${cfg_script_name} not found in upper directories!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
os_fsfw="linux"
|
||||
tgt_bsp="arm/te0720-1cfa"
|
||||
build_generator="make"
|
||||
build_dir="build-Debug-te0720-1cfa"
|
||||
if [ "${OS}" = "Windows_NT" ]; then
|
||||
python="py"
|
||||
# Could be other OS but this works for now.
|
||||
else
|
||||
python="python3"
|
||||
fi
|
||||
|
||||
echo "Running command (without the leading +):"
|
||||
set -x # Print command
|
||||
${python} ${cfg_script_name} -o "${os_fsfw}" -g "${build_generator}" -b "debug" -t "${tgt_bsp}" \
|
||||
-l"${build_dir}"
|
||||
# set +x
|
49
cmake/scripts/te0720-1cfa/win-env-te0720-1cfa.sh
Normal file
49
cmake/scripts/te0720-1cfa/win-env-te0720-1cfa.sh
Normal file
@ -0,0 +1,49 @@
|
||||
#!/bin/sh
|
||||
# Run with: source q7s-env-win-sh [OPTIONS]
|
||||
function help () {
|
||||
echo "source q7s-env-win-sh [options] -t|--toolchain=<toolchain path> -s|--sysroot=<sysroot path>"
|
||||
}
|
||||
|
||||
TOOLCHAIN_PATH="/c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
|
||||
SYSROOT="/c/Users/${USER}/eive-software/sysroots-petalinux-2019-2/cortexa9t2hf-neon-xilinx-linux-gnueabi"
|
||||
|
||||
for i in "$@"; do
|
||||
case $i in
|
||||
-t=*|--toolchain=*)
|
||||
TOOLCHAIN_PATH="${i#*=}"
|
||||
shift
|
||||
;;
|
||||
-s=*|--sysroot=*)
|
||||
SYSROOT="${i#*=}"
|
||||
shift
|
||||
;;
|
||||
-h|--help)
|
||||
help
|
||||
shift
|
||||
;;
|
||||
-*|--*)
|
||||
echo "Unknown option $i"
|
||||
help
|
||||
return
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -d "$TOOLCHAIN_PATH" ]; then
|
||||
export PATH=$PATH:"/c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
|
||||
export CROSS_COMPILE="arm-linux-gnueabihf"
|
||||
echo "Set toolchain path to /c/Xilinx/Vitis/2019.2/gnu/aarch32/nt/gcc-arm-linux-gnueabi/bin"
|
||||
else
|
||||
echo "Toolchain path $TOOLCHAIN_PATH does not exist"
|
||||
return
|
||||
fi
|
||||
|
||||
if [ -d "$SYSROOT" ]; then
|
||||
export ZYNQ_7020_SYSROOT=$SYSROOT
|
||||
echo "Set sysroot path to $SYSROOT"
|
||||
else
|
||||
echo "Sysroot path $SYSROOT does not exist"
|
||||
return
|
||||
fi
|
Reference in New Issue
Block a user