summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml155
1 files changed, 155 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 00000000..f6e63785
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,155 @@
+# vim: set ts=2 sts=2 sw=2 expandtab :
+dist: xenial
+sudo: required
+language: bash
+services:
+ - docker
+
+# Use travis branch for test.
+#branches:
+# only:
+# - travis
+
+before_install:
+ - curl -L -o docker-build https://github.com/mate-desktop/mate-dev-scripts/raw/travis/travis/docker-build
+ - chmod +x docker-build
+
+install:
+ - ./docker-build --name ${DISTRO} --config .travis.yml --install
+
+script:
+ - ./docker-build --name ${DISTRO} --verbose --config .travis.yml --build autotools
+
+env:
+ - DISTRO="base/archlinux"
+ - DISTRO="debian:sid"
+ - DISTRO="fedora:29"
+ - DISTRO="ubuntu:18.10"
+
+##########################################################
+# THE FOLLOWING LINES IS USED BY docker-build
+##########################################################
+requires:
+ archlinux:
+ # Useful URL: https://git.archlinux.org/svntogit/community.git/tree/mate-panel
+ - gcc
+ - git
+ - make
+ # Append new requires below
+ - dbus-glib
+ - gobject-introspection
+ - intltool
+ - itstool
+ - libcanberra
+ - libmateweather
+ - libsm
+ - libwnck3
+ - mate-common
+ - mate-desktop
+ - mate-menus
+ - yelp-tools
+
+ debian:
+ # Useful URL: https://github.com/mate-desktop/debian-packages
+ # Useful URL: https://salsa.debian.org/debian-mate-team/mate-panel
+ - git
+ - make
+ # Append new requires below
+ - gir1.2-freedesktop
+ - gobject-introspection
+ - gtk-doc-tools
+ - intltool
+ - libatk1.0-dev
+ - libcairo2-dev
+ - libdconf-dev
+ - libgirepository1.0-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libice-dev
+ - libmate-desktop-dev
+ - libmate-menu-dev
+ - libmateweather-dev
+ - libpango1.0-dev
+ - librsvg2-dev
+ - libsm-dev
+ - libsoup2.4-dev
+ - libwnck-3-dev
+ - libx11-dev
+ - libxau-dev
+ - libxrandr-dev
+ - lsb-release
+ - mate-common
+ - yelp-tools
+
+ fedora:
+ # Useful URL: https://src.fedoraproject.org/cgit/rpms/mate-panel.git
+ - gcc
+ - git
+ - make
+ - redhat-rpm-config
+ # Append new requires below
+ - dbus-glib-devel
+ - desktop-file-utils
+ - gobject-introspection-devel
+ - gtk3-devel
+ - libcanberra-devel
+ - libmateweather-devel
+ - libwnck3-devel
+ - librsvg2-devel
+ - libSM-devel
+ - mate-common
+ - mate-desktop-devel
+ - mate-menus-devel
+ - yelp-tools
+
+ ubuntu:
+ - git
+ - make
+ # Append new requires below
+ - gir1.2-freedesktop
+ - gobject-introspection
+ - gtk-doc-tools
+ - intltool
+ - libatk1.0-dev
+ - libcairo2-dev
+ - libdconf-dev
+ - libgirepository1.0-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libice-dev
+ - libmate-desktop-dev
+ - libmate-menu-dev
+ - libmateweather-dev
+ - libpango1.0-dev
+ - librsvg2-dev
+ - libsm-dev
+ - libsoup2.4-dev
+ - libwnck-3-dev
+ - libx11-dev
+ - libxau-dev
+ - libxrandr-dev
+ - lsb-release
+ - mate-common
+ - yelp-tools
+
+variables:
+ - CFLAGS="-Wall -Werror=format-security"
+
+before_scripts:
+ - cd ${START_DIR}
+ - if [ ! -d mate-menus-build ]; then git clone --depth 1 https://github.com/mate-desktop/mate-menus.git mate-menus-build;fi
+ - cd mate-menus-build
+ - ./autogen.sh
+ - if [ ${DISTRO_NAME} == "debian" -o ${DISTRO_NAME} == "ubuntu" ];then
+ - ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --libexecdir=/usr/lib/x86_64-linux-gnu > /dev/null 2>&1
+ - else
+ - ./autogen.sh --prefix=/usr > /dev/null 2>&1
+ - fi
+ - if [ ${TRAVIS} == "false" ]; then make clean; fi
+ - make > /dev/null 2>&1
+ - make install > /dev/null 2>&1
+
+after_scripts:
+ - make distcheck > /dev/null
+ # Just look at the error output and return 0 always.
+ - 'if [ $? -ne 0 ];then RED="\033[0;31m"; NC="\033[0m"; printf "${RED}!!! ERROR: Run make distcheck failed.${NC}\n"; fi'