travis: release packages
[m6w6/libmemcached] / .travis.yml
index c62f6987187a80e4b9324465ae70797660134c38..bda3538e99772376cb3ae59c79b5c31f59bf94a0 100644 (file)
@@ -1,36 +1,80 @@
-services:
- - memcached
+os: linux
+dist: focal
+language: cpp
 
-addons:
- apt:
-  packages:
+jobs:
+  include:
+    - arch: arm64-graviton2
+      virt: lxd
+      group: edge
+    - arch: arm64
+    - arch: ppc64le
+    - arch: s390x
 
-dist: bionic
-language: cpp
-compiler:
- - gcc
- - clang
+branches:
+  only:
+    - v1.x
+    - travis
+
+addons:
+  apt:
+    packages:
+      - libevent-dev
+      - libsasl2-dev
+      - libtbb-dev
 
 env:
-# prod
- - enable_debug=no enable_assert=no enable_dtrace=no enable_silent_rules=yes ac_cv_vcs_system=none
-# debug
- - enable_debug=yes enable_assert=yes enable_dtrace=yes enable_silent_rules=no
-# sanitize=address
- - with_sanitize=address
-# sanitize=thread
- - with_sanitize=thread
-
-#before_install:
-#install:
+  - CMAKE_BUILD_TYPE=Debug BUILD_TESTING=true ENABLE_SASL=true ENABLE_HASH_HSIEH=true CFLAGS="-O0 --coverage" CXXFLAGS="-O0 --coverage"
+  - CMAKE_BUILD_TYPE=Release ENABLE_SASL=true ENABLE_HASH_HSIEH=true
+
+install:
+  - |
+    if test "$CMAKE_BUILT_TYPE" == "Debug"; then
+      git clone --depth 1 -b 1.6.7 https://github.com/memcached/memcached
+      cd memcached
+      ./autogen.sh
+      CFLAGS="-O2 -pipe" ./configure \
+       --prefix=/opt \
+       --disable-coverage \
+       --disable-docs \
+       --disable-dependency-tracking \
+       --enable-sasl \
+       --enable-sasl-pwdb \
+       ;
+      make -j2
+      make install
+      cd ..
+    endif
 
 before_script:
- - export enable_dependency_tracking=no
- - autoreconf -vfi
+  - mkdir build
+
+script:
+  - |
+    cd build
+    if test "$CMAKE_BUILD_TYPE" == "Debug"; then
+      cmake -DMEMCACHED_BINARY=/opt/bin/memcached ..
+      make -j2 VERBOSE=1
+      make test VERBOSE=1
+      make install DESTDIR=/tmp
+    else
+      cmake ..
+      make -j2
+      make package
+      cmake -DCPACK_COMPONENT_INSTALL=ON .
+      make package
+    fi
+
+after_failure:
+  - test "$CMAKE_BUILD_TYPE" == "Debug" && cat Testing/Temporary/LastTest.log || true
 
-#script:
+after_success:
+  - test "$CMAKE_BUILD_TYPE" == "Debug" && bash <(curl -s https://codecov.io/bash)
 
-#before_cache:
-#after_success:
-#after_failure:
-#after_script:
+notifications:
+  webhooks:
+    urls:
+      - https://webhooks.gitter.im/e/796c8423962228333c54
+    on_success: always
+    on_failure: change
+    on_start: never