CMake: drop support for cmake < 3.5
[openjpeg.git] / tools / ctest_scripts / travis-ci.cmake
index 828b5af4de18d92c2729d353ee408584710d7c63..7d1c9f32502339b41248a0243dac7f15af2bad6c 100644 (file)
@@ -4,7 +4,7 @@
 # Results will be available at: http://my.cdash.org/index.php?project=OPENJPEG
 # -----------------------------------------------------------------------------
 
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 3.5)
 
 set( ENV{LANG} en_US.UTF-8)
 if($ENV{OPJ_BINARY_DIR})
@@ -13,7 +13,7 @@ else()
        set( CTEST_DASHBOARD_ROOT  "$ENV{PWD}/build" )
 endif()
 
-if("$ENV{TRAVIS_OS_NAME}" STREQUAL "windows")
+if("$ENV{OPJ_SHORT_OS_NAME}" STREQUAL "windows")
        set( CTEST_CMAKE_GENERATOR "NMake Makefiles")
        set( CTEST_BUILD_COMMAND   "nmake" )
        set( JPYLYZER_EXT          "exe"  )
@@ -53,6 +53,11 @@ if (NOT "$ENV{OPJ_CI_ARCH}" STREQUAL "")
        endif()
 endif()
 
+if (NOT "$ENV{OPJ_CI_INSTRUCTION_SETS}" STREQUAL "")
+       set(CCFLAGS_ARCH "${CCFLAGS_ARCH} $ENV{OPJ_CI_INSTRUCTION_SETS}")
+endif()
+
+
 if ("$ENV{OPJ_CI_ASAN}" STREQUAL "1")
        set(OPJ_HAS_MEMCHECK TRUE)
        set(CTEST_MEMORYCHECK_TYPE "AddressSanitizer")
@@ -79,7 +84,7 @@ if(NOT "$ENV{OPJ_CI_SKIP_TESTS}" STREQUAL "1")
        # Note: Binaries can only be used for non-commercial purposes.
        if ("$ENV{OPJ_NONCOMMERCIAL}" STREQUAL "1" )
                set(KDUPATH $ENV{PWD}/kdu)
-               if("$ENV{TRAVIS_OS_NAME}" STREQUAL "windows")
+               if("$ENV{OPJ_SHORT_OS_NAME}" STREQUAL "windows")
                        set(ENV{PATH} "$ENV{PATH};${KDUPATH}")
                else()
                        set(ENV{LD_LIBRARY_PATH} ${KDUPATH})
@@ -116,16 +121,25 @@ BUILD_TESTING:BOOL=${BUILD_TESTING}
 # Build Thirdparty, useful but not required for test suite
 BUILD_THIRDPARTY:BOOL=TRUE
 
+# Build unit tests that test subcomponents of libopenjp2 (e.g. DWT)
+BUILD_UNIT_TESTS:BOOL=TRUE
+
 # JPEG2000 test files are available with git clone https://github.com/uclouvain/openjpeg-data.git
 OPJ_DATA_ROOT:PATH=$ENV{PWD}/data
 
-# jpylyzer is available with on GitHub: https://github.com/openpreserve/jpylyzer
-JPYLYZER_EXECUTABLE=$ENV{PWD}/jpylyzer/jpylyzer.${JPYLYZER_EXT}
-
 # Enable astyle
 WITH_ASTYLE:BOOL=${BUILD_ASTYLE}
 " )
 
+if(EXISTS "$ENV{PWD}/jpylyzer/jpylyzer.${JPYLYZER_EXT}")
+    set(CACHE_CONTENTS "
+${CACHE_CONTENTS}
+
+# jpylyzer is available with on GitHub: https://github.com/openpreserve/jpylyzer
+JPYLYZER_EXECUTABLE=$ENV{PWD}/jpylyzer/jpylyzer.${JPYLYZER_EXT}
+")
+endif()
+
 #---------------------
 #1. openjpeg specific:
 set( CTEST_PROJECT_NAME        "OPENJPEG" )