Compare commits

..

14 Commits

Author SHA1 Message Date
93e22c053f Fix 2023-02-17 16:50:38 +03:00
6c34d3a7dc MXE 2022-12-02 13:47:00 +03:00
7d01aa11f9 update 2022-10-10 07:34:34 +03:00
21ad81dd39 update 2022-10-09 22:06:12 +03:00
77c7e231d2 key 2022-10-09 05:14:31 +03:00
4e46683533 key 2022-10-09 05:12:11 +03:00
814bc9e7ee ssh 2022-10-09 05:00:31 +03:00
08839e3edd ??? 2022-10-09 04:49:15 +03:00
f739ead5fc tags 2022-10-09 02:39:23 +03:00
040d974515 Путь к qmake задаётся переменной 2022-10-08 20:45:37 +03:00
7fedc96bed mxe 2022-10-08 20:36:48 +03:00
84b91698a8 Путь к cmake задаётся переменной 2022-10-08 20:06:08 +03:00
9c79f48f64 mxe 2022-10-08 18:58:06 +03:00
239a770d9e uncrustify 2022-10-08 18:28:05 +03:00

View File

@ -4,6 +4,8 @@ variables:
CI_SOURCE_DIR: .
CI_BUILD_DIR: _build
CI_OUTPUT_DIR: _output
CI_CMAKE: /usr/bin/cmake
CI_QMAKE5: /usr/bin/qmake
.add-ssh-key:
before_script:
@ -25,8 +27,6 @@ variables:
.qmake-script:
variables:
QT_SELECT: qt5
before_script:
- !reference [.add-ssh-key, before_script]
script:
- >
if [ -f "${CI_JOB_NAME}.status" ]; then
@ -37,15 +37,13 @@ variables:
fi
- rm -f ${CI_JOB_NAME}.status
- mkdir -p ${CI_BUILD_DIR}
- qmake -o ${CI_BUILD_DIR}/Makefile ${QMAKE_PRO_FILE}
- ${CI_QMAKE} -o ${CI_BUILD_DIR}/Makefile ${QMAKE_PRO_FILE}
- make -j8 -C ${CI_BUILD_DIR}
- echo "${CI_COMMIT_SHA}" > "${CI_JOB_NAME}.status"
.cmake-script:
extends: .use-ninja
before_script:
- !reference [.add-ssh-key, before_script]
script:
- >
if [ -f "${CI_JOB_NAME}.status" ]; then
@ -59,22 +57,22 @@ variables:
if [ -n "${CONFIGURE_CMD}" ]; then
${CONFIGURE_CMD}
else
cmake -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=${CI_OUTPUT_DIR} -DCPACK_PACKAGING_INSTALL_PREFIX=/opt/ecs5 -B${CI_BUILD_DIR} -H.
${CI_CMAKE} -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=${CI_OUTPUT_DIR} -DCPACK_PACKAGING_INSTALL_PREFIX=/opt/ecs5 -B${CI_BUILD_DIR} -H.
fi
- >
if [ -n "${BUILD_CMD}" ]; then
${BUILD_CMD}
else
cmake --build ${CI_BUILD_DIR}
${CI_CMAKE} --build ${CI_BUILD_DIR}
fi
- >
if [ -z "${CI_SHARED_ENVIRONMENT+x}" ]; then
if [ -n "${PACKAGE_CMD}" ]; then
${PACKAGE_CMD}
else
cmake --install ${CI_BUILD_DIR}
cmake --build ${CI_BUILD_DIR} --target package
cmake --build ${CI_BUILD_DIR} --target package_source
${CI_CMAKE} --install ${CI_BUILD_DIR}
${CI_CMAKE} --build ${CI_BUILD_DIR} --target package || true
${CI_CMAKE} --build ${CI_BUILD_DIR} --target package_source || true
fi
fi
- echo "${CI_COMMIT_SHA}" > "${CI_JOB_NAME}.status"
@ -91,7 +89,6 @@ variables:
cache:
paths: ['*.status']
before_script:
- !reference [.add-ssh-key, before_script]
- >
if [ -f "${CI_JOB_NAME}.status" ]; then
if [ "$(cat ${CI_JOB_NAME}.status)" == "${CI_COMMIT_SHA}" ]; then
@ -117,9 +114,26 @@ variables:
when: on_success
expire_in: 10 days
.scheduled-mxe:
.scheduled-mxe-focal-shared-large:
variables:
CI_QMAKE: /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.shared-qmake-qt5
CI_CMAKE: /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.shared-cmake
CI_USE_MXE: 1
extends: .scheduled-test
image: mxe-dev
before_script:
- !reference [.add-ssh-key, before_script]
image: mxe-focal-shared-large
tags: ['docker']
.scheduled-mxe-focal-static-large:
variables:
CI_QMAKE: /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.static-qmake-qt5
CI_CMAKE: /usr/lib/mxe/usr/bin/x86_64-w64-mingw32.static-cmake
CI_USE_MXE: 1
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: mxe-focal-static-large
tags: ['docker']
.scheduled-smolensk15:
@ -129,65 +143,79 @@ variables:
.scheduled-smolensk16:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: smolensk16-dev
tags: ['docker']
.scheduled-smolensk17:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: smolensk17-dev
tags: ['docker']
.scheduled-orel212:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: orel212-dev
tags: ['docker']
.scheduled-bionic:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: bionic-dev
tags: ['docker']
.scheduled-focal:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: focal-dev
tags: ['docker']
.scheduled-jammy:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
image: jammy-dev
tags: ['docker']
.scheduled-elbrus:
extends: .scheduled-test
before_script:
- !reference [.add-ssh-key, before_script]
tags: ['elbrus']
.check-format-sources:
extends: .use-ninja
image: jammy-dev
tags: ['format']
before_script:
- !reference [.add-ssh-key, before_script]
image: jammy-dev
tags: ['format']
script:
- cmake -B ${CI_BUILD_DIR} .
- cmake --build ${CI_BUILD_DIR} --target check-format-sources
- ${CI_CMAKE} -B ${CI_BUILD_DIR} .
- ${CI_CMAKE} --build ${CI_BUILD_DIR} --target check-format-sources
.myx-cmake-uncrustify-check:
.myx-uncrustify-check:
extends: .use-ninja
image: jammy-dev
tags: ['format']
before_script:
- !reference [.add-ssh-key, before_script]
image: jammy-dev
tags: ['format']
script:
- cmake -B ${CI_BUILD_DIR} .
- cmake --build ${CI_BUILD_DIR} --target myx-cmake-uncrustify-check
- ${CI_CMAKE} -B ${CI_BUILD_DIR} .
- ${CI_CMAKE} --build ${CI_BUILD_DIR} --target myx-uncrustify-check
.format-sources-check-custom:
extends: .use-ninja
image: jammy-dev
tags: ['format']
before_script:
- !reference [.add-ssh-key, before_script]
image: jammy-dev
tags: ['format']
script:
- >
if [ -n "${CHECK_FORMAT_SOURCES_CMD}" ]; then
@ -196,116 +224,116 @@ variables:
.qmake-analyze-pvs-studio:
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
image: jammy-dev
tags: ['analyze']
script:
- qmake ${QMAKE_PRO_FILE}
- ${CI_QMAKE} ${QMAKE_PRO_FILE}
- bear -- make -k -j$(nproc)
- pvs-studio-analyzer analyze -a 29 -j$(nproc)
- plog-converter -a "GA:1,2,3;64:1;OP:1,2;CS:1,2" -t errorfile PVS-Studio.log
.qmake-analyze-clang-tidy:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-clang
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- qmake ${QMAKE_PRO_FILE}
- ${CI_QMAKE} ${QMAKE_PRO_FILE}
- bear -- make -k -j$(nproc)
- run-clang-tidy-14 -checks=-*,bugprone-*,clang-analyzer-*,misc-*,modernize-*,performance-*,portability-*
.qmake-analyze-clazy:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-clang
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- qmake ${QMAKE_PRO_FILE}
- ${CI_QMAKE} ${QMAKE_PRO_FILE}
- bear -- make -k -j$(nproc)
- find . -name "*.cpp" -print0 | xargs -0 clazy-standalone --ignore-dirs=/usr -checks=level2 -p compile_commands.json
.cmake-analyze-pvs-studio:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-ninja
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- >
if [ -n "${CUSTOM_ANALYZE_PVS}" ]; then
${CUSTOM_ANALYZE_PVS}
else
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
${CI_CMAKE} -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
pvs-studio-analyzer analyze -a 29 -f ${CI_BUILD_DIR}/compile_commands.json -j -o ${CI_BUILD_DIR}/PVS-Studio.log
plog-converter -a "GA:1,2,3;64:1;OP:1,2;CS:1,2" -t errorfile ${CI_BUILD_DIR}/PVS-Studio.log
fi
.cmake-analyze-clang-tidy:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-ninja
extends: .use-clang
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- >
if [ -n "${CUSTOM_ANALYZE_CLANG_TIDY}" ]; then
${CUSTOM_ANALYZE_CLANG_TIDY}
else
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
${CI_CMAKE} -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
run-clang-tidy-14 -checks=-*,bugprone-*,clang-analyzer-*,misc-*,modernize-*,performance-*,portability-* -p ${CI_BUILD_DIR}
fi
.cmake-analyze-clazy:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-ninja
extends: .use-clang
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- >
if [ -n "${CUSTOM_ANALYZE_CLAZY}" ]; then
${CUSTOM_ANALYZE_CLAZY}
else
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
${CI_CMAKE} -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -B ${CI_BUILD_DIR} .
find . -name "*.cpp" -print0 | xargs -0 clazy-standalone --ignore-dirs=/usr -checks=level2 -p ${CI_BUILD_DIR}/compile_commands.json
fi
.myx-cmake-analyze-pvs-studio:
.myxx-analyze-pvs-studio:
before_script:
- !reference [.add-ssh-key, before_script]
extends: .use-ninja
image: jammy-dev
tags: ['analyze']
script:
- ${CI_CMAKE} -B ${CI_BUILD_DIR} .
- ${CI_CMAKE} --build ${CI_BUILD_DIR} --target myxx-analyze-pvs-studio --parallel
.myxx-analyze-clang-tidy:
before_script:
- !reference [.add-ssh-key, before_script]
script:
- cmake -B ${CI_BUILD_DIR} .
- cmake --build ${CI_BUILD_DIR} --target myx-cmake-analyze-pvs-studio --parallel
.myx-cmake-analyze-clang-tidy:
extends: .use-ninja
extends: .use-clang
image: jammy-dev
tags: ['analyze']
script:
- ${CI_CMAKE} -B ${CI_BUILD_DIR} .
- ${CI_CMAKE} --build ${CI_BUILD_DIR} --target myxx-analyze-clang-tidy --parallel
.myxx-analyze-clazy:
before_script:
- !reference [.add-ssh-key, before_script]
script:
- cmake -B ${CI_BUILD_DIR} .
- cmake --build build --target myx-cmake-analyze-clang-tidy --parallel
.myx-cmake-analyze-clazy:
extends: .use-ninja
image: jammy-dev
tags: ['analyze']
before_script:
- !reference [.add-ssh-key, before_script]
script:
- cmake -B ${CI_BUILD_DIR} .
- cmake --build ${CI_BUILD_DIR} --target myx-cmake-analyze-clazy --parallel
- ${CI_CMAKE} -B ${CI_BUILD_DIR} .
- ${CI_CMAKE} --build ${CI_BUILD_DIR} --target myxx-analyze-clazy --parallel