Skip to content

Commit

Permalink
Merge pull request #12 from uw-advanced-robotics/update-modm-develop
Browse files Browse the repository at this point in the history
Update to upstream modm develop
  • Loading branch information
nedonse authored Mar 18, 2024
2 parents d5aafbd + 9874d0a commit 9a36b4b
Show file tree
Hide file tree
Showing 392 changed files with 17,763 additions and 2,264 deletions.
144 changes: 85 additions & 59 deletions .github/workflows/compile-all.yml

Large diffs are not rendered by default.

14 changes: 9 additions & 5 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-base:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -27,7 +27,7 @@ jobs:
mkdocs --version
pip3 show mkdocs-material
- name: Clone modm-ext/modm.io repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: modm-ext/modm.io
ssh-key: ${{secrets.MODM_EXT_MODM_IO_DEPLOY_KEY}}
Expand All @@ -41,8 +41,8 @@ jobs:
- name: Push New Docs to Github
run: |
cd docs/modm.io
git config user.email "[email protected]"
git config user.name "CircleCI Deployment Bot"
git config user.email "[email protected]"
git config user.name "modm bot"
git add -A
git diff-index --quiet HEAD || git commit -m "Update"
git push origin master
Expand All @@ -54,7 +54,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-base:2022-09-27
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -68,6 +68,10 @@ jobs:
export TERM=xterm-256color
export COLUMNS=120
python3 tools/scripts/docs_modm_io_generator.py -c -j4 -d
- name: Size of documentation archive
if: always()
run: |
ls -lh modm-api-docs.tar.gz
- name: Upload api documentation to docs.modm.io
if: always()
env:
Expand Down
42 changes: 21 additions & 21 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:

steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand Down Expand Up @@ -92,7 +92,7 @@ jobs:
- name: Examples SAMD Devices
if: always()
run: |
(cd examples && ../tools/scripts/examples_compile.py samd samd21_xplained_pro)
(cd examples && ../tools/scripts/examples_compile.py feather_m4 samd samd21_xplained_pro)
- name: Examples SAMG Devices
if: always()
run: |
Expand All @@ -104,7 +104,7 @@ jobs:
- name: Examples SAME70 Devices
if: always()
run: |
(cd examples && ../tools/scripts/examples_compile.py same70_xplained)
(cd examples && ../tools/scripts/examples_compile.py same70_xplained)
- name: Examples SAMV Devices
if: always()
run: |
Expand All @@ -125,7 +125,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand Down Expand Up @@ -153,7 +153,7 @@ jobs:
- name: Examples STM32G0 Series
if: always()
run: |
(cd examples && ../tools/scripts/examples_compile.py nucleo_g071rb)
(cd examples && ../tools/scripts/examples_compile.py nucleo_g070rb nucleo_g071rb)
- name: Examples STM32L0 Series
if: always()
run: |
Expand Down Expand Up @@ -189,7 +189,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -201,15 +201,15 @@ jobs:
- name: Examples STM32F4 Only Discovery Board
if: always()
run: |
(cd examples && ../tools/scripts/examples_compile.py stm32f4_discovery stm32f429_discovery stm32f469_discovery)
(cd examples && ../tools/scripts/examples_compile.py stm32f4_discovery stm32f429_discovery stm32f469_discovery stm32f401_discovery)
stm32f4-examples-2:
runs-on: ubuntu-22.04
container:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -232,7 +232,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-avr:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand Down Expand Up @@ -267,7 +267,7 @@ jobs:
run: |
(cd test/all && python3 run_all.py at --quick)
- name: Upload log artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: hal-compile-quick-avr
path: test/all/log
Expand All @@ -278,7 +278,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -292,7 +292,7 @@ jobs:
run: |
(cd test/all && python3 run_all.py stm32 sam rp --quick --split 4 --part 0)
- name: Upload log artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: hal-compile-quick-1
path: test/all/log
Expand All @@ -303,7 +303,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -317,7 +317,7 @@ jobs:
run: |
(cd test/all && python3 run_all.py stm32 sam rp --quick --split 4 --part 1)
- name: Upload log artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: hal-compile-quick-2
path: test/all/log
Expand All @@ -328,7 +328,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -342,7 +342,7 @@ jobs:
run: |
(cd test/all && python3 run_all.py stm32 sam rp --quick --split 4 --part 2)
- name: Upload log artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: hal-compile-quick-3
path: test/all/log
Expand All @@ -353,7 +353,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-cortex-m:2023-03-12
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -367,7 +367,7 @@ jobs:
run: |
(cd test/all && python3 run_all.py stm32 sam rp --quick --split 4 --part 3)
- name: Upload log artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: hal-compile-quick-4
path: test/all/log
Expand All @@ -380,7 +380,7 @@ jobs:
image: ghcr.io/modm-ext/modm-build-base:2022-09-27
steps:
- name: Check out repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Fix Git permission/ownership problem
Expand All @@ -401,7 +401,7 @@ jobs:
export COLUMNS=120
python3 tools/scripts/docs_modm_io_generator.py -t -c -j4 -d
- name: Upload Doxypress Documentation
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: build-docs-test
path: modm-api-docs.tar.gz
Expand All @@ -416,7 +416,7 @@ jobs:
ls -l docs/src/reference/module
(cd docs && mkdocs build)
- name: Upload Homepage Documentation
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: build-homepage-test
path: docs/modm.io
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ jobs:
runs-on: macos-13

steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '15.2'

