a4caffa71aa9775117f5da25038d5ca5dadcd47a
braney
  Mon Sep 21 14:29:12 2026 -0700
tests: name trashDirTester once in the hg/lib/tests all: target

859bc749b05 added the line twice.  make no-ops the second one, so nothing
was broken, but the list should name it once.  Found in code review.

refs #38303, refs #37623, refs #38391

diff --git src/hg/lib/tests/makefile src/hg/lib/tests/makefile
index d5299d1aa3d..141d5be717b 100644
--- src/hg/lib/tests/makefile
+++ src/hg/lib/tests/makefile
@@ -1,174 +1,173 @@
 kentSrc = ../../..
 include ../../../inc/common.mk
 
 L += ${MYSQLLIBS} -lm
 MYLIBDIR = ../../../lib/${MACHTYPE}
 MYLIBS =  ${MYLIBDIR}/jkhgap.a ${MYLIBDIR}/jkweb.a
 BIN_DIR = bin/${MACHTYPE}
 
 all: 	${BIN_DIR}/genePredTester \
 	${BIN_DIR}/trashDirTester \
 	${BIN_DIR}/mallocTopPadTester \
 	${BIN_DIR}/pslReaderTester \
 	${BIN_DIR}/quickLiftTester \
 	${BIN_DIR}/sessionDataTester \
