summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2021-09-10 16:05:04 +0200
committerEven Rouault <even.rouault@spatialys.com>2021-09-12 11:18:14 +0200
commit3d582dd8856bd9c8e3243407b61690263ed2ee48 (patch)
treec3045fe7f15163a0e04b72ce66d64afc88cfc7de /tools
parent0c1962669858b1d67a6b8851ae0e8c4123a1c282 (diff)
Add github action workflows CI
Diffstat (limited to 'tools')
-rw-r--r--tools/abi-tracker/openjpeg.json12
-rw-r--r--tools/ctest_scripts/travis-ci.cmake4
-rwxr-xr-xtools/travis-ci/abi-check.sh17
-rwxr-xr-xtools/travis-ci/install.sh14
-rw-r--r--tools/travis-ci/knownfailures-Ubuntu20.04-clang10.0.0-i386-Release-3rdP.txt48
-rw-r--r--tools/travis-ci/knownfailures-Ubuntu20.04-gcc9.3.0-x86_64-Release-3rdP.txt6
-rw-r--r--tools/travis-ci/knownfailures-windows-vs2015-x64-avx2-Release-3rdP.txt45
-rwxr-xr-xtools/travis-ci/run.sh110
8 files changed, 203 insertions, 53 deletions
diff --git a/tools/abi-tracker/openjpeg.json b/tools/abi-tracker/openjpeg.json
index 9f091f7f..3c459276 100644
--- a/tools/abi-tracker/openjpeg.json
+++ b/tools/abi-tracker/openjpeg.json
@@ -22,6 +22,18 @@
"PublicTypes": "public_types/openjpeg/current/list"
},
{
+ "Number": "2.4.0",
+ "Installed": "installed/openjpeg/2.4.0",
+ "Source": "src/openjpeg/2.4.0/version.-2.4.0.tar.gz",
+ "Changelog": "CHANGELOG.md",
+ "HeadersDiff": "On",
+ "PkgDiff": "Off",
+ "ABIView": "Off",
+ "ABIDiff": "Off",
+ "PublicSymbols": "public_symbols/openjpeg/2.4.0/list",
+ "PublicTypes": "public_types/openjpeg/2.4.0/list"
+ },
+ {
"Number": "2.3.0",
"Installed": "installed/openjpeg/2.3.0",
"Source": "src/openjpeg/2.3.0/version.-2.3.0.tar.gz",
diff --git a/tools/ctest_scripts/travis-ci.cmake b/tools/ctest_scripts/travis-ci.cmake
index 0d54773c..6dbe52c4 100644
--- a/tools/ctest_scripts/travis-ci.cmake
+++ b/tools/ctest_scripts/travis-ci.cmake
@@ -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" )
@@ -84,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})
diff --git a/tools/travis-ci/abi-check.sh b/tools/travis-ci/abi-check.sh
index 21ad9dc8..cf47da8f 100755
--- a/tools/travis-ci/abi-check.sh
+++ b/tools/travis-ci/abi-check.sh
@@ -35,7 +35,18 @@ OPJ_REPO="https://github.com/uclouvain/openjpeg.git"
OPJ_SSH_REPO=${OPJ_REPO/https:\/\/github.com\//git@github.com:}
OPJ_UPLOAD_BRANCH="gh-pages"
OPJ_UPLOAD_DIR="abi-check"
-if [ "${TRAVIS_REPO_SLUG:-}" != "" ]; then
+OPJ_SOURCE_DIR=$(cd $(dirname $0)/../.. && pwd)
+
+if [ "${GITHUB_REPOSITORY:-}" != "" ]; then
+ BRANCH=$(git -C ${OPJ_SOURCE_DIR} branch | grep '*' | tr -d '*[[:blank:]]')
+ if [ "$(echo "${GITHUB_REPOSITORY}" | sed 's/\(^.*\)\/.*/\1/')" == "uclouvain" ] && [ "${GITHUB_EVENT_NAME:-}" != "pull_request" ] && [ "$BRANCH" == "master" ]; then
+ # Upload updated report to gh-pages
+ echo "FIXME. We aren't yet ready to upload ABI report due to lack of keys to push to the gh-pages branch"
+ # OPJ_UPLOAD_ABI_REPORT=1
+ # Build full report
+ #OPJ_LIMIT_ABI_BUILDS=
+ fi
+elif [ "${TRAVIS_REPO_SLUG:-}" != "" ]; then
if [ "$(echo "${TRAVIS_REPO_SLUG}" | sed 's/\(^.*\)\/.*/\1/')" == "uclouvain" ] && [ "${TRAVIS_PULL_REQUEST:-}" == "false" ] && [ "${TRAVIS_BRANCH:-}" == "master" ]; then
# Upload updated report to gh-pages
OPJ_UPLOAD_ABI_REPORT=1
@@ -44,8 +55,6 @@ if [ "${TRAVIS_REPO_SLUG:-}" != "" ]; then
fi
fi
-OPJ_SOURCE_DIR=$(cd $(dirname $0)/../.. && pwd)
-
# INSTALL REQUIRED PACKAGES
mkdir ${HOME}/abi-check
@@ -94,7 +103,9 @@ else
grep -v Configure ${OPJ_SOURCE_DIR}/tools/abi-tracker/openjpeg.json > ./openjpeg.json
fi
cp -rf ${OPJ_SOURCE_DIR} src/openjpeg/current
+rm -f src/openjpeg/current/build/CMakeCache.txt
abi-monitor -v current -build openjpeg.json
+cat build_logs/openjpeg/current/make
rm -rf ./installed/openjpeg/${OPJ_LATEST_VERSION}
rm -rf ./compat_report/openjpeg/${OPJ_LATEST_VERSION}
diff --git a/tools/travis-ci/install.sh b/tools/travis-ci/install.sh
index 149a1af6..997f7bb8 100755
--- a/tools/travis-ci/install.sh
+++ b/tools/travis-ci/install.sh
@@ -47,7 +47,9 @@ if [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
OPJ_SOURCE_DIR=$(cd $(dirname $0)/../.. && pwd)
# We need test data
- if [ "${TRAVIS_BRANCH:-}" != "" ]; then
+ if [ "${GITHUB_HEAD_REF:-}" != "" ]; then
+ OPJ_DATA_BRANCH=${GITHUB_HEAD_REF}
+ elif [ "${TRAVIS_BRANCH:-}" != "" ]; then
OPJ_DATA_BRANCH=${TRAVIS_BRANCH}
elif [ "${APPVEYOR_REPO_BRANCH:-}" != "" ]; then
OPJ_DATA_BRANCH=${APPVEYOR_REPO_BRANCH}
@@ -59,12 +61,12 @@ if [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
OPJ_DATA_BRANCH=master #default to master
fi
echo "Cloning openjpeg-data from ${OPJ_DATA_BRANCH} branch"
- git clone --depth=1 --branch=${OPJ_DATA_BRANCH} git://github.com/uclouvain/openjpeg-data.git data
+ git clone -v --depth=1 --branch=${OPJ_DATA_BRANCH} git://github.com/uclouvain/openjpeg-data.git data
# We need jpylyzer for the test suite
JPYLYZER_VERSION="1.17.0"
echo "Retrieving jpylyzer"
- if [ "${APPVEYOR:-}" == "True" ]; then
+ if [ "${APPVEYOR:-}" == "True" -o "${RUNNER_OS:-}" == "Windows" ]; then
wget -q https://github.com/openpreserve/jpylyzer/releases/download/${JPYLYZER_VERSION}/jpylyzer_${JPYLYZER_VERSION}_win32.zip
mkdir jpylyzer
cd jpylyzer
@@ -82,12 +84,12 @@ if [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
# so long as such use or re-distribution is accompanied with this copyright notice and is not for commercial gain.
# Note: Binaries can only be used for non-commercial purposes.
if [ "${OPJ_NONCOMMERCIAL:-}" == "1" ]; then
- if [ "${TRAVIS_OS_NAME:-}" == "linux" ] || uname -s | grep -i Linux &> /dev/null; then
+ if [ "${TRAVIS_OS_NAME:-}" == "linux" -o "${RUNNER_OS:-}" == "Linux" ] || uname -s | grep -i Linux &> /dev/null; then
echo "Retrieving Kakadu"
wget -q http://kakadusoftware.com/wp-content/uploads/KDU805_Demo_Apps_for_Linux-x86-64_200602.zip
cmake -E tar -xf KDU805_Demo_Apps_for_Linux-x86-64_200602.zip
mv KDU805_Demo_Apps_for_Linux-x86-64_200602 kdu
- elif [ "${TRAVIS_OS_NAME:-}" == "osx" ] || uname -s | grep -i Darwin &> /dev/null; then
+ elif [ "${TRAVIS_OS_NAME:-}" == "osx" -o "${RUNNER_OS:-}" == "macOS" ] || uname -s | grep -i Darwin &> /dev/null; then
echo "Retrieving Kakadu"
wget -v http://kakadusoftware.com/wp-content/uploads/KDU805_Demo_Apps_for_MacOS_200602.dmg_.zip
cmake -E tar -xf KDU805_Demo_Apps_for_MacOS_200602.dmg_.zip
@@ -102,7 +104,7 @@ if [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
install_name_tool -id ${PWD}/libkdu_v80R.dylib libkdu_v80R.dylib
install_name_tool -change /usr/local/lib/libkdu_v80R.dylib ${PWD}/libkdu_v80R.dylib kdu_compress
install_name_tool -change /usr/local/lib/libkdu_v80R.dylib ${PWD}/libkdu_v80R.dylib kdu_expand
- elif [ "${APPVEYOR:-}" == "True" ] || uname -s | grep -i MINGW &> /dev/null || uname -s | grep -i CYGWIN &> /dev/null; then
+ elif [ "${APPVEYOR:-}" == "True" -o "${RUNNER_OS:-}" == "Windows" ] || uname -s | grep -i MINGW &> /dev/null || uname -s | grep -i CYGWIN &> /dev/null; then
echo "Retrieving Kakadu"
wget -q http://kakadusoftware.com/wp-content/uploads/KDU805_Demo_Apps_for_Win64_200602.msi_.zip
cmake -E tar -xf KDU805_Demo_Apps_for_Win64_200602.msi_.zip
diff --git a/tools/travis-ci/knownfailures-Ubuntu20.04-clang10.0.0-i386-Release-3rdP.txt b/tools/travis-ci/knownfailures-Ubuntu20.04-clang10.0.0-i386-Release-3rdP.txt
new file mode 100644
index 00000000..69c5c5df
--- /dev/null
+++ b/tools/travis-ci/knownfailures-Ubuntu20.04-clang10.0.0-i386-Release-3rdP.txt
@@ -0,0 +1,48 @@
+NR-C1P0-p0_04.j2k-compare2base
+NR-C1P0-p0_05.j2k-compare2base
+NR-C1P0-p0_06.j2k-compare2base
+NR-C1P1-p1_02.j2k-compare2base
+NR-C1P1-p1_03.j2k-compare2base
+NR-C1P1-p1_04.j2k-compare2base
+NR-C1P1-p1_05.j2k-compare2base
+NR-JP2-file2.jp2-compare2base
+NR-JP2-file3.jp2-compare2base
+NR-RIC-subsampling_1.jp2-compare2base
+NR-RIC-subsampling_2.jp2-compare2base
+NR-RIC-zoo1.jp2-compare2base
+NR-RIC-zoo2.jp2-compare2base
+NR-DEC-_00042.j2k-2-decode-md5
+NR-DEC-buxI.j2k-9-decode-md5
+NR-DEC-CT_Phillips_JPEG2K_Decompr_Problem.j2k-13-decode-md5
+NR-DEC-Marrin.jp2-18-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-31-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-32-decode-md5
+NR-DEC-file409752.jp2-40-decode-md5
+NR-DEC-issue188_beach_64bitsbox.jp2-41-decode-md5
+NR-DEC-issue206_image-000.jp2-42-decode-md5
+NR-DEC-issue205.jp2-43-decode-md5
+NR-DEC-issue228.j2k-60-decode-md5
+NR-DEC-issue134.jp2-67-decode-md5
+NR-DEC-issue135.j2k-68-decode-md5
+NR-DEC-issue208.jp2-69-decode-md5
+NR-DEC-issue211.jp2-70-decode-md5
+NR-DEC-issue414.jp2-110-decode-md5
+NR-DEC-p1_04.j2k-124-decode-md5
+NR-DEC-p1_04.j2k-125-decode-md5
+NR-DEC-p1_04.j2k-126-decode-md5
+NR-DEC-p1_04.j2k-127-decode-md5
+NR-DEC-p1_04.j2k-128-decode-md5
+NR-DEC-p1_04.j2k-129-decode-md5
+NR-DEC-p1_04.j2k-131-decode-md5
+NR-DEC-p1_04.j2k-134-decode-md5
+NR-DEC-p1_04.j2k-138-decode-md5
+NR-DEC-p1_04.j2k-140-decode-md5
+NR-DEC-p0_04.j2k-166-decode-md5
+NR-DEC-p0_04.j2k-168-decode-md5
+NR-DEC-p0_04.j2k-172-decode-md5
+NR-DEC-issue205.jp2-253-decode-md5
+NR-DEC-issue236-ESYCC-CDEF.jp2-254-decode-md5
+NR-DEC-issue559-eci-090-CIELab.jp2-255-decode-md5
+NR-DEC-issue559-eci-091-CIELab.jp2-256-decode-md5
+NR-DEC-db11217111510058.jp2-306-decode-md5
+NR-DEC-tnsot_zero.jp2-307-decode-md5
diff --git a/tools/travis-ci/knownfailures-Ubuntu20.04-gcc9.3.0-x86_64-Release-3rdP.txt b/tools/travis-ci/knownfailures-Ubuntu20.04-gcc9.3.0-x86_64-Release-3rdP.txt
new file mode 100644
index 00000000..0ed8ee4c
--- /dev/null
+++ b/tools/travis-ci/knownfailures-Ubuntu20.04-gcc9.3.0-x86_64-Release-3rdP.txt
@@ -0,0 +1,6 @@
+NR-DEC-_00042.j2k-2-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-31-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-32-decode-md5
+NR-DEC-issue205.jp2-43-decode-md5
+NR-DEC-issue135.j2k-68-decode-md5
+NR-DEC-issue208.jp2-69-decode-md5
diff --git a/tools/travis-ci/knownfailures-windows-vs2015-x64-avx2-Release-3rdP.txt b/tools/travis-ci/knownfailures-windows-vs2015-x64-avx2-Release-3rdP.txt
new file mode 100644
index 00000000..16abf39c
--- /dev/null
+++ b/tools/travis-ci/knownfailures-windows-vs2015-x64-avx2-Release-3rdP.txt
@@ -0,0 +1,45 @@
+NR-C1P0-p0_04.j2k-compare2base
+NR-C1P0-p0_05.j2k-compare2base
+NR-C1P0-p0_06.j2k-compare2base
+NR-C1P1-p1_02.j2k-compare2base
+NR-C1P1-p1_03.j2k-compare2base
+NR-C1P1-p1_04.j2k-compare2base
+NR-C1P1-p1_05.j2k-compare2base
+NR-RIC-subsampling_1.jp2-compare2base
+NR-RIC-subsampling_2.jp2-compare2base
+NR-RIC-zoo1.jp2-compare2base
+NR-RIC-zoo2.jp2-compare2base
+NR-DEC-_00042.j2k-2-decode-md5
+NR-DEC-buxI.j2k-9-decode-md5
+NR-DEC-CT_Phillips_JPEG2K_Decompr_Problem.j2k-13-decode-md5
+NR-DEC-Marrin.jp2-18-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-31-decode-md5
+NR-DEC-kodak_2layers_lrcp.j2c-32-decode-md5
+NR-DEC-file409752.jp2-40-decode-md5
+NR-DEC-issue188_beach_64bitsbox.jp2-41-decode-md5
+NR-DEC-issue206_image-000.jp2-42-decode-md5
+NR-DEC-issue205.jp2-43-decode-md5
+NR-DEC-issue228.j2k-60-decode-md5
+NR-DEC-issue142.j2k-66-decode-md5
+NR-DEC-issue134.jp2-67-decode-md5
+NR-DEC-issue135.j2k-68-decode-md5
+NR-DEC-issue208.jp2-69-decode-md5
+NR-DEC-issue211.jp2-70-decode-md5
+NR-DEC-p1_04.j2k-124-decode-md5
+NR-DEC-p1_04.j2k-125-decode-md5
+NR-DEC-p1_04.j2k-126-decode-md5
+NR-DEC-p1_04.j2k-127-decode-md5
+NR-DEC-p1_04.j2k-128-decode-md5
+NR-DEC-p1_04.j2k-129-decode-md5
+NR-DEC-p1_04.j2k-131-decode-md5
+NR-DEC-p1_04.j2k-138-decode-md5
+NR-DEC-p1_04.j2k-140-decode-md5
+NR-DEC-p0_04.j2k-166-decode-md5
+NR-DEC-p0_04.j2k-167-decode-md5
+NR-DEC-p0_04.j2k-168-decode-md5
+NR-DEC-p0_04.j2k-172-decode-md5
+NR-DEC-issue205.jp2-253-decode-md5
+NR-DEC-issue559-eci-090-CIELab.jp2-255-decode-md5
+NR-DEC-issue559-eci-091-CIELab.jp2-256-decode-md5
+NR-DEC-db11217111510058.jp2-306-decode-md5
+NR-DEC-tnsot_zero.jp2-307-decode-md5
diff --git a/tools/travis-ci/run.sh b/tools/travis-ci/run.sh
index 97f5f712..fcdea9e6 100755
--- a/tools/travis-ci/run.sh
+++ b/tools/travis-ci/run.sh
@@ -49,54 +49,69 @@ OPJ_SOURCE_DIR=$(cd $(dirname $0)/../.. && pwd)
if [ "${OPJ_DO_SUBMIT:-}" == "" ]; then
OPJ_DO_SUBMIT=0 # Do not flood cdash by default
fi
-if [ "${TRAVIS_REPO_SLUG:-}" != "" ]; then
+
+if [ "${GITHUB_REPOSITORY:-}" != "" ]; then
+ OPJ_OWNER=$(echo "${GITHUB_REPOSITORY}" | sed 's/\(^.*\)\/.*/\1/')
+ OPJ_SITE="${OPJ_OWNER}.gha"
+elif [ "${TRAVIS_REPO_SLUG:-}" != "" ]; then
OPJ_OWNER=$(echo "${TRAVIS_REPO_SLUG}" | sed 's/\(^.*\)\/.*/\1/')
OPJ_SITE="${OPJ_OWNER}.travis-ci.org"
- if [ "${OPJ_OWNER}" == "uclouvain" ]; then
- OPJ_DO_SUBMIT=1
- fi
elif [ "${APPVEYOR_REPO_NAME:-}" != "" ]; then
OPJ_OWNER=$(echo "${APPVEYOR_REPO_NAME}" | sed 's/\(^.*\)\/.*/\1/')
OPJ_SITE="${OPJ_OWNER}.appveyor.com"
- if [ "${OPJ_OWNER}" == "uclouvain" ]; then
- OPJ_DO_SUBMIT=1
- fi
else
OPJ_SITE="$(hostname)"
fi
-if [ "${TRAVIS_OS_NAME:-}" == "" ]; then
+if [ "${OPJ_OWNER:-}" == "uclouvain" ]; then
+ OPJ_DO_SUBMIT=1
+fi
+
+if [ "${RUNNER_OS:-}" != "" ]; then
+ if [ "${RUNNER_OS:-}" == "Linux" ]; then
+ OPJ_SHORT_OS_NAME=linux
+ elif [ "${RUNNER_OS:-}" == "Windows" ]; then
+ OPJ_SHORT_OS_NAME=windows
+ elif [ "${RUNNER_OS:-}" == "macOS" ]; then
+ OPJ_SHORT_OS_NAME=osx
+ else
+ echo "Unhandled RUNNER_OS = ${RUNNER_OS:-}"; exit 1
+ fi
+elif [ "${TRAVIS_OS_NAME:-}" != "" ]; then
+ OPJ_SHORT_OS_NAME="${${TRAVIS_OS_NAME:-}}"
+else
# Let's guess OS for testing purposes
echo "Guessing OS"
if uname -s | grep -i Darwin &> /dev/null; then
- TRAVIS_OS_NAME=osx
+ OPJ_SHORT_OS_NAME=osx
elif uname -s | grep -i Linux &> /dev/null; then
- TRAVIS_OS_NAME=linux
- if [ "${CC:-}" == "" ]; then
- # default to gcc
- export CC=gcc
- fi
+ OPJ_SHORT_OS_NAME=linux
elif uname -s | grep -i CYGWIN &> /dev/null; then
- TRAVIS_OS_NAME=windows
+ OPJ_SHORT_OS_NAME=windows
elif uname -s | grep -i MINGW &> /dev/null; then
- TRAVIS_OS_NAME=windows
+ OPJ_SHORT_OS_NAME=windows
elif [ "${APPVEYOR:-}" == "True" ]; then
- TRAVIS_OS_NAME=windows
+ OPJ_SHORT_OS_NAME=windows
else
echo "Failed to guess OS"; exit 1
fi
- echo "${TRAVIS_OS_NAME}"
+ echo "${OPJ_SHORT_OS_NAME}"
fi
-if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
+if [ "${OPJ_SHORT_OS_NAME}" == "osx" ]; then
OPJ_OS_NAME=$(sw_vers -productName | tr -d ' ')$(sw_vers -productVersion | sed 's/\([^0-9]*\.[0-9]*\).*/\1/')
OPJ_CC_VERSION=$(xcodebuild -version | grep -i xcode)
OPJ_CC_VERSION=xcode${OPJ_CC_VERSION:6}
-elif [ "${TRAVIS_OS_NAME}" == "linux" ]; then
+elif [ "${OPJ_SHORT_OS_NAME}" == "linux" ]; then
OPJ_OS_NAME=linux
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:-}" == "" ]; then
+ # default to gcc
+ export CC=gcc
+ echo "Defaulting to CC=gcc"
+ fi
if [ -z "${CC##*gcc*}" ]; then
OPJ_CC_VERSION=$(${CC} --version | head -1 | sed 's/.*\ \([0-9.]*[0-9]\)/\1/')
if [ -z "${CC##*mingw*}" ]; then
@@ -122,7 +137,7 @@ elif [ "${TRAVIS_OS_NAME}" == "linux" ]; then
export OPJ_CI_SKIP_TESTS=1
fi
fi
-elif [ "${TRAVIS_OS_NAME}" == "windows" ]; then
+elif [ "${OPJ_SHORT_OS_NAME}" == "windows" ]; then
OPJ_OS_NAME=windows
if which cl > /dev/null; then
OPJ_CL_VERSION=$(cl 2>&1 | grep Version | sed 's/.*Version \([0-9]*\).*/\1/')
@@ -152,7 +167,7 @@ elif [ "${TRAVIS_OS_NAME}" == "windows" ]; then
fi
fi
else
- echo "OS not supported: ${TRAVIS_OS_NAME}"; exit 1
+ echo "OS not supported: ${OPJ_SHORT_OS_NAME}"; exit 1
fi
if [ "${OPJ_CI_ARCH:-}" == "" ]; then
@@ -164,18 +179,27 @@ if [ "${OPJ_CI_ARCH:-}" == "" ]; then
echo "${OPJ_CI_ARCH}"
fi
-if [ "${TRAVIS_BRANCH:-}" == "" ]; then
- if [ "${APPVEYOR_REPO_BRANCH:-}" != "" ]; then
- TRAVIS_BRANCH=${APPVEYOR_REPO_BRANCH}
- else
- echo "Guessing branch"
- TRAVIS_BRANCH=$(git -C ${OPJ_SOURCE_DIR} branch | grep '*' | tr -d '*[[:blank:]]')
- fi
+if [ "${GITHUB_HEAD_REF:-}" != "" ]; then
+ OPJ_BRANCH=${GITHUB_HEAD_REF}
+elif [ "${TRAVIS_BRANCH:-}" != "" ]; then
+ OPJ_BRANCH=${TRAVIS_BRANCH}
+elif [ "${APPVEYOR_REPO_BRANCH:-}" != "" ]; then
+ OPJ_BRANCH=${APPVEYOR_REPO_BRANCH}
+else
+ echo "Guessing branch"
+ OPJ_BRANCH=$(git -C ${OPJ_SOURCE_DIR} branch | grep '*' | tr -d '*[[:blank:]]')
fi
-OPJ_BUILDNAME=${OPJ_OS_NAME}-${OPJ_CC_VERSION}-${OPJ_CI_ARCH}-${TRAVIS_BRANCH}
+OPJ_BUILDNAME=${OPJ_OS_NAME}-${OPJ_CC_VERSION}-${OPJ_CI_ARCH}-${OPJ_BRANCH}
OPJ_BUILDNAME_TEST=${OPJ_OS_NAME}-${OPJ_CC_VERSION}-${OPJ_CI_ARCH}
-if [ "${TRAVIS_PULL_REQUEST:-}" != "false" ] && [ "${TRAVIS_PULL_REQUEST:-}" != "" ]; then
+if [ "${OPJ_CI_INSTRUCTION_SETS-:}" == "/arch:AVX2" ]; then
+ OPJ_BUILDNAME=${OPJ_BUILDNAME}-avx2
+ OPJ_BUILDNAME_TEST=${OPJ_BUILDNAME_TEST}-avx2
+fi
+if [ "${GITHUB_EVENT_NAME:-}" = "pull_request" ]; then
+ PULL_REQUEST_NUMBER=$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')
+ OPJ_BUILDNAME=${OPJ_BUILDNAME}-${PULL_REQUEST_NUMBER}
+elif [ "${TRAVIS_PULL_REQUEST:-}" != "false" ] && [ "${TRAVIS_PULL_REQUEST:-}" != "" ]; then
OPJ_BUILDNAME=${OPJ_BUILDNAME}-pr${TRAVIS_PULL_REQUEST}
elif [ "${APPVEYOR_PULL_REQUEST_NUMBER:-}" != "" ]; then
OPJ_BUILDNAME=${OPJ_BUILDNAME}-pr${APPVEYOR_PULL_REQUEST_NUMBER}
@@ -206,7 +230,7 @@ set -x
# travis-ci doesn't dump cmake version in system info, let's print it
cmake --version
-export TRAVIS_OS_NAME=${TRAVIS_OS_NAME}
+export OPJ_SHORT_OS_NAME=${OPJ_SHORT_OS_NAME}
export OPJ_SITE=${OPJ_SITE}
export OPJ_BUILDNAME=${OPJ_BUILDNAME}
export OPJ_SOURCE_DIR=$(opjpath -m ${OPJ_SOURCE_DIR})
@@ -233,22 +257,24 @@ fi
# Deployment if needed
#---------------------
if [ "${TRAVIS_TAG:-}" != "" ]; then
- OPJ_TAG_NAME=${TRAVIS_TAG}
- elif [ "${APPVEYOR_REPO_TAG:-}" == "true" ]; then
- OPJ_TAG_NAME=${APPVEYOR_REPO_TAG_NAME}
- else
- OPJ_TAG_NAME=""
- fi
+ OPJ_TAG_NAME=${TRAVIS_TAG}
+elif [ "${APPVEYOR_REPO_TAG:-}" == "true" ]; then
+ OPJ_TAG_NAME=${APPVEYOR_REPO_TAG_NAME}
+elif test $(git describe --exact-match --tags 2>/dev/null); then
+ OPJ_TAG_NAME="$(git describe --exact-match --tags)"
+else
+ OPJ_TAG_NAME=""
+fi
if [ "${OPJ_CI_INCLUDE_IF_DEPLOY:-}" == "1" ] && [ "${OPJ_TAG_NAME:-}" != "" ]; then
#if [ "${OPJ_CI_INCLUDE_IF_DEPLOY:-}" == "1" ]; then
OPJ_CI_DEPLOY=1 # unused for now
OPJ_CUR_DIR=${PWD}
- if [ "${TRAVIS_OS_NAME:-}" == "linux" ]; then
+ if [ "${OPJ_SHORT_OS_NAME:-}" == "linux" ]; then
OPJ_PACK_GENERATOR="TGZ" # ZIP generator currently segfaults on linux
else
OPJ_PACK_GENERATOR="ZIP"
fi
- OPJ_PACK_NAME="openjpeg-${OPJ_TAG_NAME}-${TRAVIS_OS_NAME}-${OPJ_CI_ARCH}"
+ OPJ_PACK_NAME="openjpeg-${OPJ_TAG_NAME}-${OPJ_SHORT_OS_NAME}-${OPJ_CI_ARCH}"
cd ${OPJ_BINARY_DIR}
cmake -D CPACK_GENERATOR:STRING=${OPJ_PACK_GENERATOR} -D CPACK_PACKAGE_FILE_NAME:STRING=${OPJ_PACK_NAME} ${OPJ_SOURCE_DIR}
cd ${OPJ_CUR_DIR}
@@ -330,7 +356,7 @@ if [ "${OPJ_CI_SKIP_TESTS:-}" != "1" ]; then
"
else
echo "
-New/unknown test failure found!!!
+New/unknown test failure found!!! You may need to update/create tools/travis-ci/knownfailures-${OPJ_BUILDNAME_TEST}.txt
"
fi
@@ -365,7 +391,7 @@ if [ "${OPJ_CI_PERF_TESTS:-}" == "1" ]; then
cd ../..
REF_VERSION=master
- if [ "${TRAVIS_PULL_REQUEST:-false}" == "false" ]; then
+ if [ "${TRAVIS_PULL_REQUEST:-false}" == "false" -a "${GITHUB_EVENT_NAME:-}" != "pull_request" ]; then
REF_VERSION=v2.1.2
fi
if [ ! -d ref_opj ]; then