Use cargo feature instead of conditional compilation hacks

This commit is contained in:
Henrik Tjäder 2020-06-10 12:07:23 +00:00
parent 0b3cc87f2d
commit 5f61f7b75f
4 changed files with 40 additions and 29 deletions

View file

@ -90,7 +90,7 @@ jobs:
with:
use-cross: false
command: check
args: --examples --target=${{ matrix.target }}
args: --examples --target=${{ matrix.target }} --features __min_r1_43
- name: cargo check -p homogeneous
uses: actions-rs/cargo@v1

View file

@ -38,6 +38,10 @@ required-features = ["__v7"]
name = "t-cfg"
required-features = ["__v7"]
[[example]]
name = "t-cfg-resources"
required-features = ["__min_r1_43"]
[[example]]
name = "t-schedule"
required-features = ["__v7"]
@ -77,6 +81,7 @@ heterogeneous = ["cortex-m-rtfm-macros/heterogeneous", "microamp"]
homogeneous = ["cortex-m-rtfm-macros/homogeneous"]
# used for testing this crate; do not use in applications
__v7 =[]
__min_r1_43 =[]
[profile.release]
codegen-units = 1

View file

@ -96,8 +96,18 @@ main() {
if [ $TARGET = thumbv6m-none-eabi ]; then
cargo check --target $T --examples
# Check examples with specific features not compatible with MSRV
if [[ $TRAVIS_RUST_VERSION != 1.*.* ]]; then
cargo check --target $T --examples --features __min_r1_43
fi
else
cargo check --target $T --examples --features __v7
# Check examples with specific features not compatible with MSRV
if [[ $TRAVIS_RUST_VERSION != 1.*.* ]]; then
cargo check --target $T --examples --features __v7,__min_r1_43
fi
fi
cargo check -p homogeneous --target $T --examples

View file

@ -5,11 +5,8 @@
use panic_halt as _;
#[cfg(rustc_is_nightly)]
mod example {
#[rtfm::app(device = lm3s6965)]
const APP: () = {
#[rtfm::app(device = lm3s6965)]
const APP: () = {
struct Resources {
// A resource
#[init(0)]
@ -36,5 +33,4 @@ mod example {
fn idle(_cx: idle::Context) -> ! {
loop {}
}
};
}
};