mirror of
https://gitea.osmocom.org/sim-card/simtrace2.git
synced 2026-03-16 21:28:33 +03:00
Move the logic down to where make gets called, so we don't need the variable. Print whether we use CLANG or GCC. Don't put /opt/llvm-arm/bin infront of PATH unless building with CLANG. Right now it doesn't seem to have e.g. an override for gcc, but the files in that path may change when we update LLVM-embedded-toolchain-for-Arm. Related: OS#6026 Change-Id: Id768e0dbed9265f042b942e6699683723ca40a7c
121 lines
3.9 KiB
Bash
Executable File
121 lines
3.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
TOPDIR=`pwd`
|
|
|
|
if ! [ -x "$(command -v osmo-build-dep.sh)" ]; then
|
|
echo "Error: We need to have scripts/osmo-deps.sh from http://git.osmocom.org/osmo-ci/ in PATH !"
|
|
exit 2
|
|
fi
|
|
|
|
set -e
|
|
|
|
publish="$1"
|
|
base="$PWD"
|
|
deps="$base/deps"
|
|
inst="$deps/install"
|
|
export deps inst
|
|
|
|
osmo-clean-workspace.sh
|
|
|
|
mkdir "$deps" || true
|
|
|
|
osmo-build-dep.sh libosmocore "" '--disable-doxygen --enable-gnutls'
|
|
|
|
# verify only after building the dependency (to ensure we have most recent source of dependency)
|
|
verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]")
|
|
|
|
export PKG_CONFIG_PATH="$inst/lib/pkgconfig:$PKG_CONFIG_PATH"
|
|
export LD_LIBRARY_PATH="$inst/lib"
|
|
|
|
# dfu target MUST be built first, the combined targets need a bl that can be combined..
|
|
BUILDS="simtrace/dfu qmod/dfu owhw/dfu ngff_cardem/dfu "
|
|
#
|
|
BUILDS+="simtrace/blupdate qmod/blupdate owhw/blupdate ngff_cardem/blupdate "
|
|
BUILDS+="simtrace/cardem qmod/cardem owhw/cardem octsimtest/cardem ngff_cardem/cardem "
|
|
BUILDS+="simtrace/trace ngff_cardem/trace "
|
|
|
|
cd $TOPDIR/firmware
|
|
for build in $BUILDS; do
|
|
board=`echo $build | cut -d "/" -f 1`
|
|
app=`echo $build | cut -d "/" -f 2`
|
|
case "$build" in
|
|
"owhw/cardem")
|
|
comb="combined"
|
|
;;
|
|
"qmod/cardem")
|
|
comb="combined"
|
|
;;
|
|
"ngff_cardem/cardem")
|
|
comb="combined"
|
|
;;
|
|
"simtrace/trace")
|
|
comb="combined"
|
|
;;
|
|
*)
|
|
comb=""
|
|
;;
|
|
esac
|
|
echo
|
|
# Build the bootloader with clang, the rest with gcc (OS#5260, OS#6026)
|
|
if [ "$app" = "dfu" ]; then
|
|
echo "=============== $board / $app START (CLANG) =============="
|
|
PATH="/opt/llvm-arm/bin:$PATH" make USE_CLANG=1 BOARD="$board" APP="$app" $comb
|
|
echo "=============== $board / $app RES:$? =============="
|
|
else
|
|
echo "=============== $board / $app START (GCC) =============="
|
|
make USE_CLANG=0 BOARD="$board" APP="$app" $comb
|
|
echo "=============== $board / $app RES:$? =============="
|
|
fi
|
|
done
|
|
|
|
echo
|
|
echo "=============== FIRMWARE TESTS ==========="
|
|
cd $TOPDIR/firmware/test
|
|
make clean
|
|
make
|
|
./card_emu_test
|
|
make clean
|
|
|
|
echo
|
|
echo "=============== HOST START =============="
|
|
cd $TOPDIR/host
|
|
autoreconf --install --force
|
|
./configure --enable-sanitize --enable-werror
|
|
$MAKE $PARALLEL_MAKE
|
|
#$MAKE distcheck || cat-testlogs.sh
|
|
make dist
|
|
|
|
#if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then
|
|
# make -C "$base/doc/manuals" publish
|
|
#fi
|
|
|
|
if [ "x$publish" = "x--publish" ]; then
|
|
echo
|
|
echo "=============== UPLOAD BUILD =============="
|
|
$TOPDIR/contrib/prepare_upload.sh
|
|
|
|
cat > "/build/known_hosts" <<EOF
|
|
[ftp.osmocom.org]:48 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDgQ9HntlpWNmh953a2Gc8NysKE4orOatVT1wQkyzhARnfYUerRuwyNr1GqMyBKdSI9amYVBXJIOUFcpV81niA7zQRUs66bpIMkE9/rHxBd81SkorEPOIS84W4vm3SZtuNqa+fADcqe88Hcb0ZdTzjKILuwi19gzrQyME2knHY71EOETe9Yow5RD2hTIpB5ecNxI0LUKDq+Ii8HfBvndPBIr0BWYDugckQ3Bocf+yn/tn2/GZieFEyFpBGF/MnLbAAfUKIdeyFRX7ufaiWWz5yKAfEhtziqdAGZaXNaLG6gkpy3EixOAy6ZXuTAk3b3Y0FUmDjhOHllbPmTOcKMry9
|
|
[ftp.osmocom.org]:48 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPdWn1kEousXuKsZ+qJEZTt/NSeASxCrUfNDW3LWtH+d8Ust7ZuKp/vuyG+5pe5pwpPOgFu7TjN+0lVjYJVXH54=
|
|
[ftp.osmocom.org]:48 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK8iivY70EiR5NiGChV39gRLjNpC8lvu1ZdHtdMw2zuX
|
|
EOF
|
|
SSH_COMMAND="ssh -o 'UserKnownHostsFile=/build/known_hosts' -p 48"
|
|
rsync --archive --verbose --compress --delete --rsh "$SSH_COMMAND" $TOPDIR/firmware/bin/*-latest.{bin,elf} binaries@ftp.osmocom.org:web-files/simtrace2/firmware/latest/
|
|
rsync --archive --verbose --compress --rsh "$SSH_COMMAND" --exclude $TOPDIR/firmware/bin/*-latest.{bin,elf} $TOPDIR/firmware/bin/*-*-*-*.{bin,elf} binaries@ftp.osmocom.org:web-files/simtrace2/firmware/all/
|
|
fi
|
|
|
|
echo
|
|
echo "=============== HOST CLEAN =============="
|
|
$MAKE maintainer-clean
|
|
|
|
echo
|
|
echo "=============== FIRMWARE CLEAN =============="
|
|
cd $TOPDIR/firmware/
|
|
for build in $BUILDS; do
|
|
board=`echo $build | cut -d "/" -f 1`
|
|
app=`echo $build | cut -d "/" -f 2`
|
|
make BOARD="$board" APP="$app" clean
|
|
done
|
|
|
|
osmo-clean-workspace.sh
|