ProxSpace/msys2/autobuild.sh
2019-12-23 02:23:42 +01:00

56 lines
No EOL
2.1 KiB
Bash

#!/bin/bash
pm3Dir=/pm3
copyDir=/builds
buildDir=/tmp
export PATH=/gcc-arm-none-eabi/bin:$PATH
pacman -Q zip 1> /dev/null
if [[ $? != 0 ]]; then
pacman --noconfirm -S zip
fi
if [ "$MSYSTEM" == "MINGW32" ]; then
mingwDir=/mingw32
arch=32
fi
if [ "$MSYSTEM" == "MINGW64" ]; then
mingwDir=/mingw64
arch=64
fi
cd $pm3Dir
for i in $( ls ); do
echo Processing: $i-$arch
cd $pm3Dir/$i
git fetch
git pull
hash=$(git rev-parse HEAD)
date=$(date +%Y%m%d)
if ! ls $copyDir/$i-$arch/*-$hash.zip 1> /dev/null 2>&1; then
make clean
make all
if [ $? -eq 0 ]; then
rm -rf $buildDir/$i/*
mkdir -p $copyDir/$i-$arch/
mkdir -p $buildDir/$i/win$arch/platforms
mkdir -p $buildDir/$i/firmware_win/bootrom
mkdir -p "$buildDir/$i/firmware_win/JTAG Only"
mkdir -p "$buildDir/$i/Windows Driver"
#you have to thank QT5 for all that dlls
cp $mingwDir/bin/{libbz2-1.dll,libdouble-conversion.dll,libfreetype-*.dll,libgcc_s_*.dll,libglib-2.0-0.dll,libgraphite2.dll,libharfbuzz-0.dll,libiconv-2.dll,libicudt64.dll,libicuin64.dll,libicuuc64.dll,libintl-8.dll,libpcre-1.dll,libpcre2-16-0.dll,libpng16-16.dll,libreadline*.dll,libstdc++-*.dll,libtermcap-0.dll,libwinpthread-1.dll,Qt5Core.dll,Qt5Gui.dll,Qt5Widgets.dll,zlib1.dll,libsndfile-1.dll,libFLAC-8.dll,libogg-0.dll,libspeex-1.dll,libvorbis-0.dll,libvorbisenc-2.dll} $buildDir/$i/win$arch
cp -r /autobuild/* $buildDir/$i/win$arch
cp -r $pm3Dir/$i/client/{proxmark3.exe,flasher.exe,*.dic,lualibs,scripts,hardnested} $buildDir/$i/win$arch
cp $mingwDir/share/qt5/plugins/platforms/qwindows.dll $buildDir/$i/win$arch/platforms
cp $pm3Dir/$i/armsrc/obj/{fullimage.elf,fullimage.s19} $buildDir/$i/firmware_win
cp $pm3Dir/$i/bootrom/obj/{bootrom.elf,bootrom.s19} $buildDir/$i/firmware_win/bootrom
cp $pm3Dir/$i/recovery/{bootrom.bin,fullimage.bin,proxmark3_recovery.bin} "$buildDir/$i/firmware_win/JTAG Only"
cp $pm3Dir/$i/driver/proxmark3.inf "$buildDir/$i/Windows Driver"
rm $buildDir/$i/win$arch/hardnested/{*.h,*.c}
cd $buildDir/$i
zip -r $copyDir/$i-$arch/$i-$arch-$date-$hash.zip ./*
echo done
fi
fi
done