diff options
author | Stefan Schmidt <s.schmidt@samsung.com> | 2019-05-29 12:20:15 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2019-05-29 12:29:04 -0400 |
commit | 202c945bd316c4336834b793d70cc4e2ae3c811a (patch) | |
tree | 4f2ec86cee273102e2a354582f638906a5ad1548 /.ci | |
parent | c84a5fce0bbaf90328acca277192fb8b98059b6e (diff) | |
download | efl-202c945bd316c4336834b793d70cc4e2ae3c811a.tar.gz |
ci/travis: add meson windows cross build
Summary:
catchup with the windows cross build autotools build we have and provide
the matching meson build.
Depends on D9042
Reviewers: bu5hm4n, zmike, vtorri
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9043
Diffstat (limited to '.ci')
-rwxr-xr-x | .ci/ci-configure.sh | 17 | ||||
-rw-r--r-- | .ci/cross_toolchain.txt | 20 |
2 files changed, 36 insertions, 1 deletions
diff --git a/.ci/ci-configure.sh b/.ci/ci-configure.sh index 77236ec655..75e16af1ec 100755 --- a/.ci/ci-configure.sh +++ b/.ci/ci-configure.sh @@ -17,6 +17,11 @@ if [ "$BUILDSYSTEM" = "ninja" ] ; then RELEASE_READY_LINUX_COPTS=" --buildtype=release" + MINGW_COPTS="--cross-file .ci/cross_toolchain.txt -Davahi=false -Deeze=false -Dsystemd=false \ + -Dpulseaudio=false -Dx11=false -Dopengl=none -Dlibmount=false \ + -Devas-loaders-disabler=pdf,ps,raw,svg -Devas-modules=static -Dbindings=luajit \ + -Dbuild-examples=false -Dbuild-tests=false" + if [ "$1" = "options-enabled" ]; then OPTS="$OPTS $ENABLED_LINUX_COPTS $WAYLAND_LINUX_COPTS" fi @@ -32,9 +37,19 @@ if [ "$BUILDSYSTEM" = "ninja" ] ; then if [ "$1" = "release-ready" ]; then OPTS="$OPTS $RELEASE_READY_LINUX_COPTS" fi - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \ + + if [ "$1" = "mingw" ]; then + OPTS="$OPTS $MINGW_COPTS" + docker exec $(cat $HOME/cid) sh -c '.ci/bootstrap-efl-native-for-cross.sh' + fi + if [ "$1" = "mingw" ]; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env PKG_CONFIG_PATH="/ewpi-64-install/lib/pkgconfig/" \ + $(cat $HOME/cid) sh -c "mkdir build && meson build $OPTS" + else + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CC="ccache gcc" \ --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \ --env LD="ld.gold" $(cat $HOME/cid) sh -c "mkdir build && meson build $OPTS" + fi else # Prepare OSX env for build mkdir -p ~/Library/LaunchAgents diff --git a/.ci/cross_toolchain.txt b/.ci/cross_toolchain.txt new file mode 100644 index 0000000000..b9cd19a8ee --- /dev/null +++ b/.ci/cross_toolchain.txt @@ -0,0 +1,20 @@ +[binaries] +c = 'x86_64-w64-mingw32-gcc' +cpp = 'x86_64-w64-mingw32-g++' +ar = 'x86_64-w64-mingw32-ar' +ranlib = 'x86_64-w64-mingw32-ranlib' +strip = 'x86_64-w64-mingw32-strip' +windres = 'x86_64-w64-mingw32-windres' +pkgconfig = 'pkg-config' + +[host_machine] +system = 'windows' +cpu_family = 'x86_64' +cpu = 'x86_64' +endian = 'little' + +[properties] +c_args = ['-D_WIN32_WINNT=0x0601', '-I/ewpi-64-install/include', '-O2', '-pipe', '-march=x86-64'] +c_link_args = ['-L/ewpi-64-install/lib', '-s'] +cpp_args = ['-D_WIN32_WINNT=0x0601', '-I/ewpi-64-install/include', '-O2', '-pipe', '-march=x86-64'] +cpp_link_args = ['-L/ewpi-64-install/lib', '-s'] |