proxmark3/docker/archlinux/run_tests.sh

60 lines
2 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
# Iceman 2022
#
# This script is to be run from proxmark root folder inside the docker env
# cd proxmark;
# docker/archlinux/run_tests.sh;
#
# Script contains two phases.
#
# -- Init / setup phase
# Script to be run inside docker env. First install some dependencies for docker image.
#
# -- Build phase begins
# make builds
# cmake client builds
# of the different possible PLATFORM (PM3RDV4 / PM3GENERIC) and BTADDON combos
cat << EOF |sudo tee -a /etc/pacman.conf
[testing]
Include = /etc/pacman.d/mirrorlist
[community-testing]
Include = /etc/pacman.d/mirrorlist
[staging]
Include = /etc/pacman.d/mirrorlist
EOF
sudo pacman -Syu
# search available versions
pacman -Ss '^arm-none-eabi-gcc$'
pacman -Ss '^gcc$'
# depending on where the latest bleeding edge is:
# sudo pacman -S community-testing/arm-none-eabi-gcc
# sudo pacman -S arm-none-eabi-gcc
# sudo pacman -S staging/gcc
# sudo pacman -S testing/gcc
# sudo pacman -S gcc
sudo pacman --noconfirm -S python-pip
python3 -m pip install ansicolors sslcrypto
# replace egrep to silence warning
sed -i 's/egrep/grep -E/g' tools/pm3_tests.sh
# Makefile build tests
make clean; make -j PLATFORM=PM3GENERIC; tools/pm3_tests.sh --long || exit 1
make clean; make -j PLATFORM=PM3RDV4; tools/pm3_tests.sh --long || exit 1
make clean; make -j PLATFORM=PM3RDV4 PLATFORM_EXTRAS=BTADDON; tools/pm3_tests.sh --long || exit 1
# cmake client build test
( cd client; rm -rf build; mkdir build;cd build;cmake ..;make -j ); PM3BIN=./client/build/proxmark3 tools/pm3_tests.sh client --long || exit 1
( cd client; rm -rf build; mkdir build;cd build;cmake ..;make -j PLATFORM=PM3GENERIC ); PM3BIN=./client/build/proxmark3 tools/pm3_tests.sh client --long || exit 1
( cd client; rm -rf build; mkdir build;cd build;cmake ..;make -j PLATFORM=PM3RDV4 ); PM3BIN=./client/build/proxmark3 tools/pm3_tests.sh client --long || exit 1
( cd client; rm -rf build; mkdir build;cd build;cmake ..;make -j PLATFORM=PM3RDV4 PLATFORM_EXTRAS=BTADDON ); PM3BIN=./client/build/proxmark3 tools/pm3_tests.sh client || exit 1