Seen in my last bulk build - this problem is easily repeatable, just install utfcpp before building git and this happens:
cc -o builtin/blame.o -c -MF builtin/.depend/blame.o.d -MQ builtin/blame.o -MMD -MP -I/usr/local/include -O2 -pipe -I. -I/usr/local/include -I/usr/local/include -DUSE_CURL_FOR_IMAP_SEND -I/usr/local/include -DUSE_ST_TIMESPEC -pthread -DHAVE_PATHS_H -DHAVE_LIBCHARSET_H -DHAVE_STRINGS_H -DHAVE_CLOCK_GETTIME -DHAVE_CLOCK_MONOTONIC -DHAVE_BSD_SYSCTL -DHAVE_GETDELIM -DSHA1_HEADER='<openssl/sha.h>' -DSHELL_PATH='"/bin/sh"' builtin/blame.c In file included from /usr/local/include/utf8/checked.h:31, from /usr/local/include/utf8.h:31, from builtin/blame.c:26: /usr/local/include/utf8/core.h:31:20: error: iterator: No such file or directory [...] It wants its own utf8.h in ${WRKSRC} but is picking up the one in ${LOCALBASE}/include in preference. This seems the most straightforward fix, OK? Index: Makefile =================================================================== RCS file: /cvs/ports/devel/git/Makefile,v retrieving revision 1.160 diff -u -p -r1.160 Makefile --- Makefile 17 Aug 2016 06:57:50 -0000 1.160 +++ Makefile 26 Sep 2016 10:32:46 -0000 @@ -71,7 +71,7 @@ CONFIGURE_ARGS = --sysconfdir=${SYSCONFD --with-iconv=${LOCALBASE} \ --with-tcltk=${MODTK_BIN} \ --with-python=no -CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include" \ +CONFIGURE_ENV = CPPFLAGS="-I${WRKSRC} -I${LOCALBASE}/include" \ LDFLAGS="-L${LOCALBASE}/lib" \ DIFF=diff TAR=tar