Travis add mingw
This commit is contained in:
parent
6c157b60f2
commit
cde7423958
|
@ -5,6 +5,7 @@ os:
|
|||
compiler:
|
||||
- gcc
|
||||
- clang
|
||||
- x86_64-w64-mingw32-gcc
|
||||
env:
|
||||
- OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release
|
||||
- OPJ_CI_ARCH=i386 OPJ_CI_BUILD_CONFIGURATION=Release
|
||||
|
@ -14,10 +15,14 @@ matrix:
|
|||
exclude:
|
||||
- os: osx
|
||||
compiler: gcc
|
||||
- os: osx
|
||||
compiler: x86_64-w64-mingw32-gcc
|
||||
- compiler: clang
|
||||
env: OPJ_CI_ARCH=i386 OPJ_CI_BUILD_CONFIGURATION=Release
|
||||
- compiler: gcc
|
||||
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Debug OPJ_CI_ASAN=1
|
||||
- compiler: x86_64-w64-mingw32-gcc
|
||||
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Debug OPJ_CI_ASAN=1
|
||||
- os: osx
|
||||
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Debug OPJ_CI_ASAN=1
|
||||
|
||||
|
@ -25,6 +30,7 @@ addons:
|
|||
apt:
|
||||
packages:
|
||||
- gcc-multilib
|
||||
- mingw-w64
|
||||
|
||||
install:
|
||||
- ./tools/travis-ci/install.sh
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
# http://www.cmake.org/Wiki/CmakeMingw
|
||||
#
|
||||
# Copyright (c) 2006-2014 Mathieu Malaterre <mathieu.malaterre@voxxl.com>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the New
|
||||
# BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
#
|
||||
|
||||
# the name of the target operating system
|
||||
set(CMAKE_SYSTEM_NAME Windows)
|
||||
|
||||
# which compilers to use for C and C++
|
||||
set(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc)
|
||||
set(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++)
|
||||
set(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
|
||||
|
||||
# here is the target environment located
|
||||
set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32)
|
||||
|
||||
# adjust the default behaviour of the FIND_XXX() commands:
|
||||
# search headers and libraries in the target environment, search
|
||||
# programs in the host environment
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
|
@ -44,7 +44,11 @@ if ("$ENV{OPJ_CI_ASAN}" STREQUAL "1")
|
|||
set(OPJ_HAS_MEMCHECK TRUE)
|
||||
set(CTEST_MEMORYCHECK_TYPE "AddressSanitizer")
|
||||
set(CCFLAGS_ARCH "${CCFLAGS_ARCH} -g -fsanitize=address -fno-omit-frame-pointer")
|
||||
|
||||
endif()
|
||||
|
||||
if("$ENV{CC}" MATCHES ".*mingw.*")
|
||||
# We are trying to use mingw
|
||||
set(CTEST_CONFIGURE_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=${CTEST_SCRIPT_DIRECTORY}/toolchain-mingw64.cmake")
|
||||
endif()
|
||||
|
||||
if(NOT "$ENV{OPJ_CI_SKIP_TESTS}" STREQUAL "1")
|
||||
|
@ -110,7 +114,7 @@ file(WRITE "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" "${CACHE_CONTENTS}")
|
|||
# Perform a Experimental build
|
||||
ctest_start(Experimental)
|
||||
#ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}")
|
||||
ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}" OPTIONS "${CTEST_CONFIGURE_OPTIONS}")
|
||||
ctest_read_custom_files(${CTEST_BINARY_DIRECTORY})
|
||||
ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}")
|
||||
if(NOT "$ENV{OPJ_CI_SKIP_TESTS}" STREQUAL "1")
|
||||
|
@ -122,4 +126,4 @@ endif()
|
|||
if ("$ENV{OPJ_DO_SUBMIT}" STREQUAL "1")
|
||||
ctest_submit()
|
||||
endif()
|
||||
ctest_empty_binary_directory( "${CTEST_BINARY_DIRECTORY}" )
|
||||
#ctest_empty_binary_directory( "${CTEST_BINARY_DIRECTORY}" )
|
||||
|
|
|
@ -52,9 +52,16 @@ elif [ "${TRAVIS_OS_NAME}" == "linux" ]; then
|
|||
if which lsb_release > /dev/null; then
|
||||
OPJ_OS_NAME=$(lsb_release -si)$(lsb_release -sr | sed 's/\([^0-9]*\.[0-9]*\).*/\1/')
|
||||
fi
|
||||
if [ "${CC}" == "gcc" ]; then
|
||||
OPJ_CC_VERSION=gcc$(${CC} --version | head -1 | sed 's/.*\ \([0-9.]*[0-9]\)/\1/')
|
||||
elif [ "${CC}" == "clang" ]; then
|
||||
if [ -z "${CC##*gcc*}" ]; then
|
||||
OPJ_CC_VERSION=$(${CC} --version | head -1 | sed 's/.*\ \([0-9.]*[0-9]\)/\1/')
|
||||
if [ -z "${CC##*mingw*}" ]; then
|
||||
OPJ_CC_VERSION=mingw${OPJ_CC_VERSION}
|
||||
# disable testing for now
|
||||
export OPJ_CI_SKIP_TESTS=1
|
||||
else
|
||||
OPJ_CC_VERSION=gcc${OPJ_CC_VERSION}
|
||||
fi
|
||||
elif [ -z "${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}"; exit 1
|
||||
|
|
Loading…
Reference in New Issue