Add 32 bit build

This commit is contained in:
mayeut 2015-09-12 15:48:23 +02:00
parent b7069ce2b2
commit 52c36b4955
4 changed files with 41 additions and 10 deletions

View File

@ -5,11 +5,21 @@ os:
compiler:
- gcc
- clang
env:
- OPJ_CI_ARCH=x86_64
- OPJ_CI_ARCH=i386
matrix:
exclude:
- os: osx
compiler: gcc
- compiler: clang
env: OPJ_CI_ARCH=x86
addons:
apt:
packages:
- gcc-multilib
install:
- ./tools/travis-ci/install.sh

View File

@ -28,6 +28,18 @@ else()
set( CTEST_BUILD_NAME "$ENV{OPJ_BUILDNAME}")
endif()
if (NOT "$ENV{OPJ_CI_ARCH}" STREQUAL "")
if (APPLE)
set(CCFLAGS_ARCH "-arch $ENV{OPJ_CI_ARCH}")
else()
if ("$ENV{OPJ_CI_ARCH}" MATCHES "^i[3-6]86$")
set(CCFLAGS_ARCH "-m32 -march=$ENV{OPJ_CI_ARCH}")
elseif ("$ENV{OPJ_CI_ARCH}" STREQUAL "x86_64")
set(CCFLAGS_ARCH "-m64")
endif()
endif()
endif()
# To execute part of the encoding test suite, kakadu binaries are needed to decode encoded image and compare
# it to the baseline. Kakadu binaries are freely available for non-commercial purposes
# at http://www.kakadusoftware.com.
@ -49,7 +61,7 @@ set( CACHE_CONTENTS "
CMAKE_BUILD_TYPE:STRING=${CTEST_BUILD_CONFIGURATION}
# Warning level
CMAKE_C_FLAGS:STRING= -Wall -Wextra -Wconversion -Wno-unused-parameter -Wdeclaration-after-statement
CMAKE_C_FLAGS:STRING= ${CCFLAGS_ARCH} -Wall -Wextra -Wconversion -Wno-unused-parameter -Wdeclaration-after-statement
# Use to activate the test suite
BUILD_TESTING:BOOL=TRUE

View File

@ -17,14 +17,11 @@ function exit_handler ()
exit "${exit_code}"
}
trap exit_handler EXIT
trap exit ERR
# travis-ci doesn't dump cmake version in system info, let's print it
cmake --version
trap exit ERR
# We don't need anything for coverity scan builds
if [ "${COVERITY_SCAN_BRANCH:-}" != 1 ]; then
if [ "${COVERITY_SCAN_BRANCH:-}" != "1" ] && [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
OPJ_SOURCE_DIR=$(cd $(dirname $0)/../.. && pwd)

View File

@ -55,10 +55,19 @@ elif [ "${TRAVIS_OS_NAME}" == "linux" ]; then
elif [ "${CC}" == "clang" ]; then
OPJ_CC_VERSION=clang$(${CC} --version | grep version | sed 's/.*version \([^0-9.]*[0-9.]*\).*/\1/')
else
echo "Compiler not supported: ${CC}"
echo "Compiler not supported: ${CC}"; exit 1
fi
else
echo "OS not supported: ${TRAVIS_OS_NAME}"
echo "OS not supported: ${TRAVIS_OS_NAME}"; exit 1
fi
if [ "${OPJ_CI_ARCH:-}" == "" ]; then
echo "Guessing build architecture"
MACHINE_ARCH=$(uname -m)
if [ "${MACHINE_ARCH}" == "x86_64" ]; then
export OPJ_CI_ARCH=x86_64
fi
echo "${OPJ_CI_ARCH}"
fi
if [ "${TRAVIS_BRANCH:-}" == "" ]; then
@ -66,13 +75,13 @@ if [ "${TRAVIS_BRANCH:-}" == "" ]; then
TRAVIS_BRANCH=$(git -C ${OPJ_SOURCE_DIR} branch | grep '*' | tr -d '*[[:blank:]]') #default to master
fi
OPJ_BUILDNAME=${OPJ_OS_NAME}-${OPJ_CC_VERSION}-x86_64-${TRAVIS_BRANCH}
OPJ_BUILDNAME=${OPJ_OS_NAME}-${OPJ_CC_VERSION}-${OPJ_CI_ARCH}-${TRAVIS_BRANCH}
if [ "${TRAVIS_PULL_REQUEST:-}" != "false" ] && [ "${TRAVIS_PULL_REQUEST:-}" != "" ]; then
OPJ_BUILDNAME=${OPJ_BUILDNAME}-pr${TRAVIS_PULL_REQUEST}
fi
OPJ_BUILDNAME=${OPJ_BUILDNAME}-${OPJ_BUILD_CONFIGURATION}-3rdP
if [ "${OPJ_NONCOMMERCIAL:-}" == "1" ] && [ -d kdu ]; then
if [ "${OPJ_NONCOMMERCIAL:-}" == "1" ] && [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ] && [ -d kdu ]; then
echo "
Testing will use Kakadu trial binaries. Here's the copyright notice from kakadu:
Copyright is owned by NewSouth Innovations Pty Limited, commercial arm of the UNSW Australia in Sydney.
@ -84,6 +93,9 @@ fi
set -x
# This will print configuration
# travis-ci doesn't dump cmake version in system info, let's print it
cmake --version
export OPJ_SITE=${OPJ_SITE}
export OPJ_BUILDNAME=${OPJ_BUILDNAME}
export OPJ_SOURCE_DIR=${OPJ_SOURCE_DIR}