diff options
-rw-r--r-- | .cirrus.yml | 17 | ||||
-rwxr-xr-x | build/ci/build.sh | 14 | ||||
-rwxr-xr-x | build/ci/cirrus_ci/ci.cmd | 14 |
3 files changed, 39 insertions, 6 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index 456869e2..21044fff 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -23,6 +23,8 @@ FreeBSD_task: test_script: - ./build/ci/build.sh -a test - ./build/ci/cirrus_ci/ci.sh test + install_script: + - ./build/ci/build.sh -a install MacOS_task: matrix: @@ -45,6 +47,8 @@ MacOS_task: test_script: - ./build/ci/build.sh -a test - ./build/ci/cirrus_ci/ci.sh test + install_script: + - ./build/ci/build.sh -a install Fedora_29_task: container: @@ -61,18 +65,19 @@ Fedora_29_task: - ./build/ci/build.sh -a build test_script: - ./build/ci/build.sh -a test + install_script: + - ./build/ci/build.sh -a install Fedora_29_distcheck_task: container: dockerfile: build/ci/cirrus_ci/Dockerfile.fc29.distcheck env: BS: autotools - MAKE_ARGS: distcheck configure_script: - ./build/ci/build.sh -a autogen - ./build/ci/build.sh -a configure - build_script: - - ./build/ci/build.sh -a build + distcheck_script: + - ./build/ci/build.sh -a distcheck Windows_MSVC_task: windows_container: @@ -86,6 +91,8 @@ Windows_MSVC_task: - build\ci\cirrus_ci\ci.cmd build test_script: - build\ci\cirrus_ci\ci.cmd test + instal_script: + - build\ci\cirrus_ci\ci.cmd install Windows_MinGW_task: windows_container: @@ -103,6 +110,8 @@ Windows_MinGW_task: - build\ci\cirrus_ci\ci.cmd build test_script: - build\ci\cirrus_ci\ci.cmd test + install_script: + - build\ci\cirrus_ci\ci.cmd install Windows_Cygwin_task: windows_container: @@ -118,3 +127,5 @@ Windows_Cygwin_task: - build\ci\cirrus_ci\ci.cmd build test_script: - build\ci\cirrus_ci\ci.cmd test + install_script: + - build\ci\cirrus_ci\ci.cmd install diff --git a/build/ci/build.sh b/build/ci/build.sh index 1b03ac18..9dbefaa0 100755 --- a/build/ci/build.sh +++ b/build/ci/build.sh @@ -23,7 +23,7 @@ SRCDIR="${SRCDIR:-`pwd`}" RET=0 usage () { - echo "Usage: $0 [-b autotools|cmake] [-a autogen|configure|build|test ] [ -a ... ] [ -d builddir ] [-s srcdir ]" + echo "Usage: $0 [-b autotools|cmake] [-a autogen|configure|build|test|install|distcheck ] [ -a ... ] [ -d builddir ] [-s srcdir ]" } inputerror () { echo $1 @@ -38,6 +38,8 @@ while getopts a:b:d:s: opt; do configure) ;; build) ;; test) ;; + install) ;; + distcheck) ;; *) inputerror "Invalid action (-a)" ;; esac ACTIONS="${ACTIONS} ${OPTARG}" @@ -78,7 +80,7 @@ if [ -n "${DEBUG}" ]; then fi fi if [ -z "${ACTIONS}" ]; then - ACTIONS="autogen configure build test" + ACTIONS="autogen configure build test install" fi if [ -z "${BS}" ]; then inputerror "Missing build system (-b) parameter" @@ -122,6 +124,14 @@ for action in ${ACTIONS}; do RET="$?" find ${TMPDIR:-/tmp} -path '*_test.*' -name '*.log' -print -exec cat {} \; ;; + install) + ${MAKE} ${MAKE_ARGS} install DESTDIR="${BUILDDIR}/destdir" + RET="$?" + cd ${BUILDDIR}/destdir && ls -lR . + ;; + distcheck) + ${MAKE} ${MAKE_ARGS} distcheck + ;; esac if [ "${RET}" != "0" ]; then exit "${RET}" diff --git a/build/ci/cirrus_ci/ci.cmd b/build/ci/cirrus_ci/ci.cmd index fd63f2a7..654d7048 100755 --- a/build/ci/cirrus_ci/ci.cmd +++ b/build/ci/cirrus_ci/ci.cmd @@ -103,8 +103,20 @@ IF "%1%"=="prepare" ( REM CD build_ci\cmake REM cmake --build . --target RUN_TESTS --config Release ) +) ELSE IF "%1%"=="install" ( + IF "%BE%"=="cygwin-gcc" ( + SET BS=cmake + C:\tools\cygwin\bin\bash.exe --login -c "cd '%cd%'; ./build/ci/build.sh -a install" + ) ELSE IF "%BE%"=="mingw-gcc" ( + SET PATH=%PATH%;C:\Program Files\cmake\bin;C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64\bin + CD build_ci\cmake + mingw32-make install DESTDIR=%cd%\destdir + ) ELSE IF "%BE%"=="msvc" ( + SET PATH=%PATH%;C:\Program Files\cmake\bin;C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64\bin + cmake --build . --target INSTALL --config Release + ) ) ELSE ( - ECHO "Usage: %0% prepare|deplibs|configure|build|test" + ECHO "Usage: %0% prepare|deplibs|configure|build|test|install" @EXIT /b 0 ) @EXIT /b 0 |