7e88fd5b88b421a27e9677737bf357fbe29c0e6c braney Sun Sep 6 17:16:14 2026 -0700 makefiles: take out the hand-written header dependencies The compiler records these now, so the lines are only a second copy that can drift. They already had: hg/hgTables named 23 objects as depending on hgTables.h, and thirteen more include it. Touching that header rebuilt 23 objects before this and rebuilds 36 after, and nothing that rebuilt before stops rebuilding. 43 lines go, in hg/hgTables, hg/hgTracks, hg/blastToPsl, hg/genePredToMafFrames, hg/pslDiff and hg/utils/refSeqGet, along with four extraHeaders variables that were the same thing said another way. A hand-written line stays wherever the header is generated, by autoSql, by stringify or by a sed rule. On the first build there is no .d file yet, so nothing else makes the generator run before the compile that needs its output. That leaves hg/hgGeneRing, hg/visiGene/vgLoadMahoney, hg/qaPushQ, hg/lib and hg/hgGateway, and trims extraHeaders down to the generated headers in hg/pslCDnaFilter and hg/utils/overlapSelect. Both of those were cleaned and rebuilt from a tree with no usage.h or algo.h in it to check the ordering still holds. The C++ ones in optimalLeaf and hg/lib/straw stay as well, since -MMD never sees a .cc file. The genbank tree keeps its eleven lines untouched. It is built by no kent target, and it does not compile at all today: mgcStatusTbl.c fails -Werror=format. Nothing there could be verified, so nothing there was changed. inc/userApp.mk now says extraHeaders is for generated headers, so the ordinary ones do not come back. refs #36621 diff --git src/hg/blastToPsl/makefile src/hg/blastToPsl/makefile index b356678619a..3ec27e3c935 100644 --- src/hg/blastToPsl/makefile +++ src/hg/blastToPsl/makefile @@ -1,37 +1,33 @@ kentSrc = ../.. include ../../inc/common.mk L += $(MYSQLLIBS) -lm MYLIBDIR = ../../lib/${MACHTYPE} MYLIBS = $(MYLIBDIR)/jkhgap.a ${MYLIBDIR}/jkweb.a blastToPsl_objs = blastToPsl.o pslBuild.o blastXmlToPsl_objs = blastXmlToPsl.o ncbiBlast.o pslBuild.o all: blastToPsl blastXmlToPsl blastXmlToPsl: ${blastXmlToPsl_objs} ${MYLIBS} ${CC} ${COPT} -o ${DESTDIR}${BINDIR}/blastXmlToPsl${EXE} ${blastXmlToPsl_objs} ${MYLIBS} $L ${STRIP} ${DESTDIR}${BINDIR}/blastXmlToPsl${EXE} blastToPsl: ${blastToPsl_objs} ${MYLIBS} ${CC} ${COPT} -o ${DESTDIR}${BINDIR}/blastToPsl${EXE} ${blastToPsl_objs} ${MYLIBS} $L ${STRIP} ${DESTDIR}${BINDIR}/blastToPsl${EXE} compile: ${blastXmlToPsl_objs} ${blastToPsl_objs} ${CC} ${COPT} -o blastXmlToPsl${EXE} ${blastXmlToPsl_objs} ${MYLIBS} $L ${CC} ${COPT} -o blastToPsl${EXE} ${blastToPsl_objs} ${MYLIBS} $L test:: compile cd tests && ${MAKE} test rm -fr tests/output blastXmlToPsl${EXE} blastToPsl${EXE} clean:: rm -fr tests/output rm -f ${blastToPsl_objs} ${blastXmlToPsl_objs} rm -f blastXmlToPsl${EXE} blastToPsl${EXE} -ncbiBlast.o: ncbiBlast.c ncbiBlast.h -pslBuild.o: pslBuild.c pslBuild.h -blastXmlToPsl.o: blastXmlToPsl.c ncbiBlast.h pslBuild.h -blastToPsl.o: blastToPsl.c pslBuild.h