From 561e15fabd43613cb9c8a2d996c1dae6c16b4a0d Mon Sep 17 00:00:00 2001 From: David Marchand Date: Fri, 2 Sep 2022 10:36:58 +0200 Subject: ci: Check compilation with DPDK experimental API. Add jobs to check compilation with DPDK experimental API enabled. This will help us catch issues for the day we need one of them. Note: this should not be merged to master, intended for dpdk-latest branch only. Signed-off-by: David Marchand Signed-off-by: Ian Stokes Signed-off-by: Ilya Maximets --- .ci/linux-build.sh | 8 +++++++- .github/workflows/build-and-test.yml | 6 +++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh index 99850a943..70826e285 100755 --- a/.ci/linux-build.sh +++ b/.ci/linux-build.sh @@ -7,6 +7,9 @@ CFLAGS_FOR_OVS="-g -O2" SPARSE_FLAGS="" EXTRA_OPTS="--enable-Werror" +[ -z "$DPDK_EXPERIMENTAL" ] || DPDK=1 +[ -z "$DPDK_SHARED" ] || DPDK=1 + function install_dpdk() { local VERSION_FILE="dpdk-dir/cached-version" @@ -78,8 +81,11 @@ assert ovs.json.from_string('{\"a\": 42}') == {'a': 42}" exit 0 fi -if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then +if [ "$DPDK" ]; then install_dpdk + if [ -n "$DPDK_EXPERIMENTAL" ]; then + CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -DALLOW_EXPERIMENTAL_API" + fi fi if [ "$CC" = "clang" ]; then diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 5abbbdbc6..4e9485e6b 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -82,6 +82,7 @@ jobs: CC: ${{ matrix.compiler }} DPDK: ${{ matrix.dpdk }} DPDK_SHARED: ${{ matrix.dpdk_shared }} + DPDK_EXPERIMENTAL: ${{ matrix.dpdk_experimental }} LIBS: ${{ matrix.libs }} M32: ${{ matrix.m32 }} OPTS: ${{ matrix.opts }} @@ -154,6 +155,9 @@ jobs: dpdk_shared: dpdk-shared opts: --enable-shared + - compiler: gcc + dpdk_experimental: dpdk-experimental + - compiler: gcc m32: m32 opts: --disable-ssl @@ -173,7 +177,7 @@ jobs: python-version: '3.9' - name: cache - if: matrix.dpdk != '' || matrix.dpdk_shared != '' + if: matrix.dpdk != '' || matrix.dpdk_shared != '' || matrix.dpdk_experimental != '' uses: actions/cache@v3 with: path: dpdk-dir -- cgit v1.2.1