Skip to content
Snippets Groups Projects
Commit 0788a15a authored by Jorge Aparicio's avatar Jorge Aparicio
Browse files

update CI

parent c7b9507a
No related branches found
No related tags found
No related merge requests found
[target.thumbv6m-none-eabi]
runner = 'arm-none-eabi-gdb'
rustflags = [
"-C", "link-arg=-Tlink.x",
"-C", "linker=arm-none-eabi-ld",
"-Z", "linker-flavor=ld",
]
[target.thumbv7m-none-eabi]
runner = 'arm-none-eabi-gdb'
rustflags = [
......@@ -5,3 +13,19 @@ rustflags = [
"-C", "linker=arm-none-eabi-ld",
"-Z", "linker-flavor=ld",
]
[target.thumbv7em-none-eabi]
runner = 'arm-none-eabi-gdb'
rustflags = [
"-C", "link-arg=-Tlink.x",
"-C", "linker=arm-none-eabi-ld",
"-Z", "linker-flavor=ld",
]
[target.thumbv7em-none-eabihf]
runner = 'arm-none-eabi-gdb'
rustflags = [
"-C", "link-arg=-Tlink.x",
"-C", "linker=arm-none-eabi-ld",
"-Z", "linker-flavor=ld",
]
\ No newline at end of file
dist: trusty
language: rust
services: docker
sudo: required
matrix:
include:
......@@ -20,7 +17,6 @@ before_install: set -e
install:
- sh ci/install.sh
- source ~/.cargo/env || true
script:
- bash ci/script.sh
......
set -ex
main() {
local target=
if [ $TRAVIS_OS_NAME = linux ]; then
target=x86_64-unknown-linux-musl
sort=sort
else
target=x86_64-apple-darwin
sort=gsort # for `sort --sort-version`, from brew's coreutils.
fi
# This fetches latest stable release
local tag=$(git ls-remote --tags --refs --exit-code https://github.com/japaric/cross \
| cut -d/ -f3 \
| grep -E '^v[0.1.0-9.]+$' \
| $sort --version-sort \
| tail -n1)
curl -LSfs https://japaric.github.io/trust/install.sh | \
sh -s -- \
--force \
--git japaric/cross \
--tag $tag \
--target $target
case $TARGET in
thumbv*-none-eabi*)
cargo install --list | grep xargo || \
cargo install xargo
rustup component list | grep 'rust-src.*installed' || \
rustup component add rust-src
;;
esac
}
main
......@@ -2,12 +2,17 @@ set -ex
main() {
if [ $TARGET = x86_64-unknown-linux-gnu ]; then
cargo build
cargo test
return
fi
cross build --target $TARGET
cross build --target $TARGET --release
xargo build --target $TARGET
for ex in $(ls examples/*); do
ex=$(basename $ex)
ex=${ex%.*}
xargo build --target $TARGET --example $ex
done
}
main
......@@ -63,6 +63,9 @@ task!(EXTI0, exti0);
fn exti0(t: &mut Threshold, r: EXTI0::Resources) {
// because this task has a priority of 1 the preemption threshold is also 1
let mut low = r.LOW;
let mut high = r.HIGH;
// A
rtfm::bkpt();
......@@ -70,7 +73,7 @@ fn exti0(t: &mut Threshold, r: EXTI0::Resources) {
rtfm::set_pending(Interrupt::EXTI1); // ~> exti1
// a claim creates a critical section
r.LOW.claim_mut(t, |_low, t| {
low.claim_mut(t, |_low, t| {
// this claim increases the preemption threshold to 2
// just high enough to not race with task `exti1` for access to the
// `LOW` resource
......@@ -90,7 +93,7 @@ fn exti0(t: &mut Threshold, r: EXTI0::Resources) {
rtfm::bkpt();
// claims can be nested
r.HIGH.claim_mut(t, |_high, _| {
high.claim_mut(t, |_high, _| {
// This claim increases the preemption threshold to 3
// now `exti2` can't preempt this task
......
......@@ -65,6 +65,9 @@
//! fn exti0(t: &mut Threshold, r: EXTI0::Resources) {
//! // because this task has a priority of 1 the preemption threshold is also 1
//!
//! let mut low = r.LOW;
//! let mut high = r.HIGH;
//!
//! // A
//! rtfm::bkpt();
//!
......@@ -72,7 +75,7 @@
//! rtfm::set_pending(Interrupt::EXTI1); // ~> exti1
//!
//! // a claim creates a critical section
//! r.LOW.claim_mut(t, |_low, t| {
//! low.claim_mut(t, |_low, t| {
//! // this claim increases the preemption threshold to 2
//! // just high enough to not race with task `exti1` for access to the
//! // `LOW` resource
......@@ -92,7 +95,7 @@
//! rtfm::bkpt();
//!
//! // claims can be nested
//! r.HIGH.claim_mut(t, |_high, _| {
//! high.claim_mut(t, |_high, _| {
//! // This claim increases the preemption threshold to 3
//!
//! // now `exti2` can't preempt this task
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment