207d77bfbb9a1dfecb5f0207f56c199569df3e66 hiram Thu May 2 12:06:02 2013 -0700 clearer use of DEPLIBS and separate from LINKLIBS refs #9104 diff --git src/inc/userApp.mk src/inc/userApp.mk index 529816b..d62e762 100644 --- src/inc/userApp.mk +++ src/inc/userApp.mk @@ -1,48 +1,48 @@ ######################################################################## # user App rules, typical three-line makefile to use this rule set, # the binary program file name is specified by the 'A' variable: # kentSrc = ../.. # A = aveCols # include ${kentSrc}/inc/userApp.mk # # for more than one object file for the resulting 'A' program, use # extraObjects = second.o third.o fourth.o etc.o # # to use object files built elsewhere: # externObjects = ../path/other.o # # use other libraries BEFORE jkweb.a # preMyLibs += path/to/lib/other.a # include ${kentSrc}/inc/common.mk -MYLIBS = ${preMyLibs} ${kentSrc}/lib/${MACHTYPE}/jkweb.a DEPLIBS = ${preMyLibs} ${kentSrc}/lib/${MACHTYPE}/jkweb.a ifeq ($(findstring src/hg/,${CURDIR}),src/hg/) DEPLIBS = ${preMyLibs} ${kentSrc}/lib/${MACHTYPE}/jkhgap.a ${kentSrc}/lib/${MACHTYPE}/jkweb.a - MYLIBS = ${preMyLibs} ${kentSrc}/lib/${MACHTYPE}/jkhgap.a ${kentSrc}/lib/${MACHTYPE}/jkweb.a ${MYSQLLIBS} -lm endif +LINKLIBS = ${DEPLIBS} ${MYSQLLIBS} -lm + O = ${A}.o objects = ${O} ${extraObjects} ${externObjects} -${DESTDIR}${BINDIR}/${A}${EXE}: ${O} ${extraObjects} ${DEPLIBS} - ${CC} ${COPT} -o ${DESTDIR}${BINDIR}/${A}${EXE} ${objects} ${MYLIBS} ${L} -lm +${DESTDIR}${BINDIR}/${A}${EXE}: ${DEPLIBS} ${O} ${extraObjects} + ${CC} ${COPT} -o ${DESTDIR}${BINDIR}/${A}${EXE} ${objects} ${LINKLIBS} ${L} -lm ${STRIP} ${DESTDIR}${BINDIR}/${A}${EXE} -compile:: ${O} ${extraObjects} ${MYLIBS} - ${CC} ${COPT} ${CFLAGS} -o ${A}${EXE} ${objects} ${MYLIBS} ${L} -lm +compile:: ${DEPLIBS} ${O} ${extraObjects} + ${CC} ${COPT} ${CFLAGS} -o ${A}${EXE} ${objects} ${LINKLIBS} ${L} -lm install:: compile rm -f ${DESTDIR}${BINDIR}/${A}${EXE} cp -p ${A}${EXE} ${DESTDIR}${BINDIR}/${A}${EXE} ${STRIP} ${A}${EXE} ${DESTDIR}${BINDIR}/${A}${EXE} rm -f ${O} ${A}${EXE} clean:: rm -f ${O} ${extraObjects} ${A}${EXE} @if test -d tests -a -s tests/makefile; then cd tests && ${MAKE} clean; fi test:: @if test -d tests -a -s tests/makefile; then (cd tests && ${MAKE} test); \ else echo "# no tests directory in $(CURDIR)"; fi