Kévin Redon | 69b92d9 | 2019-01-24 16:39:20 +0100 | [diff] [blame] | 1 | #!/bin/bash |
Eric Wild | 4cfa9ca | 2019-11-28 13:50:12 +0100 | [diff] [blame] | 2 | |
Harald Welte | 271d487 | 2019-06-13 18:15:38 +0200 | [diff] [blame] | 3 | if ! [ -x "$(command -v osmo-deps.sh)" ]; then |
| 4 | echo "Error: We need to have scripts/osmo-deps.sh from http://git.osmocom.org/osmo-ci/ in PATH !" |
| 5 | exit 2 |
| 6 | fi |
| 7 | |
| 8 | set -ex |
| 9 | |
Kévin Redon | 69b92d9 | 2019-01-24 16:39:20 +0100 | [diff] [blame] | 10 | TOPDIR=`pwd` |
| 11 | |
Harald Welte | 1f1c1c0 | 2019-11-30 15:38:43 +0100 | [diff] [blame] | 12 | publish="$1" |
Harald Welte | 271d487 | 2019-06-13 18:15:38 +0200 | [diff] [blame] | 13 | deps="$TOPDIR/deps" |
| 14 | inst="$TOPDIR/install" |
| 15 | export deps inst |
| 16 | |
Eric Wild | 8cde9d2 | 2019-11-28 17:30:44 +0100 | [diff] [blame] | 17 | |
Harald Welte | 6312b44 | 2019-10-09 14:30:41 +0200 | [diff] [blame] | 18 | echo |
| 19 | echo "=============== libosmocore hostt build ===========" |
| 20 | osmo-build-dep.sh libosmocore "" --disable-doxygen |
| 21 | export PKG_CONFIG_PATH="$inst/lib/pkgconfig:$PKG_CONFIG_PATH" |
| 22 | export LD_LIBRARY_PATH="$inst/lib" |
| 23 | export PATH="$inst/bin:$PATH" |
| 24 | |
| 25 | echo |
| 26 | echo "=============== CCID usb_gadget build ===========" |
| 27 | cd $TOPDIR/ccid_host |
| 28 | make clean |
Harald Welte | 0af2079 | 2019-12-17 13:29:40 +0100 | [diff] [blame] | 29 | verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") |
Harald Welte | 6312b44 | 2019-10-09 14:30:41 +0200 | [diff] [blame] | 30 | make $PARALLEL_MAKE |
| 31 | make clean |
Eric Wild | 8cde9d2 | 2019-11-28 17:30:44 +0100 | [diff] [blame] | 32 | |
Harald Welte | 271d487 | 2019-06-13 18:15:38 +0200 | [diff] [blame] | 33 | # adapted from |
| 34 | echo |
| 35 | echo "=============== libosmocore cross-build ===========" |
| 36 | mkdir -p "$deps" |
| 37 | cd "$deps" |
| 38 | osmo-deps.sh libosmocore master |
| 39 | cd libosmocore |
| 40 | |
| 41 | mkdir -p "$inst/stow" |
| 42 | autoreconf --install --force |
Harald Welte | 9db9d2e | 2019-11-12 12:07:53 +0100 | [diff] [blame] | 43 | ./configure --enable-static --prefix="$inst/stow/libosmocore" --host=arm-none-eabi \ |
| 44 | --enable-embedded --disable-doxygen --disable-shared --disable-pseudotalloc \ |
Harald Welte | 8629ffa | 2020-07-30 18:51:45 +0200 | [diff] [blame] | 45 | --disable-libsctp --disable-libusb --disable-gb --enable-external-tests \ |
Harald Welte | 66bda78 | 2020-07-30 21:53:14 +0200 | [diff] [blame^] | 46 | CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles -nodefaultlibs -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations -Wno-error=cpp -mthumb -Os -mlong-calls -g3 -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -I /home/laforge/projects/git/osmo-ccid-firmware/sysmoOCTSIM -Wno-error=format" \ |
| 47 | CPPFLAGS="-D__thread=''" |
Harald Welte | 271d487 | 2019-06-13 18:15:38 +0200 | [diff] [blame] | 48 | make $PARALLEL_MAKE install |
| 49 | make clean |
| 50 | STOW_DIR="$inst/stow" stow --restow libosmocore |
| 51 | |
| 52 | export PKG_CONFIG_PATH="$inst/lib/pkgconfig" |
| 53 | export LD_LIBRARY_PATH="$inst/lib" |
Kévin Redon | 69b92d9 | 2019-01-24 16:39:20 +0100 | [diff] [blame] | 54 | |
| 55 | echo |
| 56 | echo "=============== sysmoOCTSIM firmware build ===========" |
| 57 | cd $TOPDIR/sysmoOCTSIM |
| 58 | cd gcc |
Harald Welte | 1f1c1c0 | 2019-11-30 15:38:43 +0100 | [diff] [blame] | 59 | make mrproper |
Harald Welte | 0af2079 | 2019-12-17 13:29:40 +0100 | [diff] [blame] | 60 | verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") |
Harald Welte | 271d487 | 2019-06-13 18:15:38 +0200 | [diff] [blame] | 61 | make SYSTEM_PREFIX="$inst" $PARALLEL_MAKE |
Harald Welte | 1f1c1c0 | 2019-11-30 15:38:43 +0100 | [diff] [blame] | 62 | |
| 63 | if [ "x$publish" = "x--publish" ]; then |
| 64 | echo |
| 65 | echo "=============== UPLOAD BUILD ==============" |
| 66 | |
| 67 | cat > "/build/known_hosts" <<EOF |
| 68 | [rita.osmocom.org]:48 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDgQ9HntlpWNmh953a2Gc8NysKE4orOatVT1wQkyzhARnfYUerRuwyNr1GqMyBKdSI9amYVBXJIOUFcpV81niA7zQRUs66bpIMkE9/rHxBd81SkorEPOIS84W4vm3SZtuNqa+fADcqe88Hcb0ZdTzjKILuwi19gzrQyME2knHY71EOETe9Yow5RD2hTIpB5ecNxI0LUKDq+Ii8HfBvndPBIr0BWYDugckQ3Bocf+yn/tn2/GZieFEyFpBGF/MnLbAAfUKIdeyFRX7ufaiWWz5yKAfEhtziqdAGZaXNaLG6gkpy3EixOAy6ZXuTAk3b3Y0FUmDjhOHllbPmTOcKMry9 |
| 69 | [rita.osmocom.org]:48 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPdWn1kEousXuKsZ+qJEZTt/NSeASxCrUfNDW3LWtH+d8Ust7ZuKp/vuyG+5pe5pwpPOgFu7TjN+0lVjYJVXH54= |
| 70 | [rita.osmocom.org]:48 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK8iivY70EiR5NiGChV39gRLjNpC8lvu1ZdHtdMw2zuX |
| 71 | EOF |
| 72 | SSH_COMMAND="ssh -o 'UserKnownHostsFile=/build/known_hosts' -p 48" |
| 73 | rsync --archive --copy-links --verbose --compress --delete --rsh "$SSH_COMMAND" \ |
| 74 | $TOPDIR/sysmoOCTSIM/gcc/sysmoOCTSIM.{bin,elf} \ |
| 75 | binaries@rita.osmocom.org:web-files/osmo-ccid-firmware/latest/ |
| 76 | rsync --archive --verbose --compress --rsh "$SSH_COMMAND" \ |
| 77 | --exclude $TOPDIR/sysmoOCTSIM/gcc/sysmoOCTSIM.bin \ |
| 78 | --exclude $TOPDIR/sysmoOCTSIM/gcc/sysmoOCTSIM.elf \ |
| 79 | $TOPDIR/sysmoOCTSIM/gcc/*-*.{bin,elf} \ |
| 80 | binaries@rita.osmocom.org:web-files/osmo-ccid-firmware/all/ |
| 81 | fi |
| 82 | |
| 83 | echo |
| 84 | echo "=============== FIRMWARE CLEAN ==============" |
Kévin Redon | 69b92d9 | 2019-01-24 16:39:20 +0100 | [diff] [blame] | 85 | make clean |