summaryrefslogtreecommitdiff
path: root/.build.yml
diff options
context:
space:
mode:
Diffstat (limited to '.build.yml')
-rw-r--r--.build.yml183
1 files changed, 183 insertions, 0 deletions
diff --git a/.build.yml b/.build.yml
new file mode 100644
index 0000000..2f33e81
--- /dev/null
+++ b/.build.yml
@@ -0,0 +1,183 @@
+##########################################################
+# THE FOLLOWING LINES IS USED BY docker-build
+##########################################################
+requires:
+ archlinux:
+ # Useful URL: https://git.archlinux.org/svntogit/community.git/tree/mate-screensaver
+ - autoconf-archive
+ - clang
+ - gcc
+ - git
+ - libmatekbd
+ - libnotify
+ - libxss
+ - make
+ - mate-common
+ - mate-desktop
+ - mate-menus
+ - mate-session-manager
+ - systemd
+ - which
+
+ debian:
+ # Useful URL: https://github.com/mate-desktop/debian-packages
+ # Useful URL: https://salsa.debian.org/debian-mate-team/mate-screensaver
+ - autoconf-archive
+ - autopoint
+ - clang
+ - clang-tools
+ - cppcheck
+ - gcc
+ - git
+ - libdbus-glib-1-dev
+ - libdconf-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libmate-desktop-dev
+ - libmate-menu-dev
+ - libmatekbd-dev
+ - libnotify-dev
+ - libpam0g-dev
+ - libstartup-notification0-dev
+ - libsystemd-dev
+ - libx11-dev
+ - libxext-dev
+ - libxss-dev
+ - libxt-dev
+ - libxxf86vm-dev
+ - make
+ - mate-common
+ - x11proto-scrnsaver-dev
+ - x11proto-xext-dev
+ - x11proto-xf86vidmode-dev
+ - xmlto
+
+ fedora:
+ # Useful URL: https://src.fedoraproject.org/cgit/rpms/mate-screensaver.git
+ - autoconf-archive
+ - clang
+ - clang-analyzer
+ - cppcheck-htmlreport
+ - dbus-glib-devel
+ - desktop-file-utils
+ - gcc
+ - git
+ - gtk3-devel
+ - libX11-devel
+ - libXScrnSaver-devel
+ - libXinerama-devel
+ - libXmu-devel
+ - libXtst-devel
+ - libXxf86vm-devel
+ - libmatekbd-devel
+ - libnotify-devel
+ - make
+ - mate-common
+ - mate-desktop-devel
+ - mate-menus-devel
+ - mesa-libGL-devel
+ - pam-devel
+ - redhat-rpm-config
+ - systemd-devel
+ - xmlto
+ - xorg-x11-proto-devel
+
+ ubuntu:
+ - autoconf-archive
+ - autopoint
+ - clang
+ - clang-tools
+ - git
+ - libdbus-glib-1-dev
+ - libdconf-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libmate-desktop-dev
+ - libmate-menu-dev
+ - libmatekbd-dev
+ - libnotify-dev
+ - libpam0g-dev
+ - libstartup-notification0-dev
+ - libsystemd-dev
+ - libx11-dev
+ - libxext-dev
+ - libxss-dev
+ - libxt-dev
+ - libxxf86vm-dev
+ - make
+ - mate-common
+ - x11proto-scrnsaver-dev
+ - x11proto-xext-dev
+ - x11proto-xf86vidmode-dev
+ - xmlto
+
+variables:
+ - CFLAGS="-Wall -Werror=format-security -Wredundant-decls"
+ - 'CHECKERS="
+ -enable-checker deadcode.DeadStores
+ -enable-checker alpha.deadcode.UnreachableCode
+ -enable-checker alpha.core.CastSize
+ -enable-checker alpha.core.CastToStruct
+ -enable-checker alpha.core.IdenticalExpr
+ -enable-checker alpha.core.SizeofPtr
+ -enable-checker alpha.security.ArrayBoundV2
+ -enable-checker alpha.security.MallocOverflow
+ -enable-checker alpha.security.ReturnPtrRange
+ -enable-checker alpha.unix.SimpleStream
+ -enable-checker alpha.unix.cstring.BufferOverlap
+ -enable-checker alpha.unix.cstring.NotNullTerminated
+ -enable-checker alpha.unix.cstring.OutOfBounds
+ -enable-checker alpha.core.FixedAddr
+ -enable-checker security.insecureAPI.strcpy"'
+
+before_scripts:
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - curl -Ls -o debian.sh https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/debian.sh
+ - bash ./debian.sh
+ - fi
+ # Install mate-common from tarball
+ - cd ${START_DIR}
+ - '[ -f mate-common-1.23.3.tar.xz ] || curl -Ls -o mate-common-1.23.3.tar.xz http://pub.mate-desktop.org/releases/1.23/mate-common-1.23.3.tar.xz'
+ - tar xf mate-common-1.23.3.tar.xz
+ - cd mate-common-1.23.3
+ - if [ ${DISTRO_NAME} == "debian" -o ${DISTRO_NAME} == "ubuntu" ];then
+ - ./configure --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --libexecdir=/usr/lib/x86_64-linux-gnu
+ - else
+ - ./configure --prefix=/usr
+ - fi
+ - make
+ - make install
+
+build_scripts:
+ - ./autogen.sh --enable-compile-warnings=maximum
+ - scan-build $CHECKERS ./configure --enable-compile-warnings=maximum
+ - if [ $CPU_COUNT -gt 1 ]; then
+ - scan-build $CHECKERS --keep-cc -o html-report make -j $CPU_COUNT
+ - else
+ - scan-build $CHECKERS --keep-cc -o html-report make
+ - fi
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - cppcheck --enable=warning,style,performance,portability,information,missingInclude -i'mate-menus-build' .
+ - fi
+
+after_scripts:
+ - if [ ${DISTRO_NAME} == "fedora" ];then
+ - cppcheck --xml --output-file=cppcheck.xml --enable=warning,style,performance,portability,information,missingInclude -i'mate-menus-build' .
+ - cppcheck-htmlreport --title=${REPO_NAME} --file=cppcheck.xml --report-dir=cppcheck-htmlreport
+ - ./gen-index -l 20
+ - fi
+ - make distcheck
+
+releases:
+ draft: false
+ prerelease: false
+ checksum: true
+ file_glob: true
+ files: mate-screensaver-*.tar.xz
+ github_release:
+ tags: true
+ overwrite: true
+ base_version: 1.20.0
+ notify_servers:
+ - https://release.mate-desktop.org/release
+