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.richardson@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