Merge branch 'jc/ci-test-contrib-too'

Test contrib/ things in CI to catch breakages before they enter the
"next" branch.

* jc/ci-test-contrib-too:
  : Some of our downstream folks run more tests than we do and catch
  : breakages in them, namely, where contrib/*/Makefile has "test" target.
  : Let's make sure we fail upon accepting a new topic that break them in
  : 'seen'.
  ci: ubuntu: use GNU coreutils for dirname
  test: optionally test contrib in CI
This commit is contained in:
Junio C Hamano
2026-02-13 13:39:26 -08:00
4 changed files with 30 additions and 0 deletions

View File

@@ -342,6 +342,9 @@ include shared.mak
# If it isn't set, fallback to $LC_ALL, $LANG or use the first utf-8
# locale returned by "locale -a".
#
# Define TEST_CONTRIB_TOO to make "make test" run tests in contrib/
# directories.
#
# Define HAVE_CLOCK_GETTIME if your platform has clock_gettime.
#
# Define HAVE_CLOCK_MONOTONIC if your platform has CLOCK_MONOTONIC.
@@ -3371,6 +3374,9 @@ export TEST_NO_MALLOC_CHECK
test: all
$(MAKE) -C t/ all
ifdef TEST_CONTRIB_TOO
$(MAKE) -C contrib/ test
endif
perf: all
$(MAKE) -C t/perf/ all

View File

@@ -76,6 +76,17 @@ ubuntu-*|i386/ubuntu-*|debian-*)
sudo update-alternatives --set sudo /usr/bin/sudo.ws
fi
# on uutils v0.2.2 from rust-coreutils,
# dirname "foo/."
# outputs "." instead of "foo" like it should.
# Use GNU coreutils to provide dirname instead.
#
# See <https://github.com/uutils/coreutils/issues/10508>.
if test -x /usr/bin/gnudirname
then
ln -sfT /usr/bin/gnudirname /usr/bin/dirname
fi
case "$distro" in
ubuntu-*)
mkdir --parents "$CUSTOM_PATH"

View File

@@ -5,6 +5,8 @@
. ${0%/*}/lib.sh
export TEST_CONTRIB_TOO=yes
case "$jobname" in
fedora-breaking-changes-musl|linux-breaking-changes)
export WITH_BREAKING_CHANGES=YesPlease
@@ -36,6 +38,7 @@ linux-sha256)
linux-reftable|linux-reftable-leaks|osx-reftable)
export GIT_TEST_DEFAULT_REF_FORMAT=reftable
;;
esac
case "$jobname" in

10
contrib/Makefile Normal file
View File

@@ -0,0 +1,10 @@
all::
test::
$(MAKE) -C diff-highlight $@
$(MAKE) -C subtree $@
clean::
$(MAKE) -C contacts $@
$(MAKE) -C diff-highlight $@
$(MAKE) -C subtree $@