mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-02 12:05:50 +00:00
* Fix miri problems by assuming alignment is 1 in rust * Removed is_aligned fn from rust verifier. * Add back is_aligned, but make it w.r.t. buffer[0] * touch unused variable * touch unused variable * +nightly * Move Rust miri testing into its own docker * fix bash * missing one endian conversion * fix endianness2 * format stuff Co-authored-by: Casper Neo <cneo@google.com>
59 lines
1.7 KiB
Bash
Executable File
59 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
#
|
|
# Copyright 2018 Google Inc. All rights reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
if [[ "$1" == "mips-unknown-linux-gnu" ]]; then
|
|
TARGET_FLAG="--target mips-unknown-linux-gnu"
|
|
export CARGO_TARGET_MIPS_UNKNOWN_LINUX_GNU_LINKER=mips-linux-gnu-gcc
|
|
export CARGO_TARGET_MIPS_UNKNOWN_LINUX_GNU_RUNNER="qemu-mips -L /usr/mips-linux-gnu"
|
|
fi
|
|
|
|
cd ./rust_usage_test
|
|
cargo test $TARGET_FLAG -- --quiet
|
|
TEST_RESULT=$?
|
|
if [[ $TEST_RESULT == 0 ]]; then
|
|
echo "OK: Rust tests passed."
|
|
else
|
|
echo "KO: Rust tests failed."
|
|
exit 1
|
|
fi
|
|
|
|
cargo run $TARGET_FLAG --bin=flatbuffers_alloc_check
|
|
TEST_RESULT=$?
|
|
if [[ $TEST_RESULT == 0 ]]; then
|
|
echo "OK: Rust heap alloc test passed."
|
|
else
|
|
echo "KO: Rust heap alloc test failed."
|
|
exit 1
|
|
fi
|
|
|
|
cargo run $TARGET_FLAG --bin=flexbuffers_alloc_check
|
|
TEST_RESULT=$?
|
|
if [[ $TEST_RESULT == 0 ]]; then
|
|
echo "OK: Rust heap alloc test passed."
|
|
else
|
|
echo "KO: Rust heap alloc test failed."
|
|
exit 1
|
|
fi
|
|
|
|
cargo bench $TARGET_FLAG
|
|
|
|
# RUST_NIGHTLY environment variable set in dockerfile.
|
|
if [[ $RUST_NIGHTLY == 1 ]]; then
|
|
rustup +nightly component add miri
|
|
cargo +nightly miri test -- -Zmiri-disable-isolation
|
|
fi
|