X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=tools%2Ftravis-ci%2Fabi-check.sh;h=cf47da8f6d43b22a746fe43385680d5d80ec1ac8;hb=a5891555eb49ed7cc26b2901ea680acda136d811;hp=eab921a86a0b288e8c4b0578360ee172c6c6b952;hpb=0394f8d0f1c981e0bc587beddc14d1fb0b265b1b;p=openjpeg.git diff --git a/tools/travis-ci/abi-check.sh b/tools/travis-ci/abi-check.sh index eab921a8..cf47da8f 100755 --- a/tools/travis-ci/abi-check.sh +++ b/tools/travis-ci/abi-check.sh @@ -24,8 +24,8 @@ if [ "${OPJ_CI_CXX:-}" != "" ]; then fi OPJ_UPLOAD_ABI_REPORT=0 -#OPJ_PREVIOUS_VERSION="2.1.1" -OPJ_LATEST_VERSION="2.1.2" +#OPJ_PREVIOUS_VERSION="2.3.1" +OPJ_LATEST_VERSION="2.4.0" if [ "${OPJ_PREVIOUS_VERSION:-}" != "" ]; then OPJ_LIMIT_ABI_BUILDS="-limit 3" else @@ -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 @@ -61,9 +70,10 @@ make check &> /dev/null make install &> /dev/null cd .. export PATH=${PWD}/tools/wdiff/bin:$PATH -wget -qO - https://tools.ietf.org/tools/rfcdiff/rfcdiff-1.42.tgz | tar -xz -mv rfcdiff-1.42 ${PWD}/tools/rfcdiff -export PATH=${PWD}/tools/rfcdiff:$PATH +wget https://tools.ietf.org/tools/rfcdiff/rfcdiff +chmod +x rfcdiff +mv rfcdiff ${PWD}/tools +export PATH=${PWD}/tools:$PATH wget -qO - https://github.com/lvc/installer/archive/0.10.tar.gz | tar -xz mkdir ${PWD}/tools/abi-tracker make -C installer-0.10 install prefix=${PWD}/tools/abi-tracker target=abi-tracker @@ -93,7 +103,15 @@ 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} +rm -rf ./abi_dump/openjpeg/${OPJ_LATEST_VERSION} +rm -rf ./headers_diff/openjpeg/${OPJ_LATEST_VERSION} +rm -rf ./objects_report/openjpeg/${OPJ_LATEST_VERSION} abi-monitor -v ${OPJ_LATEST_VERSION} -build openjpeg.json if [ "${OPJ_PREVIOUS_VERSION:-}" != "" ]; then abi-monitor -v ${OPJ_PREVIOUS_VERSION} -build openjpeg.json @@ -111,6 +129,9 @@ fi # Check ABI if [ "${OPJ_LIMIT_ABI_BUILDS}" != "" ]; then abi-compliance-checker -l openjpeg -old $(find ./abi_dump/openjpeg/$OPJ_LATEST_VERSION -name '*.dump') -new $(find ./abi_dump/openjpeg/current -name '*.dump') -header openjpeg.h -abi -s || EXIT_CODE=1 + if [ ${EXIT_CODE} -eq 1 ]; then + cat "compat_reports/openjpeg/${OPJ_LATEST_VERSION}_to_current/abi_compat_report.html" + fi if [ "${OPJ_PREVIOUS_VERSION:-}" != "" ]; then abi-compliance-checker -l openjpeg -old $(find ./abi_dump/openjpeg/$OPJ_PREVIOUS_VERSION -name '*.dump') -new $(find ./abi_dump/openjpeg/$OPJ_LATEST_VERSION -name '*.dump') -header openjpeg.h -abi -s || EXIT_CODE=1 fi