Hello, when /bin/sh is bash, target GIT-CFLAGS: FORCE in Makefile puts in the file GIT-CFLAGS the content gcc: -g -O2 -I. -DHAVE_SYSINFO -DGIT_HOST_CPU="\"x86_64\"" -DUSE_LIBPCRE2 -DHAVE_ALLOCA_H -I/usr/local/include -DUSE_CURL_FOR_IMAP_SEND -DSUPPORTS_SIMPLE_IPC -DSHA1_DC -DSHA1DC_NO_STANDARD_INCLUDES -DSHA1DC_INIT_SAFE_HASH_DEFAULT=0 -DSHA1DC_CUSTOM_INCLUDE_SHA1_C="\"git-compat-util.h\"" -DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C="\"git-compat-util.h\"" -DSHA256_BLK -DHAVE_PATHS_H -DHAVE_STRINGS_H -DHAVE_DEV_TTY -DHAVE_CLOCK_GETTIME -DHAVE_CLOCK_MONOTONIC -DHAVE_SYNC_FILE_RANGE -DHAVE_GETDELIM '- DPROCFS_EXECUTABLE_PATH="/proc/self/exe"' -DFREAD_READS_DIRECTORIES -DSHELL_PATH='"/bin/sh"': when /bin/sh is dash (b3e38ad), the same file GIT-CFLAGS contains gcc: -g -O2 -I. -DHAVE_SYSINFO -DGIT_HOST_CPU=""x86_64"" -DUSE_LIBPCRE2 -DHAVE_ALLOCA_H -I/usr/local/include -DUSE_CURL_FOR_IMAP_SEND -DSUPPORTS_SIMPLE_IPC -DSHA1_DC -DSHA1DC_NO_STANDARD_INCLUDES -DSHA1DC_INIT_SAFE_HASH_DEFAULT=0 -DSHA1DC_CUSTOM_INCLUDE_SHA1_C=""git-compat-util.h"" -DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=""git-compat-util.h"" -DSHA256_BLK -DHAVE_PATHS_H -DHAVE_STRINGS_H -DHAVE_DEV_TTY -DHAVE_CLOCK_GETTIME -DHAVE_CLOCK_MONOTONIC -DHAVE_SYNC_FILE_RANGE -DHAVE_GETDELIM '- DPROCFS_EXECUTABLE_PATH="/proc/self/exe"' -DFREAD_READS_DIRECTORIES -DSHELL_PATH='"/bin/sh"': Note the differences in the -DGIT_HOST_CPU, -DSHA1DC_CUSTOM_INCLUDE_SHA1_C values. Because of the differences, in Makefile:3150 if test x"$$FLAGS" != x"`cat GIT-CFLAGS 2>/dev/null`" ; then always succeeds, prints “* new build flags” and every run of make starts rebuilding daemon.o. So the empty build is not empty. Greetings Дилян