Skip to content
Snippets Groups Projects
Unverified Commit e830a27e authored by gendx's avatar gendx Committed by GitHub
Browse files

Merge branch 'master' into no-spin-allocator

parents 8ca00ed7 53b46ce6
No related branches found
No related tags found
No related merge requests found
...@@ -43,7 +43,7 @@ This guide **does not** cover how to setup the JTAG probe on your system. ...@@ -43,7 +43,7 @@ This guide **does not** cover how to setup the JTAG probe on your system.
In order to compile and flash a working OpenSK firmware, you will need the In order to compile and flash a working OpenSK firmware, you will need the
following: following:
* a working [Rust](https://rustup.rs/) toolchain installed on your system * rustup (can be installed with https://rustup.rs/)
* python3 and pip * python3 and pip
* the OpenSSL command line tool * the OpenSSL command line tool
......
...@@ -13,18 +13,49 @@ ...@@ -13,18 +13,49 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
set -e
# Check that rustup and pip3 are installed
check_command () {
if ! which "$1" >/dev/null
then
echo "Missing $1 command.$2"
exit 1
fi
}
check_command rustup " Follow the steps under https://rustup.rs/ to install it."
check_command pip3
# Ensure the submodules are pulled and up-to-date # Ensure the submodules are pulled and up-to-date
git submodule update --init git submodule update --init
done_text="$(tput bold)DONE.$(tput sgr0)" done_text="$(tput bold)DONE.$(tput sgr0)"
patch_conflict_detected () {
cat <<EOF
This script cannot be run twice without reverting the patches.
To do so, follow these instructions:
1. Commit any changes you want to save.
2. Run the ./reset.sh script to revert all uncommitted changes.
3. Run the ./setup.sh script again.
EOF
exit 1
}
# Apply patches to kernel. Do that in a sub-shell # Apply patches to kernel. Do that in a sub-shell
( (
cd third_party/tock/ && \ cd third_party/tock/ && \
for p in ../../patches/tock/[0-9][0-9]-*.patch for p in ../../patches/tock/[0-9][0-9]-*.patch
do do
echo -n '[-] Applying patch "'$(basename $p)'"... ' echo -n '[-] Applying patch "'$(basename $p)'"... '
git apply "$p" && echo $done_text if git apply "$p"
then
echo $done_text
else
patch_conflict_detected
fi
done done
) )
...@@ -34,7 +65,12 @@ done_text="$(tput bold)DONE.$(tput sgr0)" ...@@ -34,7 +65,12 @@ done_text="$(tput bold)DONE.$(tput sgr0)"
for p in ../../patches/libtock-rs/[0-9][0-9]-*.patch for p in ../../patches/libtock-rs/[0-9][0-9]-*.patch
do do
echo -n '[-] Applying patch "'$(basename $p)'"... ' echo -n '[-] Applying patch "'$(basename $p)'"... '
git apply "$p" && echo $done_text if git apply "$p"
then
echo $done_text
else
patch_conflict_detected
fi
done done
) )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment