diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2021-06-07 22:00:32 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2021-06-07 22:00:32 +0200 |
commit | 881b8190534e1b721772e84fccdda2f129b03651 (patch) | |
tree | 70c23fc8eeb866c569e042bc7dcba2746434e5f7 | |
parent | a1cf55d0e0c267c9ce0740b7ea7ebb89821e2146 (diff) | |
parent | c7f55d9072b3fe4183beb0a2c04746c66cde8595 (diff) | |
download | librda-881b8190534e1b721772e84fccdda2f129b03651.tar.gz librda-881b8190534e1b721772e84fccdda2f129b03651.tar.bz2 librda-881b8190534e1b721772e84fccdda2f129b03651.zip |
Merge branch 'sunweaver-pr/travis-ci'
Attributes GH PR #5: https://github.com/ArcticaProject/librda/pull/5
-rw-r--r-- | .build.yml | 112 | ||||
-rw-r--r-- | .travis.yml | 43 | ||||
-rw-r--r-- | src/Makefile.am | 1 | ||||
-rw-r--r-- | util/rdacheck.c | 2 |
4 files changed, 157 insertions, 1 deletions
diff --git a/.build.yml b/.build.yml new file mode 100644 index 0000000..0060274 --- /dev/null +++ b/.build.yml @@ -0,0 +1,112 @@ +######################################################### +# THE FOLLOWING LINES IS USED BY docker-build +########################################################## +requires: + archlinux: + # Useful URL: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=librda + - clang + - gcc + - git + - make + - startup-notification + - which + - gobject-introspection + - glib2 + - gtk3 + - intltool + + debian: + # Useful URL: https://salsa.debian.org/debian-remote-team/librda + - autopoint + - clang + - clang-tools + - g++ + - cppcheck + - git + - gobject-introspection + - libgirepository1.0-dev + - libtool + - intltool + - libglib2.0-dev + - libgtk-3-dev + - pkg-config + + ubuntu: + - autopoint + - clang + - clang-tools + - g++ + - git + - gobject-introspection + - libgirepository1.0-dev + - libtool + - intltool + - libglib2.0-dev + - libgtk-3-dev + - pkg-config + +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"' + +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 + - elif [ -e ./configure.ac ]; then + - autoreconf -vfi + - scan-build $CHECKERS ./configure --prefix=/usr --enable-gtk-doc --enable-compile-warnings=maximum + - 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..6ebac89 --- /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 Ayatana Indicators 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/src/Makefile.am b/src/Makefile.am index 849f8d9..88e8ffa 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -32,6 +32,7 @@ librda_la_SOURCES = \ $(NULL) librda_la_CFLAGS = \ + -Wall -Werror \ $(LIBRDA_CFLAGS) \ $(NULL) diff --git a/util/rdacheck.c b/util/rdacheck.c index 46e1fab..44a91ff 100644 --- a/util/rdacheck.c +++ b/util/rdacheck.c @@ -28,7 +28,7 @@ Copyright 2019, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> #include <rda.h> int -main (int argc, char ** argv) +main (int __attribute__((unused)) argc, char __attribute__((unused)) **argv) { rda_init(); g_message(_("Currently used remote technology: %s"), rda_get_remote_technology_name()); |