- name: Setup environment - Brew tap
run: |
Expand All @@ -22,7 +25,7 @@ jobs:
brew link --force avr-gcc@12
# brew upgrade boost gcc git || true
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'

Expand Down Expand Up @@ -53,7 +56,7 @@ jobs:
- name: Check out repository
if: always()
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'recursive'

Expand Down
126 changes: 126 additions & 0 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
name: Run tests on Windows

on: [pull_request]

jobs:
windows_testing:
runs-on: windows-2022
env:
PYTHONIOENCODING: "utf-8"

steps:

# Disabling snake-oil for performance reasons
- name: Disable Windows Defender
run: Set-MpPreference -DisableRealtimeMonitoring $true

# This doesn't work due to files getting overwritten from inside the zip
# [System.IO.Compression.ZipFile]::ExtractToDirectory("gcc-arm-none-eabi-win64.zip", "C:\")
# And this manual expansion code
# function Unzip($zipfile, $outdir)
# {
# Add-Type -AssemblyName System.IO.Compression.FileSystem
# $archive = [System.IO.Compression.ZipFile]::OpenRead($zipfile)
# foreach ($entry in $archive.Entries)
# {
# $entryTargetFilePath = [System.IO.Path]::Combine($outdir, $entry.FullName)
# $entryDir = [System.IO.Path]::GetDirectoryName($entryTargetFilePath)
# if(!(Test-Path $entryDir )){
# New-Item -ItemType Directory -Path $entryDir | Out-Null
# }
# if (!$entryTargetFilePath.EndsWith("\") -And !$entryTargetFilePath.EndsWith("/")) {
# [System.IO.Compression.ZipFileExtensions]::ExtractToFile($entry, $entryTargetFilePath, $true);
# }
# }
# }
# Unzip -zipfile "gcc-arm-none-eabi-win64.zip" -outdir "C:\"
# is not faster than
# Expand-Archive -Path gcc-arm-none-eabi-win64.zip -DestinationPath C:\ -Force
- name: Download and Unzip GCCs
shell: powershell
run: |
$ProgressPreference = 'SilentlyContinue'
Start-Job {
Set-Location $using:PWD
Add-Type -Assembly "System.IO.Compression.Filesystem"
Invoke-WebRequest -OutFile gcc-win64.zip https://github.com/brechtsanders/winlibs_mingw/releases/download/12.2.0-15.0.6-10.0.0-msvcrt-r3/winlibs-x86_64-posix-seh-gcc-12.2.0-mingw-w64msvcrt-10.0.0-r3.zip
[System.IO.Compression.ZipFile]::ExtractToDirectory("gcc-win64.zip", "C:\")
}
Start-Job {
Set-Location $using:PWD
Invoke-WebRequest -OutFile gcc-arm-none-eabi-win64.zip https://developer.arm.com/-/media/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-mingw-w64-i686-arm-none-eabi.zip
Expand-Archive -Path gcc-arm-none-eabi-win64.zip -DestinationPath C:\ -Force
}
Start-Job {
Set-Location $using:PWD
Add-Type -Assembly "System.IO.Compression.Filesystem"
Invoke-WebRequest -OutFile gcc-avr-win64.zip https://github.com/ZakKemble/avr-gcc-build/releases/download/v12.1.0-1/avr-gcc-12.1.0-x64-windows.zip
[System.IO.Compression.ZipFile]::ExtractToDirectory("gcc-avr-win64.zip", "C:\")
}
Get-Job | Wait-Job
- name: Install GCCs
if: always()
shell: powershell
run: |
dir C:\
dir C:\mingw64
dir C:\arm-gnu-toolchain-12.2.rel1-mingw-w64-i686-arm-none-eabi
dir C:\avr-gcc-12.1.0-x64-windows
echo "C:\mingw64\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "C:\arm-gnu-toolchain-12.2.rel1-mingw-w64-i686-arm-none-eabi\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "C:\avr-gcc-12.1.0-x64-windows\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
rm gcc-arm-none-eabi-win64.zip
- name: Install Python
if: always()
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install Python packages
if: always()
run: |
pip install --upgrade --upgrade-strategy=eager modm scons future
- name: Show Version Information
if: always()
run: |
gcc --version
g++ --version
make --version
arm-none-eabi-g++ --version
avr-g++ --version
lbuild --version
python -c "import os; print(os.cpu_count())"
- name: Check out repository
if: always()
uses: actions/checkout@v4
with:
submodules: 'recursive'

- name: Hosted Examples
if: always()
shell: bash
run: |
(cd examples && python ../tools/scripts/examples_compile.py linux/assert linux/block_device/ram linux/build_info linux/git linux/logger linux/printf linux/etl linux/fiber)
- name: Hosted Unittests
if: always()
shell: bash
run: |
(cd test && make run-hosted-windows)
- name: Compile STM32 Examples
if: always()
shell: bash
run: |
(cd examples && python ../tools/scripts/examples_compile.py nucleo_f031k6 nucleo_f103rb nucleo_f303re nucleo_f411re nucleo_f746zg)
(cd examples && python ../tools/scripts/examples_compile.py nucleo_g071rb nucleo_l031k6 nucleo_l152re nucleo_l476rg nucleo_g474re)
- name: Compile AVR Examples
if: always()
shell: bash
run: |
(cd examples && ../tools/scripts/examples_compile.py avr arduino_nano arduino_uno srxe)
Loading

0 comments on commit 9a36b4b

Please sign in to comment.