summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-x.ci/build-efl-app.sh2
-rwxr-xr-x.ci/ci-configure.sh67
-rwxr-xr-x.ci/ci-linux-build.sh63
-rwxr-xr-x.ci/ci-make-benchmark.sh14
-rwxr-xr-x.ci/ci-make-checkbuild.sh14
-rwxr-xr-x.ci/ci-make-distcheck.sh14
-rwxr-xr-x.ci/ci-make-examples.sh14
-rwxr-xr-x.ci/ci-make-install.sh14
-rwxr-xr-x.ci/ci-make.sh10
-rwxr-xr-x.ci/ci-osx-build.sh20
-rw-r--r--.travis.yml24
11 files changed, 169 insertions, 87 deletions
diff --git a/.ci/build-efl-app.sh b/.ci/build-efl-app.sh
index ac22e09db5..94013a3ba3 100755
--- a/.ci/build-efl-app.sh
+++ b/.ci/build-efl-app.sh
@@ -5,7 +5,7 @@ set -e
5cd / 5cd /
6 6
7#clone our examples from efl 7#clone our examples from efl
8git clone http://git.enlightenment.org/tools/examples.git/ 8git clone --depth=1 -b master http://git.enlightenment.org/tools/examples.git/
9 9
10cd examples/apps/c/life/ 10cd examples/apps/c/life/
11 11
diff --git a/.ci/ci-configure.sh b/.ci/ci-configure.sh
new file mode 100755
index 0000000000..28897dafcc
--- /dev/null
+++ b/.ci/ci-configure.sh
@@ -0,0 +1,67 @@
1#!/bin/sh
2
3set -e
4
5CI_BUILD_TYPE="$1"
6
7export MAKEFLAGS="-j5"
8export EIO_MONITOR_POLL=1
9
10DEFAULT_LINUX_COPTS="--prefix=/usr/ --with-tests=regular --disable-cxx-bindings"
11
12WAYLAND_LINUX_COPTS=" --enable-wayland --enable-elput --enable-drm \
13--enable-wayland-ivi-shell --enable-gl-drm --with-opengl=es --enable-egl"
14
15MISC_LINUX_COPTS=" --enable-harfbuzz --enable-liblz4 --enable-image-loader-webp --enable-xinput22 \
16--enable-multisense --enable-lua-old --enable-xpresent --enable-hyphen \
17--enable-pixman --enable-pixman-font --enable-pixman-rect --enable-pixman-line \
18--enable-pixman-poly --enable-pixman-image --enable-pixman-image-scale-sample \
19--enable-image-loader-generic --enable-libuv --enable-tile-rotate --enable-vnc-server \
20--enable-sdl --enable-fb --enable-v4l2 --enable-cserve --enable-always-build-examples \
21--enable-ecore-wayland --enable-ecore-drm --enable-cancel-ok --with-crypto=gnutls \
22--enable-debug --disable-gstreamer1 --enable-gstreamer"
23
24MISC_DISABLED_LINUX_COPTS=" --disable-neon --disable-libeeze --disable-systemd --disable-magic-debug \
25--disable-valgrind --disable-gstreamer1 \
26--disable-fontconfig --disable-fribidi --disable-poppler --disable-spectre --disable-libraw \
27--disable-librsvg --disable-xcf --disable-libmount --disable-tslib --disable-audio \
28--disable-pulseaudio --disable-avahi --disable-xinput2 --disable-xim --disable-scim \
29--disable-ibus --disable-physics --disable-quick-launch --disable-elua"
30
31RELEASE_READY_LINUX_COPTS=" --with-profile=release"
32
33if [ "$DISTRO" != "" ] ; then
34 # Normal build test of all targets
35 OPTS="$DEFAULT_LINUX_COPTS"
36
37 if [ "$1" = "wayland" ]; then
38 OPTS="$OPTS $WAYLAND_LINUX_COPTS"
39 fi
40
41 if [ "$1" = "misc" ]; then
42 OPTS="$OPTS $MISC_LINUX_COPTS"
43 fi
44
45 if [ "$1" = "misc-disabled" ]; then
46 OPTS="$OPTS $MISC_DISABLED_LINUX_COPTS"
47 fi
48
49 if [ "$1" = "release-ready" ]; then
50 OPTS="$OPTS $RELEASE_READY_LINUX_COPTS"
51 fi
52 docker run --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 -v `pwd`:/src -w /src stefanschmidt1/ci-support-files:$DISTRO ./autogen.sh $OPTS
53else
54 OSX_COPTS="--disable-cxx-bindings"
55
56 # Prepare OSX env for build
57 mkdir -p ~/Library/LaunchAgents
58 ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents
59 launchctl load ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist
60 export PATH="$(brew --prefix gettext)/bin:$PATH"
61
62 export CFLAGS="-I/usr/local/opt/openssl/include $CFLAGS"
63 export LDFLAGS="-L/usr/local/opt/openssl/lib $LDFLAGS"
64
65 # Normal build test of all targets
66 ./autogen.sh $OSX_COPTS
67fi
diff --git a/.ci/ci-linux-build.sh b/.ci/ci-linux-build.sh
deleted file mode 100755
index ddc33fef50..0000000000
--- a/.ci/ci-linux-build.sh
+++ /dev/null
@@ -1,63 +0,0 @@
1#!/bin/sh
2
3set -e
4
5CI_BUILD_TYPE=$1
6
7DEFAULT_COPTS="--prefix=/usr/ --with-tests=regular --disable-cxx-bindings"
8
9WAYLAND_COPTS="--with-tests=regular --enable-wayland --enable-elput --enable-drm \
10--enable-wayland-ivi-shell --enable-gl-drm --with-opengl=es --enable-egl"
11
12MISC_COPTS="--enable-harfbuzz --enable-liblz4 --enable-image-loader-webp --enable-xinput22 \
13--enable-multisense --enable-lua-old --enable-xpresent --enable-hyphen \
14--enable-pixman --enable-pixman-font --enable-pixman-rect --enable-pixman-line \
15--enable-pixman-poly --enable-pixman-image --enable-pixman-image-scale-sample \
16--enable-image-loader-generic --enable-libuv --enable-tile-rotate --enable-vnc-server \
17--enable-sdl --enable-fb --enable-v4l2 --enable-cserve --enable-always-build-examples \
18--enable-ecore-wayland --enable-ecore-drm --enable-cancel-ok --with-crypto=gnutls \
19--enable-debug --disable-gstreamer1 --enable-gstreamer"
20
21MISC_DISABLED_COPTS="--disable-neon --disable-libeeze --disable-systemd --disable-magic-debug \
22--disable-valgrind --disable-cxx-bindings --disable-gstreamer1 \
23--disable-fontconfig --disable-fribidi --disable-poppler --disable-spectre --disable-libraw \
24--disable-librsvg --disable-xcf --disable-libmount --disable-tslib --disable-audio \
25--disable-pulseaudio --disable-avahi --disable-xinput2 --disable-xim --disable-scim \
26--disable-ibus --disable-physics --disable-quick-launch --disable-elua"
27
28RELEASE_READY_COPTS="--with-profile=release"
29
30if [ "$CI_BUILD_TYPE" = "" ]; then
31 # Normal build test of all targets
32 ./autogen.sh $DEFAULT_COPTS
33 make
34 make check-build
35 make examples
36 make benchmark
37 make install
38 ./.ci/build-efl-app.sh
39fi
40
41if [ "$CI_BUILD_TYPE" = "wayland" ]; then
42 ./autogen.sh $WAYLAND_COPTS
43 make
44 make examples
45fi
46
47if [ "$CI_BUILD_TYPE" = "misc" ]; then
48 ./autogen.sh $MISC_COPTS
49 make
50 make examples
51fi
52
53if [ "$CI_BUILD_TYPE" = "misc-disabled" ]; then
54 ./autogen.sh $MISC_DISABLED_COPTS
55 make
56 make examples
57fi
58
59if [ "$CI_BUILD_TYPE" = "release-ready" ]; then
60 ./autogen.sh $RELEASE_READY_COPTS
61 make
62 make distcheck
63fi
diff --git a/.ci/ci-make-benchmark.sh b/.ci/ci-make-benchmark.sh
new file mode 100755
index 0000000000..bd63977724
--- /dev/null
+++ b/.ci/ci-make-benchmark.sh
@@ -0,0 +1,14 @@
1#!/bin/sh
2
3set -e
4
5if [ "$1" = "release-ready" ] ; then
6 exit 0
7fi
8
9if [ "$DISTRO" != "" ] ; then
10 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make benchmark
11else
12 export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH"
13 make benchmark
14fi
diff --git a/.ci/ci-make-checkbuild.sh b/.ci/ci-make-checkbuild.sh
new file mode 100755
index 0000000000..2cb852dba6
--- /dev/null
+++ b/.ci/ci-make-checkbuild.sh
@@ -0,0 +1,14 @@
1#!/bin/sh
2
3set -e
4
5if [ "$1" = "release-ready" ] ; then
6 exit 0
7fi
8
9if [ "$DISTRO" != "" ] ; then
10 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make check-build
11else
12 export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH"
13 make check-build
14fi
diff --git a/.ci/ci-make-distcheck.sh b/.ci/ci-make-distcheck.sh
new file mode 100755
index 0000000000..144b95782e
--- /dev/null
+++ b/.ci/ci-make-distcheck.sh
@@ -0,0 +1,14 @@
1#!/bin/sh
2
3set -e
4
5if [ "$1" != "release-ready" ] ; then
6 exit 0
7fi
8
9if [ "$DISTRO" != "" ] ; then
10 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make distcheck
11else
12 export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH"
13 make
14fi
diff --git a/.ci/ci-make-examples.sh b/.ci/ci-make-examples.sh
new file mode 100755
index 0000000000..4ab0f70b7b
--- /dev/null
+++ b/.ci/ci-make-examples.sh
@@ -0,0 +1,14 @@
1#!/bin/sh
2
3set -e
4
5if [ "$1" = "release-ready" ] ; then
6 exit 0
7fi
8
9if [ "$DISTRO" != "" ] ; then
10 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make examples
11else
12 export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH"
13 make examples
14fi
diff --git a/.ci/ci-make-install.sh b/.ci/ci-make-install.sh
new file mode 100755
index 0000000000..9856179080
--- /dev/null
+++ b/.ci/ci-make-install.sh
@@ -0,0 +1,14 @@
1#!/bin/sh
2
3set -e
4
5if [ "$1" = "release-ready" ] ; then
6 exit 0
7fi
8
9if [ "$DISTRO" != "" ] ; then
10 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make install
11else
12 export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH"
13 make install
14fi
diff --git a/.ci/ci-make.sh b/.ci/ci-make.sh
new file mode 100755
index 0000000000..8bd445f276
--- /dev/null
+++ b/.ci/ci-make.sh
@@ -0,0 +1,10 @@
1#!/bin/sh
2
3set -e
4
5if [ "$DISTRO" != "" ] ; then
6 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make
7else
8 export PATH="$(brew --prefix gettext)/bin:$PATH"
9 make
10fi
diff --git a/.ci/ci-osx-build.sh b/.ci/ci-osx-build.sh
deleted file mode 100755
index 4e7a0f05cc..0000000000
--- a/.ci/ci-osx-build.sh
+++ /dev/null
@@ -1,20 +0,0 @@
1#!/bin/sh
2
3set -e
4
5COPTS="--disable-cxx-bindings"
6
7# Prepare OSX env for build
8mkdir -p ~/Library/LaunchAgents
9ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents
10launchctl load ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist
11export PATH="$(brew --prefix gettext)/bin:$PATH"
12
13export CFLAGS="-I/usr/local/opt/openssl/include $CFLAGS"
14export LDFLAGS="-L/usr/local/opt/openssl/lib $LDFLAGS"
15
16# Normal build test of all targets
17./autogen.sh $COPTS $@
18make
19make examples
20#make benchmark
diff --git a/.travis.yml b/.travis.yml
index db48ce3840..817e4f177f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,6 +52,7 @@ matrix:
52 - os: osx 52 - os: osx
53 env: 53 env:
54 DISTRO=Archlinux 54 DISTRO=Archlinux
55
55 - os: linux 56 - os: linux
56 env: 57 env:
57 allow_failures: 58 allow_failures:
@@ -66,13 +67,30 @@ before_script:
66 if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$DISTRO" != "" ]]; then 67 if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$DISTRO" != "" ]]; then
67 docker pull stefanschmidt1/ci-support-files:$DISTRO 68 docker pull stefanschmidt1/ci-support-files:$DISTRO
68 fi 69 fi
70 - |
71 if [[ "$TRAVIS_OS_NAME" == "linux" ]] ; then
72 docker version
73 docker run --cidfile $HOME/cid -t -d -v `pwd`:/src -w /src stefanschmidt1/ci-support-files:$DISTRO bash
74 cat $HOME/cid
75 fi
69 76
70script: 77script:
78 - .ci/ci-configure.sh "$CI_BUILD_TYPE"
79 - .ci/ci-make.sh "$CI_BUILD_TYPE"
80 - .ci/ci-make-checkbuild.sh "$CI_BUILD_TYPE"
81 - .ci/ci-make-examples.sh "$CI_BUILD_TYPE"
71 - | 82 - |
72 if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$DISTRO" != "" ]]; then 83 if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$CI_BUILD_TYPE" == "" ]]; then
73 docker run -v `pwd`:/src -w /src stefanschmidt1/ci-support-files:$DISTRO /src/.ci/ci-linux-build.sh $CI_BUILD_TYPE 84 .ci/ci-make-benchmark.sh "$CI_BUILD_TYPE"
85 fi
86 - .ci/ci-make-install.sh "$CI_BUILD_TYPE"
87 - .ci/ci-make-distcheck.sh "$CI_BUILD_TYPE"
88 - |
89 if [[ "$DISTRO" == "" ]] && [[ "$TRAVIS_OS_NAME" != "linux" ]] ; then
90 .ci/build-efl-app.sh
91 elif [[ "$CI_BUILD_TYPE" != "release-ready" ]] ; then
92 docker exec --env MAKEFLAGS="-j5" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) .ci/build-efl-app.sh
74 fi 93 fi
75 - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then .ci/ci-osx-build.sh ; fi
76 94
77after_success: 95after_success:
78 - | 96 - |