97a41387e5a5dafe84e94c34640ec494d2f316ea
hiram
  Thu May 23 14:19:32 2013 -0700
approaching something useful refs #9104
diff --git src/makefile src/makefile
index adce4cb..85602d3 100644
--- src/makefile
+++ src/makefile
@@ -57,50 +57,53 @@
 
 HG_APPLIST = bedSort liftUp liftOver bedItemOverlapCount encode/validateFiles \
 	 featureBits ratStuff/mafsInRegion ratStuff/mafSpeciesSubset \
 	 pslCDnaFilter genePredToGtf pslPretty pslReps pslSort 
 
 
 HG_UTILS_APPLIST = bedExtendRanges gff3ToGenePred gtfToGenePred \
 	hubCheck overlapSelect makeTableList pslMap
 
 HG_HGWIGGLE_APP = hgWiggle
 
 HG_LOAD_APPLIST = hgGcPercent
 
 BLAT_APPLIST = blat gfClient gfServer
 
-userApps: topLibs hgLib
+userApps: topLibs hgLib destBin
 	cd utils/stringify && echo utils/stringify && ${MAKE}
 	cd utils && echo utils && ${MAKE} userAppsB
 	@for P in ${HG_APPLIST}; do \
 	    ( cd hg/$${P} && echo hg/$${P} && ${MAKE} ) ; \
 	done
 	@for P in ${HG_UTILS_APPLIST}; do \
 	    ( cd hg/utils/$${P} && echo hg/utils/$${P} && ${MAKE} ) ; \
 	done
 	@for P in ${HG_HGWIGGLE_APP}; do \
 	    ( cd hg/makeDb/hgLoadWiggle && echo hg/makeDb/hgLoadWiggle && ${MAKE} $${P} ) ; \
 	done
 	@for P in ${HG_LOAD_APPLIST}; do \
 	    ( cd hg/makeDb/$${P} && echo hg/makeDb/$${P} && ${MAKE} $${P} ) ; \
 	done
 	@for P in ${BLAT_APPLIST}; do \
 	    ( cd $${P} && echo $${P} && ${MAKE} ) ; \
 	done
 	cd utils/userApps && echo utils/userApps && ${MAKE}
 
+destBin:
+	${MKDIR} ${DESTBINDIR}
+
 clean:
 	@for D in ${DIRS} x; do \
             if test "$$D" != "x" ; then \
                 ( cd $$D && echo $$D && ${MAKE} clean ) ;\
                 x=$$? ; if [ $$x -ne 0 ]; then exit $$x ; fi \
             fi ;\
 	done
 	cd lib && ${MAKE} clean 
 	cd hg && ${MAKE} clean
 	cd hg && ${MAKE} clean_utils
 	cd jkOwnLib && ${MAKE} clean
 	cd utils && ${MAKE} clean
 	cd webBlat && ${MAKE} clean
 	cd isPcr && ${MAKE} clean
 	touch non-empty-rm.o
@@ -122,61 +125,59 @@
 # build emacs tags for libraries
 .PHONY: etags
 etags:
 	etags ${LIB_TAGS_IN}
 
 # build tags for all files
 .PHONY: tags-all
 tags-all:
 	find . -name '*.[ch]' | ctags -L -
 
 # build emacs tags for all files
 .PHONY: etags-all
 etags-all:
 	find . -name '*.[ch]' | etags -
 
-utils: libs
+utils: libs destBin
 	${MKDIR} ${SCRIPTS}
-	${MKDIR} ${DESTDIR}${BINDIR}
 	cd parasol && ${MAKE}
 	@for D in ${DIRS} x; do \
             if test "$$D" != "x" ; then \
                 ( cd $$D && echo $$D && ${MAKE} ) ;\
                 x=$$? ; if [ $$x -ne 0 ]; then exit $$x ; fi \
             fi ;\
 	done
 	cd utils && ${MAKE}
 	cd hg && ${MAKE} utils
 
 utils-alpha: libs
 	@for D in ${DIRS} x; do \
             if test "$$D" != "x" ; then \
                 ( cd $$D && echo $$D && ${MAKE} ) ;\
                 x=$$? ; if [ $$x -ne 0 ]; then exit $$x ; fi \
             fi ;\
 	done
 	cd utils && ${MAKE} alpha
 	cd hg && ${MAKE} utils
 
 DIRS = ameme blat index dnaDust protDust weblet aladdin primeMate fuse meta
 
 ##  cellar archive for obsolete programs
 
 cellarDirs = cdnaAli getgene idbQuery reformat scanIntrons tracks wormAli \
 	xenoAli
 
-buildCellar: libs
-	${MKDIR} ${DESTDIR}${BINDIR}
+buildCellar: libs destBin
 	@for D in ${cellarDirs} x; do \
             if test "$$D" != "x" ; then \
                 ( cd $$D && echo $$D && ${MAKE} ) ;\
                 x=$$? ; if [ $$x -ne 0 ]; then exit $$x ; fi \
             fi ;\
 	done
 
 cleanCellar:
 	@for D in ${cellarDirs} x; do \
             if test "$$D" != "x" ; then \
                 ( cd $$D && echo $$D && ${MAKE} clean ) ;\
                 x=$$? ; if [ $$x -ne 0 ]; then exit $$x ; fi \
             fi ;\
 	done