Add a travis job to build for 32-bit on 64-bit systems to catch additional build errors, for example, incorrect use of printf specifiers with uint64_t types.
Signed-off-by: Bruce Richardson <bruce.richard...@intel.com> --- .ci/linux-build.sh | 5 +++++ .travis.yml | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh index 6075c440c..c570ba24e 100755 --- a/.ci/linux-build.sh +++ b/.ci/linux-build.sh @@ -23,6 +23,11 @@ if [ "$BUILD_DOCS" = "1" ]; then OPTS="$OPTS -Denable_docs=true" fi +if [ "$BUILD_32BIT" = "1" ]; then + OPTS="$OPTS -Dc_args=-m32 -Dc_link_args=-m32" + export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig" +fi + OPTS="$OPTS --default-library=$DEF_LIB" meson build --werror -Dexamples=all $OPTS ninja -C build diff --git a/.travis.yml b/.travis.yml index 3d6ef2959..7b9fc6898 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,6 +23,10 @@ extra_packages: &extra_packages - *required_packages - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4] +build_32b_packages: &build_32b_packages + - *required_packages + - [gcc-multilib] + doc_packages: &doc_packages - [doxygen, graphviz, python3-sphinx] @@ -37,6 +41,12 @@ env: matrix: include: + - env: DEF_LIB="static" BUILD_32BIT=1 + compiler: gcc + addons: + apt: + packages: + - *build_32b_packages - env: DEF_LIB="static" OPTS="-Denable_kmods=false" AARCH64=1 compiler: gcc addons: -- 2.21.0