aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2018-08-25 17:15:41 +0200
committerGravatar Jorge Aparicio <jorge@japaric.io> 2018-08-25 17:15:41 +0200
commit0806a1e2ae31fec34dcc6b9c502bf5b8cd5da1be (patch)
treebdca7ddf9d0835b4acc5632b06805bc71713d491
parent6b1cb44eb0504d1cd27e02fc79de0c7b86a32092 (diff)
downloadcortex-m-0806a1e2ae31fec34dcc6b9c502bf5b8cd5da1be.tar.gz
cortex-m-0806a1e2ae31fec34dcc6b9c502bf5b8cd5da1be.tar.zst
cortex-m-0806a1e2ae31fec34dcc6b9c502bf5b8cd5da1be.zip
check that the blobs are up to date
-rw-r--r--cortex-m-rt/.gitignore2
-rw-r--r--cortex-m-rt/.travis.yml1
-rwxr-xr-xcortex-m-rt/check-blobs.sh21
-rw-r--r--cortex-m-rt/ci/script.sh4
4 files changed, 28 insertions, 0 deletions
diff --git a/cortex-m-rt/.gitignore b/cortex-m-rt/.gitignore
index 9895bb1..c71d6db 100644
--- a/cortex-m-rt/.gitignore
+++ b/cortex-m-rt/.gitignore
@@ -1,4 +1,6 @@
**/*.rs.bk
Cargo.lock
+bin/*.after
+bin/*.before
bin/*.o
target/
diff --git a/cortex-m-rt/.travis.yml b/cortex-m-rt/.travis.yml
index ff66c36..caa29ef 100644
--- a/cortex-m-rt/.travis.yml
+++ b/cortex-m-rt/.travis.yml
@@ -3,6 +3,7 @@ language: rust
matrix:
include:
- env: TARGET=x86_64-unknown-linux-gnu
+ rust: stable
if: (branch = staging OR branch = trying) OR (type = pull_request AND branch = master)
- env: TARGET=thumbv6m-none-eabi
diff --git a/cortex-m-rt/check-blobs.sh b/cortex-m-rt/check-blobs.sh
new file mode 100755
index 0000000..e1d0d80
--- /dev/null
+++ b/cortex-m-rt/check-blobs.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+# Checks that the blobs are up to date with the committed assembly files
+
+set -euxo pipefail
+
+for lib in $(ls bin/*.a); do
+ filename=$(basename $lib)
+ arm-none-eabi-objdump -Cd $lib > bin/${filename%.a}.before
+done
+
+./assemble.sh
+
+for lib in $(ls bin/*.a); do
+ filename=$(basename $lib)
+ arm-none-eabi-objdump -Cd $lib > bin/${filename%.a}.after
+done
+
+for cksum in $(ls bin/*.after); do
+ diff -u $cksum ${cksum%.after}.before
+done
diff --git a/cortex-m-rt/ci/script.sh b/cortex-m-rt/ci/script.sh
index 1fa3535..7d1cc67 100644
--- a/cortex-m-rt/ci/script.sh
+++ b/cortex-m-rt/ci/script.sh
@@ -73,6 +73,10 @@ main() {
-C linker=rust-lld \
-C link-arg=-Tlink.x
fi
+
+ if [ $TARGET = x86_64-unknown-linux-gnu ]; then
+ ./check-blobs.sh
+ fi
}
main