diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh index 8227a574870..acf868fdaad 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 [ "$STD" ]; then diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index e771f287760..a9d3a8559f2 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 }} @@ -160,6 +161,9 @@ jobs: dpdk_shared: dpdk-shared opts: --enable-shared + - compiler: gcc + dpdk_experimental: dpdk-experimental + - compiler: gcc m32: m32 opts: --disable-ssl @@ -179,7 +183,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