aboutsummaryrefslogtreecommitdiff
path: root/.build.yml
diff options
context:
space:
mode:
Diffstat (limited to '.build.yml')
-rw-r--r--.build.yml179
1 files changed, 179 insertions, 0 deletions
diff --git a/.build.yml b/.build.yml
new file mode 100644
index 0000000..acd3c25
--- /dev/null
+++ b/.build.yml
@@ -0,0 +1,179 @@
+#########################################################
+# THE FOLLOWING LINES IS USED BY docker-build
+##########################################################
+requires:
+ archlinux:
+ # Useful URL: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=ayatana-indicator-application
+ - clang
+ - gcc
+ - git
+ - make
+ - startup-notification
+ - which
+ - cmake
+ - cmake-extras
+ - xorg-server-xvfb
+ - glib2
+ - gtk3
+ - dbus-glib
+ - json-glib
+ - intltool
+ - libdbusmenu-glib
+ - libdbusmenu-gtk3
+ - systemd
+ - vala
+
+ debian:
+ # Useful URL: https://salsa.debian.org/debian-ayatana-team/ayatana-indicator-application
+ - clang
+ - clang-tools
+ - g++
+ - cppcheck
+ - git
+ - cmake
+ - cmake-extras
+ - cli-common-dev
+ - intltool
+ - libdbus-1-dev
+ - libdbus-glib-1-dev
+ - libdbusmenu-glib-dev
+ - libdbusmenu-gtk3-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - gtk-sharp3-gapi
+ - libgtk3.0-cil-dev
+ - libjson-glib-dev
+ - libnunit-cil-dev
+ - libxml2-utils
+ - mono-devel
+ - systemd
+ - gobject-introspection
+ - gtk-doc-tools
+ - libgirepository1.0-dev
+ - libgtest-dev
+ - libx11-dev
+ - libxi-dev
+ - valac
+ - dbus-test-runner
+ - xauth
+ - xvfb
+
+ ubuntu:
+ - clang
+ - clang-tools
+ - g++
+ - git
+ - cmake
+ - cmake-extras
+ - cli-common-dev
+ - intltool
+ - libdbus-1-dev
+ - libdbus-glib-1-dev
+ - libdbusmenu-glib-dev
+ - libdbusmenu-gtk3-dev
+ - libglib2.0-dev
+ - libgtk-3-dev
+ - gtk-sharp3-gapi
+ - libgtk3.0-cil-dev
+ - libjson-glib-dev
+ - libnunit-cil-dev
+ - libxml2-utils
+ - mono-devel
+ - systemd
+ - gobject-introspection
+ - gtk-doc-tools
+ - libgirepository1.0-dev
+ - libgtest-dev
+ - libx11-dev
+ - libxi-dev
+ - valac
+ - dbus-test-runner
+ - xauth
+ - xvfb
+
+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 -
+ - rm -Rf ayatana-ido-build/
+ -
+ - 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
+ - cd -
+ - rm -Rf libayatana-indicator-build/
+ -
+ - cd ${START_DIR}
+ - if [ ! -d libayatana-appindicator-build ]; then
+ - git clone --depth 1 https://github.com/AyatanaIndicators/libayatana-appindicator.git libayatana-appindicator-build
+ - fi
+ - cd libayatana-appindicator-build
+ - cmake . -DCMAKE_INSTALL_PREFIX=/usr
+ - make
+ - make install
+ - rm -Rf libayatana-appindicator-build/
+
+build_scripts:
+ - if [ ${DISTRO_NAME} == "debian" ];then
+ - export CFLAGS+=" -Wsign-compare -Wunused-parameter"
+ - cppcheck --enable=warning,style,performance,portability,information,missingInclude .
+ - fi
+ -
+ - if [ -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
+# - XVFB_RUN="$(which xvfb-run || true)"
+# - if [ ${DISTRO_NAME} == "debian" ];then
+# - if [ -e ./CMakeLists.txt ]; then
+# - ${XVFB_RUN} env CTEST_OUTPUT_ON_FAILURE=1 make test
+# - fi
+# - fi