aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Tari <robert@tari.in>2021-05-25 15:52:45 +0200
committerRobert Tari <robert@tari.in>2021-05-25 15:52:45 +0200
commit31484851efadc92f86fb117dcf9b6c81b053de10 (patch)
tree309a7cb1f30a5f0f0ea808b5cc0bb4b3f7414a3a
parent826f84808dd44507eee8454eee8b3c5ec2d51c0f (diff)
parent3400cf9dcaa9b0313eb196ac8e7bd6c2d38eed56 (diff)
downloadlibayatana-appindicator-31484851efadc92f86fb117dcf9b6c81b053de10.tar.gz
libayatana-appindicator-31484851efadc92f86fb117dcf9b6c81b053de10.tar.bz2
libayatana-appindicator-31484851efadc92f86fb117dcf9b6c81b053de10.zip
Merge branch 'sunweaver-pr/travis-ci'
Attributes GH PR #21: https://github.com/AyatanaIndicators/libayatana-appindicator/pull/21
-rw-r--r--.build.yml164
-rw-r--r--.travis.yml43
-rw-r--r--configure.ac4
-rw-r--r--src/Makefile.am2
-rw-r--r--tests/Makefile.am16
5 files changed, 218 insertions, 11 deletions
diff --git a/.build.yml b/.build.yml
new file mode 100644
index 0000000..69b687b
--- /dev/null
+++ b/.build.yml
@@ -0,0 +1,164 @@
+#########################################################
+# THE FOLLOWING LINES IS USED BY docker-build
+##########################################################
+requires:
+ archlinux:
+ # Useful URL: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=libayatana-appindicator
+ - clang
+ - gcc
+ - git
+ - make
+ - startup-notification
+ - which
+ - cmake
+ - cmake-extras
+ - mate-common
+ - gtk3
+ - glib2
+ - libdbusmenu-gtk3
+ - dbus-glib
+ - gobject-introspection
+
+ debian:
+ # Useful URL: https://salsa.debian.org/debian-ayatana-team/libayatana-appindicator
+ - autopoint
+ - clang
+ - clang-tools
+ - g++
+ - cppcheck
+ - git
+ - cmake
+ - cmake-extras
+ - mate-common
+ - cli-common-dev
+ - gobject-introspection
+ - intltool
+ - gtk-doc-tools
+ - libxml2-utils
+ - libnunit-cil-dev
+ - dbus-test-runner
+ - xvfb
+ - valac
+ - mono-devel
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libgtk2.0-dev
+ - gtk-sharp2-gapi
+ - libgtk2.0-cil-dev
+ - libdbus-glib-1-dev
+ - libdbusmenu-glib-dev
+ - libdbusmenu-gtk3-dev
+ - libdbusmenu-gtk-dev
+ - libgirepository1.0-dev
+
+ ubuntu:
+ - autopoint
+ - clang
+ - clang-tools
+ - g++
+ - git
+ - cmake
+ - cmake-extras
+ - mate-common
+ - cli-common-dev
+ - gobject-introspection
+ - intltool
+ - gtk-doc-tools
+ - libxml2-utils
+ - libnunit-cil-dev
+ - dbus-test-runner
+ - xvfb
+ - valac
+ - mono-devel
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - libgtk2.0-dev
+ - gtk-sharp2-gapi
+ - libgtk2.0-cil-dev
+ - libdbus-glib-1-dev
+ - libdbusmenu-glib-dev
+ - libdbusmenu-gtk3-dev
+ - libdbusmenu-gtk-dev
+ - libgirepository1.0-dev
+
+variables:
+ - '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:
+ - cd ${START_DIR}
+ - if [ ! -d ayatana-ido-build ]; then
+ - git clone --depth 1 https://github.com/AyatanaIndicators/ayatana-ido.git ayatana-ido-build
+ - fi
+ - cd ayatana-ido-build
+ - cmake . -DCMAKE_INSTALL_PREFIX=/usr
+ - make
+ - make install
+ -
+ - cd ${START_DIR}
+ - if [ ! -d libayatana-indicator-build ]; then
+ - git clone --depth 1 https://github.com/AyatanaIndicators/libayatana-indicator.git libayatana-indicator-build
+ - fi
+ - cd libayatana-indicator-build
+ - cmake . -DCMAKE_INSTALL_PREFIX=/usr
+ - make
+ - make install
+
+build_scripts:
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - export CFLAGS+=" -Wsign-compare -Wunused-parameter"
+ - cppcheck --enable=warning,style,performance,portability,information,missingInclude .
+ - fi
+ -
+ - if [ -e ./autogen.sh ]; then
+ - NOCONFIGURE=1 ./autogen.sh
+ - scan-build $CHECKERS ./configure --prefix=/usr --enable-gtk-doc --enable-compile-warnings=maximum
+ - elif [ -e ./CMakeLists.txt ]; then
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - scan-build $CHECKERS cmake . -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_TESTS=ON
+ - else
+ - scan-build $CHECKERS cmake . -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON
+ - fi
+ - else
+ - exit 1
+ - fi
+ -
+ - if [ $CPU_COUNT -gt 1 ]; then
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - scan-build $CHECKERS --keep-cc --use-cc=clang --use-c++=clang++ -o html-report make -j $CPU_COUNT
+ - make clean
+ - fi
+ - scan-build $CHECKERS --keep-cc -o html-report make -j $CPU_COUNT
+ - else
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - scan-build $CHECKERS --keep-cc --use-cc=clang --use-c++=clang++ -o html-report make
+ - make clean
+ - fi
+ - scan-build $CHECKERS --keep-cc -o html-report make
+ - fi
+
+after_scripts:
+ - if [ ${BUILD_TYPE} == "scripts" ];then
+ - XVFB_RUN="$(which xvfb-run || true)"
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - if [ -e ./autogen.sh ]; then
+ - ${XVFB_RUN} make check
+ - elif [ -e ./CMakeLists.txt ]; then
+ - ${XVFB_RUN} env CTEST_OUTPUT_ON_FAILURE=1 make test
+ - fi
+ - fi
+ - fi
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..5382638
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,43 @@
+# vim: set ts=2 sts=2 sw=2 expandtab :
+dist: bionic
+language: shell
+os: linux
+
+arch:
+ - amd64
+ - ppc64le
+
+services:
+ - docker
+
+addons:
+ apt:
+ packages:
+ - python3-pip
+ - python3-setuptools
+
+before_install:
+ # let's use the MATE project's docker build script...
+ - curl -Ls -o docker-build https://github.com/AyatanaIndicators/ayatana-dev-scripts/raw/master/travis/docker-build
+ - chmod +x docker-build
+
+install:
+ - pip3 install wheel
+ - pip3 install PyGithub
+ - ./docker-build --name ${DISTRO} --config .build.yml --install
+
+script:
+ - ./docker-build --name ${DISTRO} --verbose --config .build.yml --build scripts
+
+env:
+# temp disable of archlinux builds, see https://gitlab.archlinux.org/archlinux/archlinux-docker/-/issues/56
+# - DISTRO="archlinux:latest"
+ - DISTRO="debian:testing"
+ - DISTRO="debian:stable"
+# - DISTRO="ubuntu:rolling"
+ - DISTRO="ubuntu:focal"
+
+jobs:
+ exclude:
+ - env: DISTRO="archlinux:latest"
+ arch: ppc64le
diff --git a/configure.ac b/configure.ac
index 7c617fe..77ac763 100644
--- a/configure.ac
+++ b/configure.ac
@@ -52,9 +52,9 @@ DBUS_GLIB_REQUIRED_VERSION=0.82
AC_ARG_WITH([gtk],
[AS_HELP_STRING([--with-gtk],
- [Which version of gtk to use @<:@default=2@:>@])],
+ [Which version of gtk to use @<:@default=3@:>@])],
[],
- [with_gtk=2])
+ [with_gtk=3])
AS_IF([test "x$with_gtk" = x3],
[PKG_CHECK_MODULES(LIBRARY, gtk+-3.0 >= $GTK3_REQUIRED_VERSION
glib-2.0 >= $GLIB_REQUIRED_VERSION
diff --git a/src/Makefile.am b/src/Makefile.am
index c4c56fa..a1bbcf0 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -76,7 +76,7 @@ libayatana_appindicator_la_LDFLAGS = \
libayatana_appindicator_la_CFLAGS = \
$(LIBRARY_CFLAGS) \
$(COVERAGE_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-DG_LOG_DOMAIN=\"libayatana-appindicator\"
libayatana_appindicator_la_LIBADD = \
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 7d2adc6..0e1ef96 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -32,7 +32,7 @@ test_libappindicator_SOURCES = \
test_libappindicator_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
-DSRCDIR="\"$(srcdir)\"" \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_LDADD = \
@@ -49,7 +49,7 @@ test_libappindicator_dbus_client_SOURCES = \
test_libappindicator_dbus_client_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_dbus_client_LDADD = \
@@ -66,7 +66,7 @@ test_libappindicator_dbus_server_SOURCES = \
test_libappindicator_dbus_server_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_dbus_server_LDADD = \
@@ -83,7 +83,7 @@ test_libappindicator_status_client_SOURCES = \
test_libappindicator_status_client_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_status_client_LDADD = \
@@ -100,7 +100,7 @@ test_libappindicator_status_server_SOURCES = \
test_libappindicator_status_server_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_status_server_LDADD = \
@@ -116,7 +116,7 @@ test_libappindicator_fallback_watcher_SOURCES = \
test_libappindicator_fallback_watcher_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_fallback_watcher_LDADD = \
@@ -128,7 +128,7 @@ test_libappindicator_fallback_item_SOURCES = \
test_libappindicator_fallback_item_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_libappindicator_fallback_item_LDADD = \
@@ -198,7 +198,7 @@ test_simple_app_SOURCES = \
test_simple_app_CFLAGS = \
$(TESTDEPS_CFLAGS) $(LIBRARY_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-I$(top_srcdir)/src
test_simple_app_LDADD = \