diff --git a/.circleci/config.yml b/.circleci/config.yml index c90ef4c4c..4788f0b0b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -9,7 +9,7 @@ jobs: - checkout - run: apt update && apt install -y ninja-build binutils libtool autoconf automake make cmake gcc g++ pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev python python-pip - run: pip install fonttools - - run: ./autogen.sh && make distcheck && rm -rf harfbuzz-* + - run: ./autogen.sh && (make distcheck || (cd harfbuzz-* && ../.collect_logs && false)) && rm -rf harfbuzz-* - run: make distdir && cd harfbuzz-* && cmake -DHB_CHECK=ON -Bbuild -H. -GNinja && ninja -Cbuild && CTEST_OUTPUT_ON_FAILURE=1 ninja -Cbuild test && ninja -Cbuild install alpine: @@ -19,7 +19,7 @@ jobs: - checkout - run: apk update && apk add ragel make pkgconfig libtool autoconf automake gettext gcc g++ glib-dev freetype-dev cairo-dev - run: ./autogen.sh - - run: make && (make check || (cat `find -name '*.log'` && false)) + - run: make && (make check || (./.collect_logs && false)) archlinux: docker: @@ -28,7 +28,7 @@ jobs: - checkout - run: pacman --noconfirm -Syu freetype2 cairo icu gettext gobject-introspection gcc gcc-libs glib2 graphite pkg-config ragel python - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 - - run: make && (make check || (cat `find -name '*.log'` && false)) + - run: make && (make check || (./.collect_logs && false)) fedora-outoftreebuild: docker: @@ -37,7 +37,7 @@ jobs: - checkout - run: dnf install -y pkg-config ragel gcc gcc-c++ automake autoconf libtool make which glib2-devel freetype-devel cairo-devel libicu-devel gobject-introspection-devel graphite2-devel redhat-rpm-config python || true - run: NOCONFIGURE=1 ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 - - run: mkdir build && cd build && ../configure && make && (make check || (cat `find -name '*.log'` && false)) + - run: mkdir build && cd build && ../configure && make && (make check || (./.collect_logs && false)) cmake-gcc: docker: diff --git a/.collect_logs b/.collect_logs new file mode 100755 index 000000000..a3d46a48e --- /dev/null +++ b/.collect_logs @@ -0,0 +1,6 @@ +#!/bin/bash + +for f in $(find . -name '*.log' -not -name 'config.log'); do + echo '====' $f '====' + cat $f +done diff --git a/.travis.yml b/.travis.yml index fa9e5bc60..4751c1700 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,7 +27,7 @@ matrix: - ./autogen.sh - ./configure $CONFIGURE_OPTS --enable-gtk-doc - make - - make check || (cat `find -name '*.log'` && false) + - make check || (./.collect_logs && false) after_success: - bash .ci/run-coveralls.sh # for coveralls.io code coverage tracking - bash .ci/deploy-docs.sh @@ -43,7 +43,7 @@ matrix: - ./autogen.sh - ./configure $CONFIGURE_OPTS - make - - make check || (cat `find -name '*.log'` && false) + - make check || (./.collect_logs && false) - os: osx compiler: clang @@ -59,7 +59,7 @@ matrix: - ./autogen.sh - ./configure $CONFIGURE_OPTS --with-coretext - make - - make check || (cat `find . -name '*.log'` && false) + - make check || (./.collect_logs && false) notifications: irc: "irc.freenode.org#harfbuzz" diff --git a/appveyor.yml b/appveyor.yml index 7350b1357..cb4e3b1a9 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -44,7 +44,7 @@ build_script: - 'if "%compiler%"=="msvc" if not "%platform%"=="ARM" ctest --output-on-failure -C %configuration%' - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-$MSYS2_ARCH-{freetype,cairo,icu,gettext,gobject-introspection,gcc,gcc-libs,glib2,graphite2,pkg-config,python2}"' - - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=%MINGW_CHOST% --host=%MINGW_CHOST% --prefix=%MINGW_PREFIX%; make; make check || (cat */test-suite.log test/*/test-suite.log && false)"' + - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=%MINGW_CHOST% --host=%MINGW_CHOST% --prefix=%MINGW_PREFIX%; make; make check || (./.collect_logs && false)"' cache: - c:\tools\vcpkg\installed\