[dev-run] Support autotools builds
This commit is contained in:
parent
25136d9b72
commit
975c35214f
|
@ -1,22 +1,38 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# Suggested setup to use the script:
|
||||||
for cmd in cmake ninja entr; do
|
# (on the root of the project)
|
||||||
command -v $cmd >/dev/null 2>&1 || { echo >&2 "This script needs $cmd be installed"; exit 1; }
|
# $ NOCONFIGURE=1 ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo
|
||||||
done
|
# $ mkdir build && cd build && ../configure && make -j5 && cd ..
|
||||||
|
# $ src/dev-run.sh [FONT-FILE] [TEXT]
|
||||||
|
#
|
||||||
|
# Or, using cmake:
|
||||||
|
# $ cmake -DHB_CHECK=ON -Bbuild -H. -GNinja && ninja -Cbuild
|
||||||
|
# $ src/dev-run.sh [FONT-FILE] [TEXT]
|
||||||
|
#
|
||||||
|
|
||||||
[ $# = 0 ] && echo Usage: "src/dev-run.sh [FONT-FILE] [TEXT]" && exit
|
[ $# = 0 ] && echo Usage: "src/dev-run.sh [FONT-FILE] [TEXT]" && exit
|
||||||
|
command -v entr >/dev/null 2>&1 || { echo >&2 "This script needs `entr` be installed"; exit 1; }
|
||||||
|
|
||||||
cmake -DHB_CHECK=ON -DHB_DISABLE_TEST_PROGS=ON -Bbuild -H. -GNinja
|
[ -f 'build/build.ninja' ] && CMAKENINJA=TRUE
|
||||||
ninja -Cbuild
|
|
||||||
|
|
||||||
# or "fswatch -0 . -e build/ -e .git"
|
# or "fswatch -0 . -e build/ -e .git"
|
||||||
find src/ | entr printf '\0' | while read -d "" event; do
|
find src/ | entr printf '\0' | while read -d ""; do
|
||||||
clear
|
clear
|
||||||
ninja -Cbuild
|
if [[ $CMAKENINJA ]]; then
|
||||||
|
ninja -Cbuild hb-shape hb-view
|
||||||
build/hb-shape $@
|
build/hb-shape $@
|
||||||
build/hb-view $@
|
build/hb-view $@
|
||||||
|
else
|
||||||
|
make -Cbuild/src -j5 -s lib
|
||||||
|
build/util/hb-shape $@
|
||||||
|
build/util/hb-view $@
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
cmake -DHB_CHECK=ON -DHB_DISABLE_TEST_PROGS=OFF -Bbuild -H. -GNinja
|
read -n 1 -p "Run the tests (y/n)? " answer
|
||||||
ninja -Cbuild
|
if [[ "$answer" = "y" ]]; then
|
||||||
CTEST_OUTPUT_ON_FAILURE=1 CTEST_PARALLEL_LEVEL=8 ninja -Cbuild test
|
if [[ $CMAKENINJA ]]; then
|
||||||
|
CTEST_OUTPUT_ON_FAILURE=1 CTEST_PARALLEL_LEVEL=5 ninja -Cbuild test
|
||||||
|
else
|
||||||
|
make -j5 check && .ci/fail.sh
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in New Issue