This is an automated email from the ASF dual-hosted git repository.

yuanz pushed a commit to branch no-std
in repository 
https://gitbox.apache.org/repos/asf/incubator-teaclave-trustzone-sdk.git


The following commit(s) were added to refs/heads/no-std by this push:
     new 2af52d7  CI: Enable 32-bit Rust examples runtime testing
2af52d7 is described below

commit 2af52d70e3b919e60971fa78dce99fe5ded6ba66
Author: Sumit Garg <[email protected]>
AuthorDate: Wed Feb 7 17:46:12 2024 +0530

    CI: Enable 32-bit Rust examples runtime testing
    
    Now OP-TEE build system has been updated to support 32-bit Rust TAs, so
    enable runtime testing for them.
    
    Signed-off-by: Sumit Garg <[email protected]>
---
 .github/workflows/ci.yml | 49 ++++++++++++++++++++++++++++++++++++------------
 1 file changed, 37 insertions(+), 12 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9e2a1c9..de5a936 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -85,7 +85,7 @@ jobs:
 
           # Build OP-TEE rust examples for Arm 64-bit both host and TA
           export 
TA_DEV_KIT_DIR=~/optee_os/out/arm-plat-vexpress/export-ta_arm64/
-          make
+          make -j`nproc`
 
           # Build OP-TEE rust examples for Arm 64-bit host and 32-bit TA
           export 
TA_DEV_KIT_DIR=~/optee_os/out/arm-plat-vexpress/export-ta_arm32/
@@ -93,7 +93,7 @@ jobs:
           export CROSS_COMPILE_TA=$CROSS_COMPILE32
           export TARGET_HOST="aarch64-unknown-linux-gnu"
           export TARGET_TA="arm-unknown-linux-gnueabihf"
-          make clean && make
+          make clean && make -j`nproc`
 
           # Build OP-TEE rust examples for Arm 32-bit both host and TA
           export 
TA_DEV_KIT_DIR=~/optee_os/out/arm-plat-vexpress/export-ta_arm32/
@@ -102,7 +102,7 @@ jobs:
           export TARGET_HOST="arm-unknown-linux-gnueabihf"
           export TARGET_TA="arm-unknown-linux-gnueabihf"
           (cd ~/optee_client && make clean && make 
CROSS_COMPILE=$CROSS_COMPILE32 WITH_TEEACL=0)
-          make clean && make
+          make clean && make -j`nproc`
 
           # Build OP-TEE rust examples for Arm 32-bit host and 64-bit TA
           export 
TA_DEV_KIT_DIR=~/optee_os/out/arm-plat-vexpress/export-ta_arm64/
@@ -110,12 +110,14 @@ jobs:
           export CROSS_COMPILE_TA=$CROSS_COMPILE64
           export TARGET_HOST="arm-unknown-linux-gnueabihf"
           export TARGET_TA="aarch64-unknown-linux-gnu"
-          make clean && make
+          make clean && make -j`nproc`
 
-  build-and-run-examples-in-OPTEE-repo:
+  OPTEE-repo-build-and-run-examples-64bit-TAs:
     runs-on: ubuntu-latest
     container: teaclave/teaclave-trustzone-sdk-build:0.3.0
     steps:
+      - name: Remove /__t/*
+        run: rm -rf /__t/*
       - name: Checkout repository
         uses: actions/checkout@v2
         with:
@@ -129,21 +131,44 @@ jobs:
           mkdir -p ~/optee-qemuv8 && cd ~/optee-qemuv8 &&
           repo init -u https://github.com/OP-TEE/manifest.git -m qemu_v8.xml &&
           repo sync -j4 --no-clone-bundle
-      - name: Setting up $HOME
+      - name: Build images and run tests
         run: |
-          cp /root/.bashrc $HOME/.bashrc &&
-          ln -sf /root/.rustup ~/.rustup &&
-          ln -sf /root/.cargo ~/.cargo
+          apt update && apt install libslirp-dev -y
+          cd ~/optee-qemuv8
+          rm -rf optee_rust/ &&
+          mv $GITHUB_WORKSPACE/incubator-teaclave-trustzone-sdk optee_rust/
+          cd build &&
+          make -j3 toolchains &&
+          make -j`nproc` RUST_ENABLE=y check
+
+  OPTEE-repo-build-and-run-examples-32bit-TAs:
+    runs-on: ubuntu-latest
+    container: teaclave/teaclave-trustzone-sdk-build:0.3.0
+    steps:
+      - name: Remove /__t/*
+        run: rm -rf /__t/*
+      - name: Checkout repository
+        uses: actions/checkout@v2
+        with:
+          submodules: recursive
+          path: 'incubator-teaclave-trustzone-sdk'
+      - name: Checkout OP-TEE repository
+        run: |
+          mkdir -p ~/bin
+          curl https://storage.googleapis.com/git-repo-downloads/repo-1 > 
~/bin/repo && chmod a+x ~/bin/repo
+          export PATH=~/bin:$PATH
+          mkdir -p ~/optee-qemuv8 && cd ~/optee-qemuv8 &&
+          repo init -u https://github.com/OP-TEE/manifest.git -m qemu_v8.xml &&
+          repo sync -j4 --no-clone-bundle
       - name: Build images and run tests
         run: |
           apt update && apt install libslirp-dev -y
           cd ~/optee-qemuv8
           rm -rf optee_rust/ &&
           mv $GITHUB_WORKSPACE/incubator-teaclave-trustzone-sdk optee_rust/
-          export OPTEE_DIR=$(pwd)
           cd build &&
-          make -j2 toolchains &&
-          make CFG_TEE_CORE_LOG_LEVEL=0 OPTEE_RUST_ENABLE=y check-rust
+          make -j3 toolchains &&
+          make -j`nproc` RUST_ENABLE=y COMPILE_S_USER=32 check
 
   license:
     runs-on: ubuntu-latest


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to