From: Junio C Hamano Date: Thu, 17 Apr 2025 21:27:39 +0000 (-0700) Subject: Meta/Dothem: drive --meson X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5dbd936032bb6b11c7f3e3280da0af7d8cdb1b29;p=thirdparty%2Fgit.git Meta/Dothem: drive --meson --- diff --git a/Dothem b/Dothem index cd798b8637..e59c492e68 100755 --- a/Dothem +++ b/Dothem @@ -4,8 +4,10 @@ NWD=contrib/workdir/git-new-workdir MASTER=master section () { + printf "\033]0;%s %s\007" "$branch" "$*" + printf "\n\n\n" - printf "############ %s\n" "$@" + printf "############ %s %s\n" "$branch" "$*" printf "\n\n\n" } @@ -24,7 +26,7 @@ inst_prefix=$( ) force= with_dash= test_long= M= install= doc= notest= bootstrap= branches= jobs= -scratch= noprove= memtrash=--memtrash with_cocci= with_leaks= with_sha256= san= clean= +scratch= noprove= memtrash=--memtrash with_cocci= with_leaks= with_sha256= san= clean= with_meson= while case "$1" in --pedantic | --locale=* | --loose) M="$M $1" ;; --force) force=$1 ;; @@ -49,6 +51,7 @@ while case "$1" in --san) san=t ;; --leaks) with_leaks=t ;; --sha256) with_sha256=t ;; + --meson) with_meson=t ;; -j*) jobs=$1 ;; --) shift; break ;; -*) echo >&2 "Unknown option: $1"; exit 1 ;; @@ -152,9 +155,6 @@ do } fi - private=$(git rev-parse -q --verify private-$branch 2>/dev/null) - case $? in 0|1) ;; *) exit $? ;; esac - version=$(find_installed $branch) if test "z$version" = "z$revision" then @@ -162,6 +162,9 @@ do test -n "$force" || continue fi + private=$(git rev-parse -q --verify private-$branch 2>/dev/null) + case $? in 0|1) ;; *) exit $? ;; esac + vtree=$(git rev-parse --verify "$version^{tree}") rtree=$(git rev-parse --verify "$revision^{tree}") ( @@ -237,6 +240,18 @@ do save=$(git rev-parse HEAD) && + if test -n "$with_meson" && test -f "meson.build" + then + section meson + rm -fr "../.$branch.boson" && + meson setup "../.$branch.boson" && + ( + cd "../.$branch.boson" && + meson compile && + meson test + ) || exit $? + fi && + # cocci if test -n "$with_cocci" then @@ -312,7 +327,7 @@ do if test "$save" = "$(git rev-parse HEAD)" then section install - Meta/Make $M -- ${with_dash:+SHELL_PATH=/bin/dash} "$@" install + Meta/Make $jobs $M -- ${with_dash:+SHELL_PATH=/bin/dash} "$@" install else echo >&2 "Head moved--not installing" fi diff --git a/loop-rebuild b/loop-rebuild index 82d3dafd54..c470bb0e49 100755 --- a/loop-rebuild +++ b/loop-rebuild @@ -10,6 +10,8 @@ stamp () { Meta/V 2>/dev/null | sha1sum } +export CC=clang + P=previous O=observed while : @@ -19,8 +21,12 @@ do ssleep 300 done ssleep 30 - # opts --sha256 --leaks --san - time nice -20 Meta/Dothem -j32 --dash -- -- CC=clang; uptime; date + + time nice -20 Meta/Dothem -j32 --meson --dash \ + --sha256 --leaks --san \ + CC=clang + + uptime; date P=$(stamp) Meta/V done