diff --git a/.ci/ci-configure.sh b/.ci/ci-configure.sh index 01e7be8b9e..bd434d33c7 100755 --- a/.ci/ci-configure.sh +++ b/.ci/ci-configure.sh @@ -4,108 +4,148 @@ set -e . .ci/travis.sh -CI_BUILD_TYPE="$1" +if [ "$BUILDSYSTEM" = "ninja" ] ; then + if [ "$DISTRO" != "" ] ; then + # Normal build test of all targets + OPTS=" -Decore-imf-loaders-disabler=scim,ibus -Davahi=false -Dmono=false -Dcxx=false" -DEFAULT_LINUX_COPTS="--prefix=/usr/ --with-tests=regular --disable-cxx-bindings --disable-dependency-tracking -C" + WAYLAND_LINUX_COPTS=" -Dwl=true -Ddrm=true -Dopengl=es-egl" -WAYLAND_LINUX_COPTS=" --enable-wayland --enable-elput --enable-drm \ ---enable-wayland-ivi-shell --enable-gl-drm --with-opengl=es --enable-egl" + ENABLED_LINUX_COPTS=" -Dharfbuzz=true -Dhyphen=true" -ENABLED_LINUX_COPTS=" --enable-harfbuzz --enable-liblz4 --enable-image-loader-webp --enable-xinput22 \ ---enable-multisense --enable-lua-old --enable-xpresent --enable-hyphen \ ---enable-pixman --enable-pixman-font --enable-pixman-rect --enable-pixman-line \ ---enable-pixman-poly --enable-pixman-image --enable-pixman-image-scale-sample \ ---enable-image-loader-generic --enable-libuv --enable-tile-rotate --enable-vnc-server \ ---enable-fb --enable-v4l2 --enable-cserve \ ---enable-ecore-wayland --enable-ecore-drm --enable-cancel-ok --with-crypto=gnutls \ ---enable-debug --disable-gstreamer1 --enable-gstreamer" + DISABLED_LINUX_COPTS=" -Dsystemd=false" -# Not compatible with Open GL ES and thus the wayland options. Need to think about having different -# jobs for the different supported GL flavours. -#--enable-sdl + RELEASE_READY_LINUX_COPTS=" --buildtype=release" -DISABLED_LINUX_COPTS=" --disable-neon --disable-libeeze --disable-systemd --disable-magic-debug \ ---disable-valgrind --disable-gstreamer1 \ ---disable-fontconfig --disable-fribidi --disable-poppler --disable-spectre --disable-libraw \ ---disable-librsvg --disable-xcf --disable-libmount --disable-tslib --disable-audio \ ---disable-pulseaudio --disable-avahi --disable-xinput2 --disable-xim --disable-scim \ ---disable-ibus --disable-physics --disable-quick-launch --disable-elua" + if [ "$1" = "options-enabled" ]; then + OPTS="$OPTS $ENABLED_LINUX_COPTS $WAYLAND_LINUX_COPTS" + fi -RELEASE_READY_LINUX_COPTS=" --with-profile=release" + if [ "$1" = "options-disabled" ]; then + OPTS="$OPTS $DISABLED_LINUX_COPTS" + fi -MINGW_COPTS=" --prefix=/root/EFL/ewpi_64 --host=x86_64-w64-mingw32 --with-eolian-gen=/usr/bin/eolian_gen \ ---with-edje-cc=/usr/bin/edje_cc --with-eet-eet=/usr/bin/eet --with-bin-elm-prefs-cc=/usr/bin/elm_prefs_cc \ ---disable-static --with-tests=regular --with-crypto=openssl --disable-gstreamer1 \ ---disable-libmount --disable-valgrind --disable-avahi --disable-spectre --disable-libraw \ ---disable-librsvg --disable-pulseaudio --disable-cxx-bindings \ ---disable-physics --disable-image-loader-tiff" - -patch -p1 < .ci/efl.m4.diff -sed -i.orig 's/AC_INIT\(.*\)efl_version-[a-zA-Z0-9]\+/AC_INIT\1efl_version/g' configure.ac - -if [ "$DISTRO" != "" ] ; then - # Normal build test of all targets - OPTS="$DEFAULT_LINUX_COPTS" - - if [ "$1" = "options-enabled" ]; then - OPTS="$OPTS $ENABLED_LINUX_COPTS $WAYLAND_LINUX_COPTS" - fi - - if [ "$1" = "options-disabled" ]; then - OPTS="$OPTS $DISABLED_LINUX_COPTS" - fi - - if [ "$1" = "release-ready" ]; then - OPTS="$OPTS $RELEASE_READY_LINUX_COPTS" - fi - - if [ "$1" = "mingw" ]; then - OPTS="$OPTS $MINGW_COPTS" - docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache' - fi - docker exec $(cat $HOME/cid) sh -c 'rm -f ~/.ccache/ccache.conf' - travis_fold autoreconf autoreconf - if [ "$1" = "mingw" ]; then - docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache' - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \ - --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/" \ - $(cat $HOME/cid) sh -c "autoreconf -iv" - else + 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" \ - --env CXX="ccache g++" --env CFLAGS="-fdirectives-only" --env CXXFLAGS="-fdirectives-only" \ - --env LD="ld.gold" $(cat $HOME/cid) sh -c "LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv" - fi - travis_endfold autoreconf - travis_fold configure "configure $OPTS" - if [ "$1" = "mingw" ]; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \ - --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/" \ - $(cat $HOME/cid) sh -c ".ci/configure.sh $OPTS" + --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" 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 ".ci/configure.sh $OPTS" + # Prepare OSX env for build + mkdir -p ~/Library/LaunchAgents + ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents + launchctl load ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + + export CFLAGS="-I/usr/local/opt/openssl/include -frewrite-includes $CFLAGS" + export LDFLAGS="-L/usr/local/opt/openssl/lib $LDFLAGS" + export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig" + mkdir build && meson build -Decore-imf-loaders-disabler=scim,ibus -Dx11=false -Davahi=false -Dmono=false -Dcxx=false -Deeze=false -Dsystemd=false -Dnls=false -Dcocoa=true -Demotion-loaders-disabler=gstreamer,gstreamer1,libvlc,xine fi - travis_endfold configure else - OSX_COPTS="--disable-cxx-bindings --with-tests=regular --disable-dependency-tracking -C" + CI_BUILD_TYPE="$1" - # Prepare OSX env for build - mkdir -p ~/Library/LaunchAgents - ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents - launchctl load ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + DEFAULT_LINUX_COPTS="--prefix=/usr/ --with-tests=regular --disable-cxx-bindings --disable-dependency-tracking -C" - export CFLAGS="-I/usr/local/opt/openssl/include -frewrite-includes $CFLAGS" - export LDFLAGS="-L/usr/local/opt/openssl/lib $LDFLAGS" - export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig" + WAYLAND_LINUX_COPTS=" --enable-wayland --enable-elput --enable-drm \ + --enable-wayland-ivi-shell --enable-gl-drm --with-opengl=es --enable-egl" - # Normal build test of all targets - rm -f ~/.ccache/ccache.conf - travis_fold autoreconf autoreconf - LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv - travis_endfold autoreconf - travis_fold configure "configure $OSX_COPTS" - .ci/configure.sh $OSX_COPTS - travis_endfold configure + ENABLED_LINUX_COPTS=" --enable-harfbuzz --enable-liblz4 --enable-image-loader-webp --enable-xinput22 \ + --enable-multisense --enable-lua-old --enable-xpresent --enable-hyphen \ + --enable-pixman --enable-pixman-font --enable-pixman-rect --enable-pixman-line \ + --enable-pixman-poly --enable-pixman-image --enable-pixman-image-scale-sample \ + --enable-image-loader-generic --enable-libuv --enable-tile-rotate --enable-vnc-server \ + --enable-fb --enable-v4l2 --enable-cserve \ + --enable-ecore-wayland --enable-ecore-drm --enable-cancel-ok --with-crypto=gnutls \ + --enable-debug --disable-gstreamer1 --enable-gstreamer" + + # Not compatible with Open GL ES and thus the wayland options. Need to think about having different + # jobs for the different supported GL flavours. + #--enable-sdl + + DISABLED_LINUX_COPTS=" --disable-neon --disable-libeeze --disable-systemd --disable-magic-debug \ + --disable-valgrind --disable-gstreamer1 \ + --disable-fontconfig --disable-fribidi --disable-poppler --disable-spectre --disable-libraw \ + --disable-librsvg --disable-xcf --disable-libmount --disable-tslib --disable-audio \ + --disable-pulseaudio --disable-avahi --disable-xinput2 --disable-xim --disable-scim \ + --disable-ibus --disable-physics --disable-quick-launch --disable-elua" + + RELEASE_READY_LINUX_COPTS=" --with-profile=release" + + MINGW_COPTS=" --prefix=/root/EFL/ewpi_64 --host=x86_64-w64-mingw32 --with-eolian-gen=/usr/bin/eolian_gen \ + --with-edje-cc=/usr/bin/edje_cc --with-eet-eet=/usr/bin/eet --with-bin-elm-prefs-cc=/usr/bin/elm_prefs_cc \ + --disable-static --with-tests=regular --with-crypto=openssl --disable-gstreamer1 \ + --disable-libmount --disable-valgrind --disable-avahi --disable-spectre --disable-libraw \ + --disable-librsvg --disable-pulseaudio --disable-cxx-bindings \ + --disable-physics --disable-image-loader-tiff" + + patch -p1 < .ci/efl.m4.diff + sed -i.orig 's/AC_INIT\(.*\)efl_version-[a-zA-Z0-9]\+/AC_INIT\1efl_version/g' configure.ac + + if [ "$DISTRO" != "" ] ; then + # Normal build test of all targets + OPTS="$DEFAULT_LINUX_COPTS" + + if [ "$1" = "options-enabled" ]; then + OPTS="$OPTS $ENABLED_LINUX_COPTS $WAYLAND_LINUX_COPTS" + fi + + if [ "$1" = "options-disabled" ]; then + OPTS="$OPTS $DISABLED_LINUX_COPTS" + fi + + if [ "$1" = "release-ready" ]; then + OPTS="$OPTS $RELEASE_READY_LINUX_COPTS" + fi + + if [ "$1" = "mingw" ]; then + OPTS="$OPTS $MINGW_COPTS" + docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache' + fi + docker exec $(cat $HOME/cid) sh -c 'rm -f ~/.ccache/ccache.conf' + travis_fold autoreconf autoreconf + if [ "$1" = "mingw" ]; then + docker exec $(cat $HOME/cid) sh -c 'rm -f /src/config.cache' + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \ + --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/" \ + $(cat $HOME/cid) sh -c "autoreconf -iv" + 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 "LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv" + fi + travis_endfold autoreconf + travis_fold configure "configure $OPTS" + if [ "$1" = "mingw" ]; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 --env CFLAGS="-pipe" --env CXXFLAGS="-pipe" \ + --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/" \ + $(cat $HOME/cid) sh -c ".ci/configure.sh $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 ".ci/configure.sh $OPTS" + fi + else + OSX_COPTS="--disable-cxx-bindings --with-tests=regular --disable-dependency-tracking -C" + + # Prepare OSX env for build + mkdir -p ~/Library/LaunchAgents + ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents + launchctl load ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + + export CFLAGS="-I/usr/local/opt/openssl/include -frewrite-includes $CFLAGS" + export LDFLAGS="-L/usr/local/opt/openssl/lib $LDFLAGS" + export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig" + + # Normal build test of all targets + rm -f ~/.ccache/ccache.conf + travis_fold autoreconf autoreconf + LIBTOOLIZE_OPTIONS='--no-warn' autoreconf -iv + travis_endfold autoreconf + travis_fold configure "configure $OSX_COPTS" + .ci/configure.sh $OSX_COPTS + fi + travis_endfold configure fi diff --git a/.ci/ci-make-benchmark.sh b/.ci/ci-make-benchmark.sh index d8357173e5..9f297a5fcb 100755 --- a/.ci/ci-make-benchmark.sh +++ b/.ci/ci-make-benchmark.sh @@ -6,10 +6,14 @@ if [ "$1" = "release-ready" ] ; then exit 0 fi travis_fold benchmark "make benchmark" -if [ "$DISTRO" != "" ] ; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make benchmark +if [ "$BUILDSYSTEM" = "ninja" ] ; then + echo "Nothing to do here, the benchmarks don't seem to terminate" else - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - make benchmark + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make benchmark + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + make benchmark + fi fi travis_endfold benchmark diff --git a/.ci/ci-make-check.sh b/.ci/ci-make-check.sh index 6813ea7c39..1744b4894c 100755 --- a/.ci/ci-make-check.sh +++ b/.ci/ci-make-check.sh @@ -17,21 +17,32 @@ fi NUM_TRIES=5 travis_fold check "make check-TESTS" -if [ "$DISTRO" != "" ] ; then - for tries in $(seq 1 ${NUM_TRIES}); do - (docker exec --env EINA_LOG_BACKTRACE="0" --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make -j2 -C src/ check-TESTS) && break - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) cat src/test-suite.log - if [ $tries != ${NUM_TRIES} ] ; then echo "tests failed, trying again!" ; fi - false - done -#else - #export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - #for tries in 1 2 3 ; do - #make -j2 -C src/ check-TESTS && break - #cat src/test-suite.log - #if [ $tries != 3 ] ; then echo "tests failed, trying again!" ; fi - #false - #done +if [ "$BUILDSYSTEM" = "ninja" ] ; then + if [ "$DISTRO" != "" ] ; then + for tries in $(seq 1 ${NUM_TRIES}); do + (docker exec --env EINA_LOG_BACKTRACE="0" --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) ninja -C build test) && break + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) cat src/test-suite.log + if [ $tries != ${NUM_TRIES} ] ; then echo "tests failed, trying again!" ; fi + false + done + fi +else + if [ "$DISTRO" != "" ] ; then + for tries in $(seq 1 ${NUM_TRIES}); do + (docker exec --env EINA_LOG_BACKTRACE="0" --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make -j2 -C src/ check-TESTS) && break + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) cat src/test-suite.log + if [ $tries != ${NUM_TRIES} ] ; then echo "tests failed, trying again!" ; fi + false + done + #else + #export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + #for tries in 1 2 3 ; do + #make -j2 -C src/ check-TESTS && break + #cat src/test-suite.log + #if [ $tries != 3 ] ; then echo "tests failed, trying again!" ; fi + #false + #done + fi fi ret=$? travis_endfold check diff --git a/.ci/ci-make-checkbuild.sh b/.ci/ci-make-checkbuild.sh index 0fb77b1ffc..88ca687d42 100755 --- a/.ci/ci-make-checkbuild.sh +++ b/.ci/ci-make-checkbuild.sh @@ -9,10 +9,14 @@ if [ "$1" = "mingw" ] ; then exit 0 fi travis_fold check-build "make check-build" -if [ "$DISTRO" != "" ] ; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make check-build +if [ "$BUILDSYSTEM" = "ninja" ] ; then + echo "Nothing to do here" else - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - make check-build + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make check-build + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + make check-build + fi fi travis_endfold check-build diff --git a/.ci/ci-make-distcheck.sh b/.ci/ci-make-distcheck.sh index 83541ba577..59b096a2ee 100755 --- a/.ci/ci-make-distcheck.sh +++ b/.ci/ci-make-distcheck.sh @@ -6,14 +6,27 @@ if [ "$1" != "release-ready" ] ; then exit 0 fi travis_fold distcheck "make distcheck" +if [ "$BUILDSYSTEM" = "ninja" ] ; then if [ "$DISTRO" != "" ] ; then - 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) bash -c .ci/distcheck.sh || \ - (sudo cat efl-*/_build/sub/src/test-suite.log; false) + 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) dbus-launch ninja -C build dist || \ + (sudo cat efl-*/_build/sub/src/test-suite.log; false) + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + ninja -C build dist + fi else - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - make + if [ "$DISTRO" != "" ] ; then + 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) bash -c .ci/distcheck.sh || \ + (sudo cat efl-*/_build/sub/src/test-suite.log; false) + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + make + fi fi travis_endfold distcheck diff --git a/.ci/ci-make-examples.sh b/.ci/ci-make-examples.sh index 6a59898083..ae8aa736ca 100755 --- a/.ci/ci-make-examples.sh +++ b/.ci/ci-make-examples.sh @@ -6,10 +6,14 @@ if [ "$1" = "release-ready" ] ; then exit 0 fi travis_fold examples "make examples" -if [ "$DISTRO" != "" ] ; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make examples +if [ "$BUILDSYSTEM" = "ninja" ] ; then + echo "TODO" else - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - make examples + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make examples + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + make examples + fi fi travis_endfold examples diff --git a/.ci/ci-make-install.sh b/.ci/ci-make-install.sh index 48f311bd6b..e855ba9dcd 100755 --- a/.ci/ci-make-install.sh +++ b/.ci/ci-make-install.sh @@ -6,10 +6,19 @@ if [ "$1" = "release-ready" ] ; then exit 0 fi travis_fold install "make install" -if [ "$DISTRO" != "" ] ; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make install +if [ "$BUILDSYSTEM" = "ninja" ] ; then + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) ninja -C build install + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + ninja -C build install + fi else - export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" - make install + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make install + else + export PATH="/usr/local/opt/ccache/libexec:$(brew --prefix gettext)/bin:$PATH" + make install + fi fi travis_endfold install diff --git a/.ci/ci-make.sh b/.ci/ci-make.sh index dbe1ab4352..2cc6ee873f 100755 --- a/.ci/ci-make.sh +++ b/.ci/ci-make.sh @@ -6,10 +6,19 @@ if [ "$1" = "release-ready" ] ; then exit 0 fi travis_fold make make -if [ "$DISTRO" != "" ] ; then - docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make +if [ "$BUILDSYSTEM" = "ninja" ] ; then + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) ninja -C build + else + export PATH="$(brew --prefix gettext)/bin:$PATH" + ninja -C build + fi else - export PATH="$(brew --prefix gettext)/bin:$PATH" - make + if [ "$DISTRO" != "" ] ; then + docker exec --env MAKEFLAGS="-j5 -rR" --env EIO_MONITOR_POLL=1 $(cat $HOME/cid) make + else + export PATH="$(brew --prefix gettext)/bin:$PATH" + make + fi fi travis_endfold make diff --git a/.ci/ci-osx-deps.sh b/.ci/ci-osx-deps.sh index 95872f82f3..22672606e8 100755 --- a/.ci/ci-osx-deps.sh +++ b/.ci/ci-osx-deps.sh @@ -2,4 +2,5 @@ brew update brew unlink python -brew install gettext check bullet dbus fontconfig freetype fribidi gst-plugins-good gstreamer luajit openssl webp libsndfile glib libspectre libraw librsvg poppler lz4 pulseaudio ccache +brew install gettext check bullet dbus fontconfig freetype fribidi gst-plugins-good gstreamer luajit openssl webp libsndfile glib libspectre libraw librsvg poppler lz4 pulseaudio ccache ninja python3 +pip3 install meson diff --git a/.travis.yml b/.travis.yml index dd92528d0e..22a43a9ab7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,6 +20,16 @@ env: jobs: include: + - env: + - os: linux + - DISTRO=Fedora28 + - CI_BUILD_TYPE=options-enabled + - BUILDSYSTEM=ninja + - env: + - os: linux + - DISTRO=Fedora28 + - CI_BUILD_TYPE=options-disabled + - BUILDSYSTEM=ninja - env: - os: linux - DISTRO=Fedora28 @@ -45,6 +55,22 @@ jobs: env: - os: linux - DISTRO=Debian91 + - if: type = cron + env: + - os: linux + - DISTRO=Ubuntu1804 + - BUILDSYSTEM=ninja + - if: type = cron + env: + - os: linux + - DISTRO=Fedora28 + - CI_BUILD_TYPE=release-ready + - BUILDSYSTEM=ninja + - if: type = cron + env: + - os: linux + - DISTRO=Debian91 + - BUILDSYSTEM=ninja exclude: - os: linux