# Dependencies are managed in the Dockerfile in the inkscape-ci-docker # Git repository. Change them there, wait a bit, and then we'll use # the new ones here in these builds. image: registry.gitlab.com/inkscape/inkscape-ci-docker/master variables: GIT_DEPTH: "10" GIT_SUBMODULE_STRATEGY: recursive ####################### # # # Building inkscape # # # ####################### # Linux, Appimage, mac. Windows is handled in .appveyor.yml ### On linux... inkscape:linux: stage: build except: - schedules cache: key: "cache-linux" paths: - ccache/ before_script: # CCache Config - mkdir -p ccache - export CCACHE_BASEDIR=${PWD} - export CCACHE_DIR=${PWD}/ccache script: - mkdir -p build/conf - ln -s . share/inkscape - cd build - cmake .. -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=$PWD/install_dir/ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON - make -j3 install - make -j3 tests - cpack -G DEB - rm -rf src _CPack_Packages # exclude from artifacts - cd .. artifacts: expire_in: 1 year paths: - build/ ### + Appimage (custom script, cf generate.sh) appimage:linux: stage: build except: - schedules cache: key: "cache-appimage" paths: - ccache/ before_script: # CCache Config - mkdir -p ccache - export CCACHE_BASEDIR=${PWD} - export CCACHE_DIR=${PWD}/ccache script: - bash -ex packaging/appimage/generate.sh artifacts: expire_in: 1 year paths: - Inkscape*.AppImage* ### On mac... (this needs a custom mac runner) inkscape:mac: stage: build tags: - mac only: - branches@inkscape/inkscape - branches@dehesselle/inkscape except: - schedules before_script: - packaging/macos/build_toolset.sh script: - packaging/macos/build_inkscape.sh artifacts: expire_in: 1 year paths: - artifacts/ allow_failure: true ########################### # # # Various code checkers # # # ########################### ### This script checks for *merge requests* that they conform to the code style. It allows failures. # cf ./_clang-format and https://inkscape.org/develop/coding-style/ codequality: stage: build except: - schedules script: - git fetch https://gitlab.com/inkscape/inkscape.git - echo "Your commit does not comply exactly with the clang-format style checker.\nPlease review the following diff or apply it with\n \$ git apply < public/index.html - if test -e scan; then rm -fr public/scan-build && cp -rv scan/* public/scan-build; fi - if test -e doc/doxygen; then cp -rv doc/doxygen/html public/doxygen; fi - if test -e doc/doxygen-extensions; then cp -rv doc/doxygen-extensions/html public/doxygen-extensions; fi artifacts: paths: - public