version 1.61, 2011/07/16 23:34:21 |
version 1.62, 2012/04/08 15:56:28 |
|
|
.MAIN: all |
.MAIN: all |
|
|
# prefer .S to a .c, add .po, remove stuff not used in the BSD libraries. |
# prefer .S to a .c, add .po, remove stuff not used in the BSD libraries. |
# .so used for PIC object files. .ln used for lint output files. |
# .so used for PIC object files. |
# .m for objective c files. |
# .m for objective c files. |
.SUFFIXES: |
.SUFFIXES: |
.SUFFIXES: .out .o .go .po .so .S .s .c .cc .C .cxx .f .y .l .ln .m4 .m |
.SUFFIXES: .out .o .go .po .so .S .s .c .cc .C .cxx .f .y .l .m4 .m |
|
|
.c.o: |
.c.o: |
@echo "${COMPILE.c} ${.IMPSRC} -o ${.TARGET}" |
@echo "${COMPILE.c} ${.IMPSRC} -o ${.TARGET}" |
|
|
@${LD} -X -r ${.TARGET}.o -o ${.TARGET} |
@${LD} -X -r ${.TARGET}.o -o ${.TARGET} |
@rm -f ${.TARGET}.o |
@rm -f ${.TARGET}.o |
|
|
.c.ln: |
|
${LINT} ${LINTFLAGS} ${CFLAGS:M-[IDU]*} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC} |
|
|
|
.cc.o .C.o .cxx.o: |
.cc.o .C.o .cxx.o: |
@echo "${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}" |
@echo "${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}" |
@${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}.o |
@${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}.o |
|
|
.endif |
.endif |
.endif |
.endif |
|
|
.if defined(WANTLINT) && ${WANTLINT:L} != "no" |
|
_LIBS+=llib-l${LIB}.ln |
|
.endif |
|
|
|
all: ${_LIBS} _SUBDIRUSE |
all: ${_LIBS} _SUBDIRUSE |
|
|
OBJS+= ${SRCS:N*.h:R:S/$/.o/} |
OBJS+= ${SRCS:N*.h:R:S/$/.o/} |
|
|
-o lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ |
-o lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ |
`${LORDER} ${SOBJS}|tsort -q` ${LDADD} |
`${LORDER} ${SOBJS}|tsort -q` ${LDADD} |
|
|
LOBJS+= ${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln} |
|
LLIBS?= -lc |
|
llib-l${LIB}.ln: ${LOBJS} |
|
@echo building llib-l${LIB}.ln |
|
@rm -f llib-l${LIB}.ln |
|
@${LINT} -C${LIB} ${LOBJS} ${LLIBS} |
|
|
|
.if !target(clean) |
.if !target(clean) |
clean: _SUBDIRUSE |
clean: _SUBDIRUSE |
rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES} |
rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES} |
|
|
rm -f lib${LIB}_g.a ${GOBJS} |
rm -f lib${LIB}_g.a ${GOBJS} |
rm -f lib${LIB}_p.a ${POBJS} |
rm -f lib${LIB}_p.a ${POBJS} |
rm -f lib${LIB}_pic.a lib${LIB}.so.*.* ${SOBJS} |
rm -f lib${LIB}_pic.a lib${LIB}.so.*.* ${SOBJS} |
rm -f llib-l${LIB}.ln ${LOBJS} |
|
.endif |
.endif |
|
|
cleandir: _SUBDIRUSE clean |
cleandir: _SUBDIRUSE clean |
|
|
.if !defined(NOPIC) && defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
.if !defined(NOPIC) && defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
${INSTALL} ${INSTALL_COPY} -S -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ |
${INSTALL} ${INSTALL_COPY} -S -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ |
lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${DESTDIR}${LIBDIR} |
lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${DESTDIR}${LIBDIR} |
.endif |
|
.if defined(WANTLINT) && ${WANTLINT:L} != "no" |
|
${INSTALL} ${INSTALL_COPY} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ |
|
llib-l${LIB}.ln ${DESTDIR}${LINTLIBDIR} |
|
.endif |
.endif |
.if defined(LINKS) && !empty(LINKS) |
.if defined(LINKS) && !empty(LINKS) |
. for lnk file in ${LINKS} |
. for lnk file in ${LINKS} |