name: build on: [push, pull_request] jobs: linux: runs-on: ubuntu-latest strategy: fail-fast: false matrix: cc: [gcc, clang] target: [test, test++, valgrind] ssl: [MBEDTLS, OPENSSL] name: linux ${{ matrix.target }} CC=${{ matrix.cc }} SSL=${{ matrix.ssl }} env: IPV6: 0 CC: ${{ matrix.cc }} SSL: ${{ matrix.ssl }} steps: - uses: actions/checkout@v3 - name: Install packages run: sudo apt-get update ; sudo apt-get install libmbedtls-dev valgrind - name: test run: make ${{ matrix.target }} - name: unamalgamated run: make unamalgamated examples: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install packages run: sudo apt-get install libmbedtls-dev - name: examples run: make clean examples macos: runs-on: macos-latest steps: - uses: actions/checkout@v3 - name: Install packages run: HOMEBREW_NO_AUTO_UPDATE=1 brew install jq mbedtls openssl - name: make run: make test++ upload-coverage IPV6=0 ASAN_OPTIONS= - name: openssl run: make test SSL=OPENSSL IPV6=0 ASAN_OPTIONS= OPENSSL=`echo /usr/local/Cellar/openssl*/*` - name: exports run: make mg_prefix windows: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: vc98 run: make vc98 - name: vc2017 run: make vc2017 - name: mingw run: make mingw - name: mingw++ run: make mingw++ arm: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: arm run: make arm matrix_examples: runs-on: ubuntu-latest strategy: fail-fast: false matrix: example: - name: esp32 path: esp32 - name: esp8266 path: esp8266 - name: stm32-freertos-tcp path: stm32/stm32-freertos-tcp - name: stm32-nucleo-f746z path: stm32/stm32-nucleo-f746z - name: stm32-nucleo-f429z path: stm32/stm32-nucleo-f429z - name: stm32-nucleo-h743z path: stm32/stm32-nucleo-h743z - name: nxp-mimxrt1020-azurertos path: nxp/nxp-mimxrt1020-azurertos - name: nxp-frdmk66f-freertos path: nxp/nxp-frdmk66f-freertos - name: nxp-lpcxpresso54s018m-freertos path: nxp/nxp-lpcxpresso54s018m-freertos - name: nxp-mimxrt1020-freertos path: nxp/nxp-mimxrt1020-freertos - name: nxp-evkbimxrt1050-lwip-freertos path: nxp/nxp-evkbimxrt1050-lwip-freertos - name: nxp-evkmimxrt1020-lwip-freertos path: nxp/nxp-evkmimxrt1020-lwip-freertos - name: nxp-evkmimxrt1024-lwip-freertos path: nxp/nxp-evkmimxrt1024-lwip-freertos - name: nxp-evkmimxrt1060-lwip-freertos path: nxp/nxp-evkmimxrt1060-lwip-freertos - name: nxp-evkmimxrt1064-lwip-freertos path: nxp/nxp-evkmimxrt1064-lwip-freertos - name: nxp-evkmimxrt1160-cm7-lwip-freertos path: nxp/nxp-evkmimxrt1160-cm7-lwip-freertos - name: nxp-evkmimxrt1170-cm7-lwip-freertos path: nxp/nxp-evkmimxrt1170-cm7-lwip-freertos - name: nxp-frdmk64f-lwip-freertos path: nxp/nxp-frdmk64f-lwip-freertos - name: nxp-frdmk66f-lwip-freertos path: nxp/nxp-frdmk66f-lwip-freertos - name: nxp-lpcxpresso54018-lwip-freertos path: nxp/nxp-lpcxpresso54018-lwip-freertos - name: nxp-lpcxpresso54608-lwip-freertos path: nxp/nxp-lpcxpresso54608-lwip-freertos - name: nxp-lpcxpresso54618-lwip-freertos path: nxp/nxp-lpcxpresso54618-lwip-freertos - name: nxp-lpcxpresso54628-lwip-freertos path: nxp/nxp-lpcxpresso54628-lwip-freertos - name: nxp-twrk65f180m-lwip-freertos path: nxp/nxp-twrk65f180m-lwip-freertos - name: nxp-twrkv58f220m-lwip-freertos path: nxp/nxp-twrkv58f220m-lwip-freertos - name: infineon-xmc4700_4800-lwip-rtx-rtos path: infineon/infineon-xmc4700_4800-lwip-rtx-rtos - name: zephyr path: zephyr - name: ti path: ti/ti-ek-tm4c1294xl-http-server name: ${{ matrix.example.name }} steps: - uses: actions/checkout@v3 - name: ${{ matrix.example.name }} run: make -C examples/${{ matrix.example.path }} build