Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ jobs:
run: |
echo EXTRA_ZEPHYR_MODULES="$(pwd)/$MODULE_PATH" >> $GITHUB_ENV

- name: Fetch blobs
run: |
west blobs --auto-accept fetch arduinocore-zephyr

- name: Build fade
run: |
west build -p -b arduino_nano_33_ble//sense $MODULE_PATH/samples/fade
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/format_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ jobs:
loader/**/*.{c,cpp,h,hpp}
libraries/**/*.{c,cpp,h,hpp}
files_ignore: |
cores/arduino/api/**
loader/llext_exports.c
loader/blobs/4343WA1_*.c
loader/blobs/wifi_nvram_image.h
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/package_core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ jobs:
# Archive the build environment for later jobs
(cd && tar cphf - .cmake work zephyr-sdk-* | zstd > build-env.tar.zstd)
# The API is only needed for packaging, not for building, so it's separate
tar cphf - cores/arduino/api | zstd > arduino-api.tar.zstd
tar cphf - zephyr/blobs/ArduinoCore-API/api | zstd > arduino-api.tar.zstd

- name: Archive build environment
uses: actions/upload-artifact@v4
Expand Down Expand Up @@ -249,7 +249,6 @@ jobs:
- name: Package core
run: |
# Extract the API snapshot and board binaries in place
rm -f cores/arduino/api # remove broken symlink
tar --use-compress-program=unzstd -xpf arduino-api.tar.zstd
for f in binaries-*.tar.zstd ; do
tar --use-compress-program=unzstd -xpf $f
Expand Down
41 changes: 26 additions & 15 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,31 @@
# SPDX-License-Identifier: Apache-2.0

string(REPLACE "__" "_" NORMALIZED_BOARD_TARGET "${NORMALIZED_BOARD_TARGET}")

if (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/variants/${BOARD})
set(variant_dir variants/${BOARD})
elseif (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/variants/${NORMALIZED_BOARD_TARGET})
set(variant_dir variants/${NORMALIZED_BOARD_TARGET})
else()
if (CONFIG_ARDUINO_API)
message(FATAL_ERROR "Variant dir not found: variants/${BOARD}, variants/${NORMALIZED_BOARD_TARGET}")
endif()
endif()
string(REPLACE "__" "_" NORMALIZED_BOARD_TARGET "${NORMALIZED_BOARD_TARGET}")

if (CONFIG_ARDUINO_API AND NOT CONFIG_LLEXT)
add_subdirectory(cores)
add_subdirectory(libraries)
zephyr_include_directories(${variant_dir})
endif()
if (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/variants/${BOARD})
set(variant_dir variants/${BOARD})
elseif (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/variants/${NORMALIZED_BOARD_TARGET})
set(variant_dir variants/${NORMALIZED_BOARD_TARGET})
else()
message(FATAL_ERROR "Variant dir not found: variants/${BOARD}, variants/${NORMALIZED_BOARD_TARGET}")
endif()

if (NOT CONFIG_LLEXT)
add_subdirectory(cores)
add_subdirectory(libraries)
zephyr_include_directories(${variant_dir})
endif()

zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/)
if(NOT DEFINED ARDUINO_BUILD_PATH)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/CanMsg.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/CanMsgRingbuffer.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/Common.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/IPAddress.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/Print.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/Stream.cpp)
zephyr_sources(${CMAKE_CURRENT_SOURCE_DIR}/zephyr/blobs/ArduinoCore-API/api/String.cpp)
endif()

endif()
14 changes: 1 addition & 13 deletions cores/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,3 @@
# SPDX-License-Identifier: Apache-2.0

add_subdirectory(arduino)

zephyr_include_directories(../../ArduinoCore-API/)

if(NOT DEFINED ARDUINO_BUILD_PATH)
zephyr_sources(../../ArduinoCore-API/api/CanMsg.cpp)
zephyr_sources(../../ArduinoCore-API/api/CanMsgRingbuffer.cpp)
zephyr_sources(../../ArduinoCore-API/api/Common.cpp)
zephyr_sources(../../ArduinoCore-API/api/IPAddress.cpp)
zephyr_sources(../../ArduinoCore-API/api/Print.cpp)
zephyr_sources(../../ArduinoCore-API/api/Stream.cpp)
zephyr_sources(../../ArduinoCore-API/api/String.cpp)
endif()
add_subdirectory(arduino)
1 change: 0 additions & 1 deletion cores/arduino/api

This file was deleted.

1 change: 1 addition & 0 deletions extra/artifacts/_common.inc
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,4 @@ doc/
cores/
libraries/
variants/_ldscripts/
zephyr/blobs/ArduinoCore-API/api/
4 changes: 2 additions & 2 deletions extra/bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@ log_msg "group" "Installing Zephyr SDK 0.16.8"
west sdk install --version 0.16.8 -t arm-zephyr-eabi
log_msg "endgroup"

log_msg "group" "Fetching blobs for: $NEEDED_HALS"
west blobs fetch $NEEDED_HALS
log_msg "group" "Fetching blobs for: $NEEDED_HALS arduinocore-zephyr"
west blobs --auto-accept fetch $NEEDED_HALS arduinocore-zephyr
log_msg "endgroup"
1 change: 1 addition & 0 deletions extra/package_core.sh
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ done

mkdir -p $(dirname ${OUTPUT_FILE})
tar -cjhf ${OUTPUT_FILE} -X ${TEMP_EXC} -T ${TEMP_INC} \
--transform "s,zephyr/blobs/ArduinoCore-API,cores/arduino," \
--transform "s,${TEMP_BOARDS},boards.txt," \
--transform "s,${TEMP_PLATFORM},platform.txt," \
--transform "s,^,ArduinoCore-zephyr/,"
Expand Down
29 changes: 0 additions & 29 deletions install.sh

This file was deleted.

Loading
Loading