-	${BIN_DIR}/trashDirTester \
 #	${BIN_DIR}/annoGratorTester \
 	${BIN_DIR}/binTest \
 	${BIN_DIR}/customTrackTester \
 	${BIN_DIR}/hgvsTester \
 	${BIN_DIR}/sqlCheck 
 
 ${BIN_DIR}/%: %.c ${MYLIBS}
 	@${MKDIR} ${BIN_DIR}
 	${CC} ${CC_PROG_OPTS} -o $@ $*.c ${MYLIBS} $L
 
 #test: binTest spDbTest hdbTest genePredTest pslReaderTest annoGratorTest customTrackTest hgvsTest
 test: binTest quickLiftTest sessionDataTest trashDirTest mallocTopPadTest \
 	hVarSubstHtmlTest dataVersionPathTest genarkLiftOverTest \
 	snapshotTypeTest sessionDirTest geoMirrorSelfTest asForDbTest spDbTest hdbTest genePredTest pslReaderTest customTrackTest hgvsTest
 	rm -r output
 	echo tested all
 
 mkdirs:
 	@${MKDIR} output ${BIN_DIR}
 
 loaders:
 	ln -sf ${CGI_BIN}/loader .
 
 spDbTest: ${BIN_DIR}/spDbTest mkdirs
 	${BIN_DIR}/spDbTest sp121210 Q9FFH7 > output/spDbTest
 	${BIN_DIR}/spDbTest sp121210 P29312 >> output/spDbTest
 	diff expected/spDbTest output/spDbTest
 
 hdbTest: ${BIN_DIR}/hdbTest mkdirs
 	${BIN_DIR}/hdbTest > output/hdbTest
 	diff expected/hdbTest output/hdbTest
 
 genePredTest: ${BIN_DIR}/genePredTester mkdirs
 	${MAKE} -f genePredTests.mk test
 
 pslReaderTest: ${BIN_DIR}/pslReaderTester mkdirs
 	${MAKE} -f pslReaderTests.mk test
 
 #annoGratorTest: ${BIN_DIR}/annoGratorTester mkdirs
 #	${MAKE} -f annoGratorTests.mk test
 
 customTrackTest: ${BIN_DIR}/customTrackTester loaders mkdirs
 	${MAKE} -f customTrackTests.mk test BIN_DIR=${BIN_DIR} OUT_DIR=output
 
 hgvsTest: ${BIN_DIR}/hgvsTester mkdirs
 	${MAKE} -f hgvsTests.mk test
 
 binTest: mkdirs ${BIN_DIR}/binTest
 	@./binTest.sh
 
 quickLiftTest: ${BIN_DIR}/quickLiftTester mkdirs
 	${BIN_DIR}/quickLiftTester > output/quickLiftTest
 	diff expected/quickLiftTest output/quickLiftTest
 
 sessionDataTest: ${BIN_DIR}/sessionDataTester mkdirs
 	${BIN_DIR}/sessionDataTester output/sessionData > output/sessionDataTest
 	diff expected/sessionDataTest output/sessionDataTest
 
 # Three runs, because hgConfig caches the config it read, so one process can only answer for
 # one spelling of sessionDataDir.  The fixture is made here rather than in C: a directory, a
 # symlink to it, and three confs naming the same place three ways.  Each conf includes the
 # developer's own so the database settings come along, and is mode 600 because hgConfig
 # refuses a group-readable file whose name begins with a dot -- these do not, but the habit is
 # worth keeping.
 trashDirTest: ${BIN_DIR}/trashDirTester mkdirs
 	rm -rf output/sd
 	${MKDIR} output/sd/real/hgt
 	ln -s real output/sd/link
 	echo "include ${HOME}/.hg.conf" > output/sd/link.conf
 	echo "sessionDataDir=`pwd`/output/sd/link" >> output/sd/link.conf
 	echo "include ${HOME}/.hg.conf" > output/sd/real.conf
 	echo "sessionDataDir=`pwd`/output/sd/real" >> output/sd/real.conf
 	echo "include ${HOME}/.hg.conf" > output/sd/rel.conf
 	echo "sessionDataDir=output/sd/link" >> output/sd/rel.conf
 	HGDB_CONF=output/sd/link.conf ${BIN_DIR}/trashDirTester \
 	    "the symlink, absolute" `pwd`/output/sd/link `pwd`/output/sd/real \
 	    > output/trashDirTest
 	HGDB_CONF=output/sd/real.conf ${BIN_DIR}/trashDirTester \
 	    "the resolved directory, absolute" `pwd`/output/sd/link `pwd`/output/sd/real \
 	    >> output/trashDirTest
 	HGDB_CONF=output/sd/rel.conf ${BIN_DIR}/trashDirTester \
 	    "the symlink, relative" `pwd`/output/sd/link `pwd`/output/sd/real \
 	    >> output/trashDirTest
 	diff expected/trashDirTest output/trashDirTest
 
 # Twice: once with the setting and once without, because the answer is the DIFFERENCE between
 # them.  A single run could pass on a library whose own default happened to be large.
 mallocTopPadTest: ${BIN_DIR}/mallocTopPadTester mkdirs
 	echo "include ${HOME}/.hg.conf" > output/topPadOff.conf
 	echo "include ${HOME}/.hg.conf" > output/topPadOn.conf
 	echo "mallocTopPad=33554432" >> output/topPadOn.conf
 	HGDB_CONF=output/topPadOff.conf ${BIN_DIR}/mallocTopPadTester > output/mallocTopPadTest
 	HGDB_CONF=output/topPadOn.conf ${BIN_DIR}/mallocTopPadTester >> output/mallocTopPadTest
 	diff expected/mallocTopPadTest output/mallocTopPadTest
 
 hVarSubstHtmlTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/hVarSubstHtmlTester hVarSubstHtmlTester.c ${MYLIBS} $L
 	${BIN_DIR}/hVarSubstHtmlTester > output/hVarSubstHtmlTest
 	diff expected/hVarSubstHtmlTest output/hVarSubstHtmlTest
 
 dataVersionPathTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/dataVersionPathTester dataVersionPathTester.c ${MYLIBS} $L
 	${BIN_DIR}/dataVersionPathTester > output/dataVersionPathTest
 	diff expected/dataVersionPathTest output/dataVersionPathTest
 
 genarkLiftOverTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/genarkLiftOverTester genarkLiftOverTester.c ${MYLIBS} $L
 	${BIN_DIR}/genarkLiftOverTester > output/genarkLiftOverTest
 	diff expected/genarkLiftOverTest output/genarkLiftOverTest
 
 snapshotTypeTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/snapshotTypeTester snapshotTypeTester.c ${MYLIBS} $L
 	${BIN_DIR}/snapshotTypeTester > output/snapshotTypeTest
 	diff expected/snapshotTypeTest output/snapshotTypeTest
 
 sessionDirTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/sessionDirTester sessionDirTester.c ${MYLIBS} $L
 	${BIN_DIR}/sessionDirTester > output/sessionDirTest
 	diff expected/sessionDirTest output/sessionDirTest
 
 # browser.node is set in the conf rather than assumed, since a developer's own hg.conf need
 # not have one.
 geoMirrorSelfTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/geoMirrorSelfTester geoMirrorSelfTester.c ${MYLIBS} $L
 	echo "include ${HOME}/.hg.conf" > output/geoNode.conf
 	echo "browser.node=1" >> output/geoNode.conf
 	HGDB_CONF=output/geoNode.conf ${BIN_DIR}/geoMirrorSelfTester > output/geoMirrorSelfTest
 	diff expected/geoMirrorSelfTest output/geoMirrorSelfTest
 
 # NOT in the test target above, and waiting on one grant.  This is the one test here that
 # WRITES to a central database, so it is pointed at hgcentralregress,
 # which exists for tests and which nothing else reads.  makeHgCentralRegress.sh creates it and
 # is safe to run every time.  login.cookieSalt is set because the sync signature is made with
 # it; the value is a test value and means nothing outside this run.
 hubSpaceKeysTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/hubSpaceKeysTester hubSpaceKeysTester.c ${MYLIBS} $L
 	./makeHgCentralRegress.sh > /dev/null
 	echo "include ${HOME}/.hg.conf" > output/regress.conf
 	echo "central.db=hgcentralregress" >> output/regress.conf
 	echo "login.cookieSalt=testSaltForRegressRuns" >> output/regress.conf
 	HGDB_CONF=output/regress.conf ${BIN_DIR}/hubSpaceKeysTester > output/hubSpaceKeysTest
 	diff expected/hubSpaceKeysTest output/hubSpaceKeysTest
 # It runs as soon as central.user has UPDATE and DELETE on hgcentralregress; see
 # makeHgCentralRegress.sh for the grant.  Add it to the test target on that day.
 
 # The conf a CGI reads, not the developer's own: isGenArk() needs genarkHubPrefix, which is
 # set in the shared one.
 asForDbTest: mkdirs
 	${CC} ${CC_PROG_OPTS} -o ${BIN_DIR}/asForDbTester asForDbTester.c ${MYLIBS} $L
 	echo "include /usr/local/apache/cgi-bin/hg.conf" > output/genark.conf
 	HGDB_CONF=output/genark.conf ${BIN_DIR}/asForDbTester > output/asForDbTest 2>&1
 	diff expected/asForDbTest output/asForDbTest
 
 sqlCheck: ${BIN_DIR}/sqlCheck mkdirs
 	${MAKE} -f sqlCheck.mk test BIN_DIR=${BIN_DIR} OUT_DIR=output
 
 
 clean:
 	rm -rf *.o bin output *.tmp loader udcCache