diff options
Diffstat (limited to 'share')
-rw-r--r-- | share/mk/bsd.lib.mk | 20 | ||||
-rw-r--r-- | share/mk/bsd.prog.mk | 2 | ||||
-rw-r--r-- | share/mk/sys.mk | 5 |
3 files changed, 24 insertions, 3 deletions
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 9b4525e..11bd797 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -47,7 +47,7 @@ STRIP?= -s # prefer .s to a .c, add .po, remove stuff not used in the BSD libraries # .So used for PIC object files .SUFFIXES: -.SUFFIXES: .out .o .po .So .S .s .c .cc .cpp .cxx .m .C .f .y .l .ln +.SUFFIXES: .out .o .po .So .S .s .asm .c .cc .cpp .cxx .m .C .f .y .l .ln .c.ln: ${LINT} ${LINTOBJFLAGS} ${CFLAGS:M-[DIU]*} ${.IMPSRC} || \ @@ -135,6 +135,24 @@ STRIP?= -s @${LD} -o ${.TARGET}.tmp -x -r ${.TARGET} @mv ${.TARGET}.tmp ${.TARGET} +.asm.o: + ${CC} -x assembler-with-cpp ${CFLAGS:M-[BID]*} ${AINC} -c \ + ${.IMPSRC} -o ${.TARGET} + @${LD} -o ${.TARGET}.tmp -x -r ${.TARGET} + @mv ${.TARGET}.tmp ${.TARGET} + +.asm.po: + ${CC} -x assembler-with-cpp -DPROF ${CFLAGS:M-[BID]*} ${AINC} -c \ + ${.IMPSRC} -o ${.TARGET} + @${LD} -o ${.TARGET}.tmp -X -r ${.TARGET} + @mv ${.TARGET}.tmp ${.TARGET} + +.asm.So: + ${CC} -x assembler-with-cpp ${PICFLAG} -DPIC ${CFLAGS:M-[BID]*} ${AINC} -c \ + ${.IMPSRC} -o ${.TARGET} + @${LD} -o ${.TARGET}.tmp -x -r ${.TARGET} + @mv ${.TARGET}.tmp ${.TARGET} + .S.o: ${CC} ${CFLAGS:M-[BID]*} ${AINC} -c ${.IMPSRC} -o ${.TARGET} @${LD} -o ${.TARGET}.tmp -x -r ${.TARGET} diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk index 202d183..7fd1be0 100644 --- a/share/mk/bsd.prog.mk +++ b/share/mk/bsd.prog.mk @@ -3,7 +3,7 @@ .include <bsd.init.mk> -.SUFFIXES: .out .o .c .cc .cpp .cxx .C .m .y .l .s .S +.SUFFIXES: .out .o .c .cc .cpp .cxx .C .m .y .l .s .S .asm CFLAGS+=${COPTS} ${DEBUG_FLAGS} diff --git a/share/mk/sys.mk b/share/mk/sys.mk index 030c852..0925ae0 100644 --- a/share/mk/sys.mk +++ b/share/mk/sys.mk @@ -16,7 +16,7 @@ unix ?= We run FreeBSD, not UNIX. .if defined(%POSIX) .SUFFIXES: .o .c .y .l .a .sh .f .else -.SUFFIXES: .out .a .ln .o .c .cc .cpp .cxx .C .m .F .f .e .r .y .l .S .s .cl .p .h .sh +.SUFFIXES: .out .a .ln .o .c .cc .cpp .cxx .C .m .F .f .e .r .y .l .S .s .asm .cl .p .h .sh .endif .LIBS: .a @@ -207,6 +207,9 @@ HTAGSFLAGS= .s.o: ${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC} +.asm.o: + ${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC} + # XXX not -j safe .y.o: ${YACC} ${YFLAGS} ${.IMPSRC} |