mirror of https://github.com/wolfSSL/wolfBoot.git
CI tests: Cypress test
parent
90a5f29dd3
commit
9ff3536347
|
|
@ -0,0 +1,116 @@
|
|||
name: Wolfboot Reusable Build Workflow for Cypress PSoC6
|
||||
|
||||
on:
|
||||
|
||||
workflow_call:
|
||||
inputs:
|
||||
arch:
|
||||
required: true
|
||||
type: string
|
||||
config-file:
|
||||
required: true
|
||||
type: string
|
||||
make-args:
|
||||
required: false
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 30
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
repository: Infineon/psoc6pdl
|
||||
path: lib/psoc6pdl
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
repository: Infineon/TARGET_CY8CKIT-062S2-43012
|
||||
path: lib/TARGET_CY8CKIT-062S2-43012
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
repository: Infineon/core-lib
|
||||
path: lib/core-lib
|
||||
|
||||
- name: Patch cy_syslib.c to declare cy_delay32kMs
|
||||
run: |
|
||||
# Add extern declaration for cy_delay32kMs directly in cy_syslib.c
|
||||
sed -i '/#include "cy_syslib.h"/a \\\n/* Extern declaration for delay variable */\nextern uint32_t cy_delay32kMs;' lib/psoc6pdl/drivers/source/cy_syslib.c
|
||||
|
||||
- name: Workaround for sources.list
|
||||
run: |
|
||||
# Replace sources
|
||||
|
||||
set -euxo pipefail
|
||||
|
||||
# Peek (what repos are active now)
|
||||
apt-cache policy
|
||||
grep -RInE '^(deb|Types|URIs)' /etc/apt || true
|
||||
|
||||
# Enable nullglob so *.list/*.sources that don't exist don't break sed
|
||||
shopt -s nullglob
|
||||
|
||||
echo "Replace sources.list (legacy)"
|
||||
sudo sed -i \
|
||||
-e "s|https\?://azure\.archive\.ubuntu\.com/ubuntu/?|http://mirror.arizona.edu/ubuntu/|g" \
|
||||
/etc/apt/sources.list || true
|
||||
|
||||
echo "Replace sources.list.d/*.list (legacy)"
|
||||
for f in /etc/apt/sources.list.d/*.list; do
|
||||
sudo sed -i \
|
||||
-e "s|https\?://azure\.archive\.ubuntu\.com/ubuntu/?|http://mirror.arizona.edu/ubuntu/|g" \
|
||||
"$f"
|
||||
done
|
||||
|
||||
echo "Replace sources.list.d/*.sources (deb822)"
|
||||
for f in /etc/apt/sources.list.d/*.sources; do
|
||||
sudo sed -i \
|
||||
-e "s|https\?://azure\.archive\.ubuntu\.com/ubuntu/?|http://mirror.arizona.edu/ubuntu/|g" \
|
||||
-e "s|https\?://azure\.archive\.ubuntu\.com|http://mirror.arizona.edu|g" \
|
||||
"$f"
|
||||
done
|
||||
|
||||
echo "Fix /etc/apt/apt-mirrors.txt (used by URIs: mirror+file:...)"
|
||||
if grep -qE '^[[:space:]]*https?://azure\.archive\.ubuntu\.com/ubuntu/?' /etc/apt/apt-mirrors.txt; then
|
||||
# Replace azure with our mirror (idempotent)
|
||||
sudo sed -i 's|https\?://azure\.archive\.ubuntu\.com/ubuntu/|http://mirror.arizona.edu/ubuntu/|g' /etc/apt/apt-mirrors.txt
|
||||
fi
|
||||
|
||||
# Peek (verify changes)
|
||||
grep -RIn "azure.archive.ubuntu.com" /etc/apt || true
|
||||
grep -RInE '^(deb|Types|URIs)' /etc/apt || true
|
||||
echo "--- apt-mirrors.txt ---"
|
||||
cat /etc/apt/apt-mirrors.txt || true
|
||||
|
||||
- name: Update repository
|
||||
run: sudo apt-get update
|
||||
|
||||
- name: Install cross compilers
|
||||
run: |
|
||||
sudo apt-get install -y gcc-arm-none-eabi
|
||||
|
||||
- name: make distclean
|
||||
run: |
|
||||
make distclean
|
||||
|
||||
- name: Select config
|
||||
run: |
|
||||
cp ${{inputs.config-file}} .config && make include/target.h
|
||||
|
||||
- name: Build tools
|
||||
run: |
|
||||
make -C tools/keytools && make -C tools/bin-assemble
|
||||
|
||||
- name: Build wolfboot
|
||||
run: |
|
||||
make ${{inputs.make-args}} V=1
|
||||
|
||||
|
||||
|
|
@ -8,12 +8,11 @@ on:
|
|||
|
||||
jobs:
|
||||
|
||||
# TODO: cypsoc6.config requires cy_device_headers.h and component defines
|
||||
# cypsoc6_test:
|
||||
# uses: ./.github/workflows/test-build-psoc6.yml
|
||||
# with:
|
||||
# arch: arm
|
||||
# config-file: ./config/examples/cypsoc6.config
|
||||
cypsoc6_test:
|
||||
uses: ./.github/workflows/test-build-psoc6.yml
|
||||
with:
|
||||
arch: arm
|
||||
config-file: ./config/examples/cypsoc6.config
|
||||
|
||||
hifive1_test:
|
||||
uses: ./.github/workflows/test-build-riscv.yml
|
||||
|
|
|
|||
2
arch.mk
2
arch.mk
|
|
@ -960,8 +960,8 @@ ifeq ($(TARGET),psoc6)
|
|||
$(CYPRESS_PDL)/drivers/source/cy_crypto.o
|
||||
|
||||
CFLAGS+=\
|
||||
-I$(CYPRESS_PDL)/drivers/include \
|
||||
-I$(CYPRESS_PDL)/devices/include \
|
||||
-I$(CYPRESS_PDL)/drivers/include \
|
||||
-I$(CYPRESS_PDL)/cmsis/include \
|
||||
-I$(CYPRESS_TARGET_LIB) \
|
||||
-I$(CYPRESS_CORE_LIB)/include \
|
||||
|
|
|
|||
Loading…
Reference in New Issue