summaryrefslogtreecommitdiff
path: root/.ci/ci-configure.sh
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2018-07-10 12:14:27 -0400
committerStefan Schmidt <s.schmidt@samsung.com>2018-07-26 08:55:58 +0200
commit45988ac6c0c8ca661601dcd9fdf10171a13568c7 (patch)
tree3640f1536a90d70ac27a663ab979c17de4c81730 /.ci/ci-configure.sh
parent24e5aa668a291a70a97483caaf551e25bd7ea95a (diff)
ci: refactor all build steps into separate build scripts
this moves each step of the ci build into a separate script with the build type passed as an argument, allowing for easier modification of each individual step as necessary and making travis.yml more readable Differential Revision: https://phab.enlightenment.org/D6604 also includes: ci: break out make commands into travis.yml from build scripts this simplifies the platform-specific build scripts to only perform the configure stage of the build (and any additional setup) and then uses standardized commands for the build in addition to being simpler, this will also provide more/better info about build timings ref D6603
Diffstat (limited to '.ci/ci-configure.sh')
-rwxr-xr-x.ci/ci-configure.sh67
1 files changed, 67 insertions, 0 deletions
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