summaryrefslogtreecommitdiff
path: root/.github/workflows/ci-linux.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/ci-linux.yml')
-rw-r--r--.github/workflows/ci-linux.yml43
1 files changed, 43 insertions, 0 deletions
diff --git a/.github/workflows/ci-linux.yml b/.github/workflows/ci-linux.yml
new file mode 100644
index 00000000000..f97d23c919b
--- /dev/null
+++ b/.github/workflows/ci-linux.yml
@@ -0,0 +1,43 @@
+name: CI
+
+on:
+ push:
+ branches: [master]
+
+jobs:
+ build:
+ strategy:
+ matrix:
+ compiler: [gcc, clang]
+ env:
+ CC: ${{ matrix.compiler }}
+ LSAN_OPTIONS: verbosity=1:log_threads=1
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Install deps
+ run: sudo apt-get install check ninja-build doxygen
+
+ - name: Copy lwipcfg.h for example app
+ run: cp contrib/examples/example_app/lwipcfg.h.ci contrib/examples/example_app/lwipcfg.h
+
+ - name: Build unit tests with make
+ run: make -C contrib/ports/unix/check
+ - name: Run unit tests
+ run: make -C contrib/ports/unix/check check
+
+ - name: Run cmake
+ run: mkdir build && cd build && cmake .. -G Ninja
+ - name: Build with cmake
+ run: cd build && cmake --build .
+ - name: Build docs with cmake
+ run: cd build && cmake --build . --target lwipdocs
+
+ - name: Validate combinations of options
+ run: cd contrib/ports/unix/example_app && ./iteropts.sh
+
+ - name: Build the default example app
+ run: |
+ cp contrib/examples/example_app/lwipcfg.h.example contrib/examples/example_app/lwipcfg.h
+ make -C contrib/ports/unix/example_app TESTFLAGS="-Wno-documentation" -j 4