summaryrefslogtreecommitdiff
path: root/.ci/ci-configure.sh
diff options
context:
space:
mode:
authorStefan Schmidt <s.schmidt@samsung.com>2018-08-22 14:51:12 +0200
committerStefan Schmidt <s.schmidt@samsung.com>2018-11-20 11:17:37 +0100
commit1a17f41584f2821b386029355bbfcd2486964fdb (patch)
tree4073b4c03169ca255cbf8da5f62c6c4d5fe29807 /.ci/ci-configure.sh
parentb8bcd7c2f307b8e30cadd6a1f8f5d610b360ad19 (diff)
ci: mingw build target to cross compile EFL for Windows
We are using the EFL windows package installer (ewpi) from Vincent Torri here (thanks!) to setup all the needed cross compiled dependencies for EFL. The make target is disabled as we are not able to execute the windows binaries withour additional work to run check. Work is ongoing in ewpi to have the dependencies provided for soem of the disabled build options (gstreamer, webp, tiff, physics, etc). Once these are working well in ewpi we will enable them here as well. [Brought back after revert. CI image is now fixed to have the needed pre-built windows components again] Differential Revision: https://phab.enlightenment.org/D7294
Diffstat (limited to '.ci/ci-configure.sh')
-rwxr-xr-x.ci/ci-configure.sh37
1 files changed, 31 insertions, 6 deletions
diff --git a/.ci/ci-configure.sh b/.ci/ci-configure.sh
index 00f9e4b750..e69cddc3c6 100755
--- a/.ci/ci-configure.sh
+++ b/.ci/ci-configure.sh
@@ -29,6 +29,13 @@ MISC_DISABLED_LINUX_COPTS=" --disable-neon --disable-libeeze --disable-systemd -
29 29
30RELEASE_READY_LINUX_COPTS=" --with-profile=release" 30RELEASE_READY_LINUX_COPTS=" --with-profile=release"
31 31
32MINGW_COPTS=" --prefix=/root/EFL/ewpi_64 --host=x86_64-w64-mingw32 --with-eolian-gen=/usr/bin/eolian_gen \
33--with-edje-cc=/usr/bin/edje_cc --with-eet-eet=/usr/bin/eet --with-bin-elm-prefs-cc=/usr/bin/elm_prefs_cc \
34--disable-static --with-tests=regular --with-crypto=openssl --disable-gstreamer1 \
35--disable-libmount --disable-valgrind --disable-avahi --disable-spectre --disable-libraw \
36--disable-librsvg --disable-pulseaudio --disable-cxx-bindings \
37--disable-physics --disable-image-loader-tiff"
38
32patch -p1 < .ci/efl.m4.diff 39patch -p1 < .ci/efl.m4.diff
33sed -i.orig 's/AC_INIT\(.*\)efl_version-[a-zA-Z0-9]\+/AC_INIT\1efl_version/g' configure.ac 40sed -i.orig 's/AC_INIT\(.*\)efl_version-[a-zA-Z0-9]\+/AC_INIT\1efl_version/g' configure.ac
34 41
@@ -51,16 +58,34 @@ if [ "$DISTRO" != "" ] ; then
51 if [ "$1" = "release-ready" ]; then 58 if [ "$1" = "release-ready" ]; then
52 OPTS="$OPTS $RELEASE_READY_LINUX_COPTS" 59 OPTS="$OPTS $RELEASE_READY_LINUX_COPTS"
53 fi 60 fi
61
62 if [ "$1" = "mingw" ]; then
63 OPTS="$OPTS $MINGW_COPTS"
64 docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache'
65 fi
54 docker exec $(cat $HOME/cid) sh -c 'rm -f ~/.ccache/ccache.conf' 66 docker exec $(cat $HOME/cid) sh -c 'rm -f ~/.ccache/ccache.conf'
55 travis_fold autoreconf autoreconf 67 travis_fold autoreconf autoreconf
56 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \ 68 if [ "$1" = "mingw" ]; then
57 --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \ 69 docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache'
58 --env LD="ld.gold" $(cat $HOME/cid) sh -c "LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv" 70 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \
71 --env CPPFLAGS="-I/root/EFL/ewpi_64/include -DECORE_WIN32_WIP_POZEFLKSD" --env LDFLAGS="-L/root/EFL/ewpi_64/lib/" --env PKG_CONFIG_PATH="/root/EFL/ewpi_64/lib/pkgconfig/" \
72 $(cat $HOME/cid) sh -c "autoreconf -iv"
73 else
74 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \
75 --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \
76 --env LD="ld.gold" $(cat $HOME/cid) sh -c "LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv"
77 fi
59 travis_endfold autoreconf 78 travis_endfold autoreconf
60 travis_fold configure "configure $OPTS" 79 travis_fold configure "configure $OPTS"
61 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \ 80 if [ "$1" = "mingw" ]; then
62 --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \ 81 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \
63 --env LD="ld.gold" $(cat $HOME/cid) sh -c ".ci/configure.sh $OPTS" 82 --env CPPFLAGS="-I/root/EFL/ewpi_64/include -DECORE_WIN32_WIP_POZEFLKSD" --env LDFLAGS="-L/root/EFL/ewpi_64/lib/" --env PKG_CONFIG_PATH="/root/EFL/ewpi_64/lib/pkgconfig/" \
83 $(cat $HOME/cid) sh -c ".ci/configure.sh $OPTS"
84 else
85 docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \
86 --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \
87 --env LD="ld.gold" $(cat $HOME/cid) sh -c ".ci/configure.sh $OPTS"
88 fi
64 travis_endfold configure 89 travis_endfold configure
65else 90else
66 OSX_COPTS="--disable-cxx-bindings --with-tests=regular --disable-dependency-tracking -C" 91 OSX_COPTS="--disable-cxx-bindings --with-tests=regular --disable-dependency-tracking -C"