diff --git a/.github/workflows/ci-pipeline-arm64.yml b/.github/workflows/ci-pipeline-arm64.yml index f152e93059..5cff6439ba 100644 --- a/.github/workflows/ci-pipeline-arm64.yml +++ b/.github/workflows/ci-pipeline-arm64.yml @@ -11,28 +11,54 @@ env: OS: ubuntu_20.04 jobs: - Build: + Build_gcc: if: ${{ github.repository == 'OpenDataPlane/odp' }} runs-on: [self-hosted, ARM64] strategy: fail-fast: false matrix: - cc: [gcc, clang] - conf: ['', 'CFLAGS=-O3', 'CFLAGS=-O1', 'CFLAGS=-O0 --enable-debug=full', 'CFLAGS=-Os', 'CFLAGS=-pedantic', - '--enable-lto', '--enable-lto --enable-abi-compat', '--enable-pcapng-support'] - exclude: - - cc: clang - conf: '--enable-lto' - - cc: clang - conf: '--enable-lto --enable-abi-compat' + conf: ['', + 'CFLAGS=-O3', + 'CFLAGS=-O1', + 'CFLAGS=-O0 --enable-debug=full', + 'CFLAGS=-Os', + 'CFLAGS=-pedantic', + '--enable-lto', + '--enable-lto --enable-abi-compat', + '--enable-pcapng-support'] steps: - uses: OpenDataPlane/action-clean-up@main - uses: actions/checkout@v3 - - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh - if: ${{ failure() }} uses: ./.github/actions/build-failure-log + Build_clang: + if: ${{ github.repository == 'OpenDataPlane/odp' }} + runs-on: [self-hosted, ARM64] + strategy: + fail-fast: false + matrix: + conf: ['', + 'CFLAGS=-O3', + 'CFLAGS=-O1', + 'CFLAGS=-O0 --enable-debug=full', + 'CFLAGS=-Os', + 'CFLAGS=-pedantic', + '--enable-pcapng-support', + '--without-openssl --without-pcap', + '--with-crypto=armv8crypto', + '--with-crypto=ipsecmb', + '--enable-wfe-locks'] + steps: + - uses: OpenDataPlane/action-clean-up@main + - uses: actions/checkout@v3 + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh + - if: ${{ failure() }} + uses: ./.github/actions/build-failure-log + Build_static_u22: if: ${{ github.repository == 'OpenDataPlane/odp' }} runs-on: [self-hosted, ARM64] @@ -130,28 +156,52 @@ jobs: - if: ${{ failure() }} uses: ./.github/actions/run-failure-log - Run: + Run_gcc: if: ${{ github.repository == 'OpenDataPlane/odp' }} runs-on: [self-hosted, ARM64] strategy: fail-fast: false matrix: - cc: [gcc, clang] - conf: ['', '--enable-abi-compat', '--enable-deprecated --enable-helper-deprecated --enable-debug=full', + conf: ['', + '--enable-abi-compat', + '--enable-deprecated --enable-helper-deprecated --enable-debug=full', '--enable-dpdk-zero-copy --disable-static-applications', '--disable-host-optimization --enable-event-validation=warn', '--disable-host-optimization --enable-abi-compat', - '--without-openssl --without-pcap', '--with-crypto=armv8crypto', '--with-crypto=ipsecmb'] + '--without-openssl --without-pcap', + '--with-crypto=armv8crypto', + '--with-crypto=ipsecmb', + '--enable-wfe-locks'] steps: - uses: OpenDataPlane/action-clean-up@main - uses: actions/checkout@v3 - - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" -e ARCH="${ARCH}" - -e CXX=g++-10 -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc -e ARCH="${ARCH}" + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh - if: ${{ failure() }} uses: ./.github/actions/run-failure-log - if: ${{ success() }} uses: ./.github/actions/dump-log + Run_clang: + if: ${{ github.repository == 'OpenDataPlane/odp' }} + runs-on: [self-hosted, ARM64] + strategy: + fail-fast: false + matrix: + conf: ['', + '--enable-abi-compat', + '--enable-deprecated --enable-helper-deprecated --enable-debug=full', + '--enable-dpdk-zero-copy --disable-static-applications', + '--disable-host-optimization --enable-event-validation=warn', + '--disable-host-optimization --enable-abi-compat'] + steps: + - uses: OpenDataPlane/action-clean-up@main + - uses: actions/checkout@v3 + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang -e ARCH="${ARCH}" + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh + - if: ${{ failure() }} + uses: ./.github/actions/run-failure-log + Run_CFLAGS: if: ${{ github.repository == 'OpenDataPlane/odp' }} runs-on: [self-hosted, ARM64] diff --git a/.github/workflows/ci-pipeline.yml b/.github/workflows/ci-pipeline.yml index 2cef615ebc..60d126d3fb 100644 --- a/.github/workflows/ci-pipeline.yml +++ b/.github/workflows/ci-pipeline.yml @@ -57,26 +57,47 @@ jobs: make doxygen-doc 2>&1 | tee ./doxygen.log ! fgrep -rq warning ./doxygen.log - Build: + Build_gcc: runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: - cc: [gcc, clang] - conf: ['', 'CFLAGS=-O3', 'CFLAGS=-O1', 'CFLAGS=-O0 --enable-debug=full', 'CFLAGS=-Os', 'CFLAGS=-pedantic', - '--enable-lto', '--enable-lto --enable-abi-compat', '--enable-pcapng-support'] - exclude: - - cc: clang - conf: '--enable-lto' - - cc: clang - conf: '--enable-lto --enable-abi-compat' + conf: ['', + 'CFLAGS=-O3', + 'CFLAGS=-O1', + 'CFLAGS=-O0 --enable-debug=full', + 'CFLAGS=-Os', + 'CFLAGS=-pedantic', + '--enable-lto', + '--enable-lto --enable-abi-compat', + '--enable-pcapng-support'] steps: - uses: actions/checkout@v3 - - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH} /odp/scripts/ci/build_${ARCH}.sh - if: ${{ failure() }} uses: ./.github/actions/build-failure-log + Build_clang: + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + conf: ['', + 'CFLAGS=-O3', + 'CFLAGS=-O1', + 'CFLAGS=-O0 --enable-debug=full', + 'CFLAGS=-Os', + 'CFLAGS=-pedantic', + '--enable-pcapng-support', + '--without-openssl --without-pcap'] + steps: + - uses: actions/checkout@v3 + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH} /odp/scripts/ci/build_${ARCH}.sh + - if: ${{ failure() }} + uses: ./.github/actions/build-failure-log + Build_static_u20: runs-on: ubuntu-20.04 env: @@ -120,7 +141,7 @@ jobs: matrix: cc: [gcc, clang] conf: ['', '--enable-abi-compat', 'CFLAGS=-march=armv8.2-a', 'CFLAGS=-march=armv8-a+lse', - '--with-crypto=armv8crypto'] + '--with-crypto=armv8crypto', '--enable-wfe-locks'] steps: - uses: actions/checkout@v3 - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" @@ -279,26 +300,45 @@ jobs: - if: ${{ failure() }} uses: ./.github/actions/run-failure-log - Run: + Run_gcc: runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: - cc: [gcc, clang] - conf: ['', '--enable-abi-compat', '--enable-deprecated --enable-helper-deprecated --enable-debug=full', + conf: ['', + '--enable-abi-compat', + '--enable-deprecated --enable-helper-deprecated --enable-debug=full', '--enable-dpdk-zero-copy --disable-static-applications', '--disable-host-optimization --enable-event-validation=warn', '--disable-host-optimization --enable-abi-compat', '--without-openssl --without-pcap'] steps: - uses: actions/checkout@v3 - - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" -e ARCH="${ARCH}" - -e CXX=g++-10 -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH} /odp/scripts/ci/check.sh + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc -e ARCH="${ARCH}" + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH} /odp/scripts/ci/check.sh - if: ${{ failure() }} uses: ./.github/actions/run-failure-log - if: ${{ success() }} uses: ./.github/actions/dump-log + Run_clang: + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + conf: ['', + '--enable-abi-compat', + '--enable-deprecated --enable-helper-deprecated --enable-debug=full', + '--enable-dpdk-zero-copy --disable-static-applications', + '--disable-host-optimization --enable-event-validation=warn', + '--disable-host-optimization --enable-abi-compat'] + steps: + - uses: actions/checkout@v3 + - run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang -e ARCH="${ARCH}" + -e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH} /odp/scripts/ci/check.sh + - if: ${{ failure() }} + uses: ./.github/actions/run-failure-log + Run_OS: runs-on: ubuntu-20.04 strategy: