feat[build]: Add --toolchain to config toolchain for linux

for example
./make-Makefiles.bash --toolchain gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-

Change-Id: I4804b1e1759aab04f715d826fbe412087298cb89
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
This commit is contained in:
Yandong Lin
2025-01-10 16:14:34 +08:00
parent 0b1c78701f
commit c04a24f0e1
5 changed files with 32 additions and 4 deletions

View File

@@ -1,9 +1,13 @@
cmake_minimum_required( VERSION 2.6.3 ) cmake_minimum_required( VERSION 2.6.3 )
if(NOT TOOLCHAIN)
set(TOOLCHAIN "aarch64-linux-gnu-")
endif()
SET(CMAKE_SYSTEM_NAME Linux) SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_C_COMPILER "aarch64-linux-gnu-gcc") SET(CMAKE_C_COMPILER "${TOOLCHAIN}gcc")
SET(CMAKE_CXX_COMPILER "aarch64-linux-gnu-g++") SET(CMAKE_CXX_COMPILER "${TOOLCHAIN}g++")
#SET(CMAKE_SYSTEM_PROCESSOR "armv7-a") #SET(CMAKE_SYSTEM_PROCESSOR "armv7-a")
SET(CMAKE_SYSTEM_PROCESSOR "armv8-a") SET(CMAKE_SYSTEM_PROCESSOR "armv8-a")

View File

@@ -24,6 +24,13 @@ fi
# generate Makefile # generate Makefile
cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DTOOLCHAIN=${TOOLCHAIN} \
-DCMAKE_TOOLCHAIN_FILE=./arm.linux.cross.cmake \ -DCMAKE_TOOLCHAIN_FILE=./arm.linux.cross.cmake \
-G "Unix Makefiles" \ -G "Unix Makefiles" \
${MPP_TOP} ${MPP_TOP}
if [ "${CMAKE_PARALLEL_ENABLE}" = "0" ]; then
cmake --build .
else
cmake --build . -j
fi

View File

@@ -1,9 +1,13 @@
cmake_minimum_required( VERSION 2.6.3 ) cmake_minimum_required( VERSION 2.6.3 )
if(NOT TOOLCHAIN)
set(TOOLCHAIN "arm-linux-gnueabi-")
endif()
SET(CMAKE_SYSTEM_NAME Linux) SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_C_COMPILER "arm-linux-gnueabi-gcc") SET(CMAKE_C_COMPILER "${TOOLCHAIN}gcc")
SET(CMAKE_CXX_COMPILER "arm-linux-gnueabi-g++") SET(CMAKE_CXX_COMPILER "${TOOLCHAIN}g++")
SET(CMAKE_SYSTEM_PROCESSOR "armv7-a") SET(CMAKE_SYSTEM_PROCESSOR "armv7-a")
#SET(CMAKE_SYSTEM_PROCESSOR "armv7-a_hardfp") #SET(CMAKE_SYSTEM_PROCESSOR "armv7-a_hardfp")

View File

@@ -24,7 +24,14 @@ fi
# generate Makefile # generate Makefile
cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DTOOLCHAIN=${TOOLCHAIN} \
-DCMAKE_TOOLCHAIN_FILE=./arm.linux.cross.cmake \ -DCMAKE_TOOLCHAIN_FILE=./arm.linux.cross.cmake \
-DHAVE_DRM=ON \ -DHAVE_DRM=ON \
-G "Unix Makefiles" \ -G "Unix Makefiles" \
${MPP_TOP} ${MPP_TOP}
if [ "${CMAKE_PARALLEL_ENABLE}" = "0" ]; then
cmake --build .
else
cmake --build . -j
fi

View File

@@ -23,10 +23,16 @@ while [ $# -gt 0 ]; do
case $1 in case $1 in
--help | -h) --help | -h)
echo "Execute make-Makefiles.sh in *arm/* or *aarch64/* with some args." echo "Execute make-Makefiles.sh in *arm/* or *aarch64/* with some args."
echo " use --toolchain to set toolchain e.g. --toolchain path/aarch64-none-linux-gnu-"
echo " use --rebuild to rebuild after clean" echo " use --rebuild to rebuild after clean"
echo " use --clean to clean all build file" echo " use --clean to clean all build file"
exit 1 exit 1
;; ;;
--toolchain)
TOOLCHAIN=$2
echo "toolchain: ${TOOLCHAIN}"
shift
;;
--rebuild) --rebuild)
${MAKE_PROGRAM} clean ${MAKE_PROGRAM} clean
if [ -f "CMakeCache.txt" ]; then if [ -f "CMakeCache.txt" ]; then