Skip to content

Update struct.c

Update struct.c #517

Workflow file for this run

name: CI
on:
push:
branches: [ release ]
pull_request:
branches: [ dev, release ]
jobs:
build:
strategy:
fail-fast: false
matrix:
lua_ver: [51, 53]
numbers: ['float']
include:
- lua_ver: 51
numbers: 'integral'
- lua_ver: 53
numbers: '64bit'
runs-on: ubuntu-22.04
env:
LUA: ${{ matrix.lua_ver }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: pip install pyserial
shell: bash
- run: sudo apt install srecord
shell: bash
- name: Build firmware
if: matrix.numbers == 'float'
run: make
shell: bash
- name: Build integral firmware
if: ${{ matrix.numbers == 'integral' }}
run: |
make EXTRA_CCFLAGS="-DLUA_NUMBER_INTEGRAL"
mv luac.cross.int luac.cross
shell: bash
- name: Build 64bit firmware
if: ${{ matrix.numbers == '64bit' }}
run: |
make EXTRA_CCFLAGS="-DLUA_NUMBER_64BITS"
shell: bash
- name: Upload luac.cross
if: ${{ success() }}
uses: actions/upload-artifact@v4
with:
name: luac.cross_${{ matrix.lua_ver }}_${{ matrix.numbers }}
path: luac.cross
# The files in the 'msvc' folder would need to be updated to be compatible with VS 2022.
# Sample job (that failed): https://github.com/nodemcu/nodemcu-firmware/actions/runs/17306868602/job/49131917376#step:3:153
# => disable the Windows jobs for now
# build_luac_cross_win:
# runs-on: windows-2022
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: true
# - name: Build luac.cross.exe
# run: |
# set
# "C:\msys64\usr\bin\xargs.exe"
# cd msvc
# "%programfiles%\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\MSBuild.exe" /p:Configuration=Release /p:Platform=x64
# mv luac-cross/x64/Release/luac.cross.exe ..
# shell: cmd
# - name: Upload luac.cross
# if: ${{ success() }}
# uses: actions/upload-artifact@v4
# with:
# name: luac.cross_51_float_win
# path: luac.cross.exe
compile_lua:
strategy:
fail-fast: false
matrix:
lua_ver: [51, 53]
numbers: ['float']
filter: [ 'cat' ]
include:
- lua_ver: 51
numbers: 'integral'
filter: 'grep -v "lua_modules/lm92/lm92.lua\|lua_modules/hdc1000/HDC1000.lua\|lua_examples/u8g2/graphics_test.lua"'
- lua_ver: 53
numbers: '64bit'
filter: 'cat'
needs: build
runs-on: ubuntu-22.04
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: false
- name: Download luac.cross
uses: actions/download-artifact@v4
with:
name: luac.cross_${{ matrix.lua_ver }}_${{ matrix.numbers }}
path: ./
- name: Fix file permission
run: chmod +x luac.cross
- name: compile Lua
run: |
find lua_modules lua_examples tests/NTest* -iname "*.lua" | ${{ matrix.filter }} | xargs --delimiter="\n" echo
find lua_modules lua_examples tests/NTest* -iname "*.lua" | ${{ matrix.filter }} | xargs --delimiter="\n" ./luac.cross -p
shell: bash
# compile_lua_win:
# strategy:
# fail-fast: false
# matrix:
# lua_ver: [51]
# numbers: ['float']
# filter: [ 'cat' ]
# needs: build_luac_cross_win
# runs-on: windows-latest
# steps:
# - name: Checkout repo
# uses: actions/checkout@v4
# with:
# submodules: false
# - name: Download luac.cross
# uses: actions/download-artifact@v4
# with:
# name: luac.cross_${{ matrix.lua_ver }}_${{ matrix.numbers }}_win
# path: ./
# - name: compile Lua
# run: |
# PATH="/C/Program\ Files/Git/usr/bin:${PATH}"
# find lua_modules lua_examples tests/NTest* -iname "*.lua" | ${{ matrix.filter }} | xargs --delimiter="\n" echo
# find lua_modules lua_examples tests/NTest* -iname "*.lua" | ${{ matrix.filter }} | xargs --delimiter="\n" ./luac.cross -p
# shell: bash
NTest:
strategy:
fail-fast: false
matrix:
lua_ver: [51, 53]
numbers: ['float']
include:
- lua_ver: 51
numbers: 'integral'
- lua_ver: 53
numbers: '64bit'
needs: build
runs-on: ubuntu-22.04
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: false
- name: Download luac.cross
uses: actions/download-artifact@v4
with:
name: luac.cross_${{ matrix.lua_ver }}_${{ matrix.numbers }}
path: ./
- name: Fix file permission
run: chmod +x luac.cross
- name: NTest selfcheck
run: |
cd tests/NTest
../../luac.cross -e ../NTest/NTest_NTest.lua | tee log
grep "failed. 0" log
shell: bash
- name: NTest hosttests
run: |
cd tests
cp NTest/NTest.lua .
../luac.cross -e NTest_lua.lua | tee log
(if grep " ==> " log ; then exit 1 ; fi)
shell: bash
# NTest_win:
# strategy:
# fail-fast: false
# matrix:
# lua_ver: [51]
# numbers: ['float']
# needs: build_luac_cross_win
# runs-on: windows-latest
# steps:
# - name: Checkout repo
# uses: actions/checkout@v4
# with:
# submodules: false
# - name: Download luac.cross
# uses: actions/download-artifact@v4
# with:
# name: luac.cross_${{ matrix.lua_ver }}_${{ matrix.numbers }}_win
# path: ./
# - name: NTest selfcheck
# run: |
# cd tests/NTest
# ../../luac.cross.exe -e ../NTest/NTest_NTest.lua | tee log
# grep "failed. 0" log
# shell: bash
# - name: NTest hosttests
# run: |
# cd tests
# cp NTest/NTest.lua .
# ../luac.cross.exe -e NTest_lua.lua | tee log
# (if grep " ==> " log ; then exit 1 ; fi)
# shell: bash
luacheck:
strategy:
fail-fast: false
matrix:
include:
- os: 'linux'
vm: 'ubuntu-22.04'
- os: 'windows'
vm: 'windows-latest'
runs-on: ${{ matrix.vm }}
steps:
- uses: actions/checkout@v4
with:
submodules: false
- run: sudo apt install luarocks
if : matrix.os == 'linux'
shell: bash
- name: get luacheck.exe # is also done in the travis script but in this action it does not run in bash
if : matrix.os == 'windows'
run: |
mkdir cache
C:msys64\usr\bin\wget.exe --tries=5 --timeout=10 --waitretry=10 --read-timeout=10 --retry-connrefused -O cache/luacheck.exe https://github.com/mpeterv/luacheck/releases/download/0.23.0/luacheck.exe
shell: cmd
- name: luacheck
run: |
PATH="/C/Program\ Files/Git/usr/bin:${PATH}"
./tools/travis/run-luacheck-${{ matrix.os }}.sh
shell: bash
doc_check:
strategy:
fail-fast: false
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
submodules: false
- name: all_modules_linked
run: ./tools/check_docs_module_linkage.sh
shell: bash