Makefile - scc - simple c99 compiler
 (HTM) git clone git://git.simple-cc.org/scc
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
       Makefile (1458B)
       ---
            1 .POSIX:
            2 
            3 DIRS =\
            4         amd64-sysv\
            5         arm64-sysv\
            6         i386-sysv\
            7         qbe\
            8         qbe_amd64-sysv\
            9         qbe_arm64-sysv\
           10         qbe_riscv64-sysv\
           11         z80-scc\
           12 
           13 PROJECTDIR = ../../../..
           14 include $(PROJECTDIR)/scripts/rules.mk
           15 
           16 MORE_LDLIBS = -lscc
           17 
           18 QBE_OBJS =\
           19         code.o\
           20         main.o\
           21         node.o\
           22         parser.o\
           23         sethi.o\
           24         swtch.o\
           25         symbol.o\
           26 
           27 OBJS =\
           28         cfg.o\
           29         $(QBE_OBJS)\
           30 
           31 QBE_AMD64_SYSV_OBJS=\
           32         qbe_amd64-sysv/builtin.o\
           33         $(QBE_OBJS)\
           34 
           35 QBE_ARM64_SYSV_OBJS=\
           36         qbe_arm64-sysv/builtin.o\
           37         $(QBE_OBJS)\
           38 
           39 QBE_RISCV64_SYSV_OBJS=\
           40         qbe_riscv64-sysv/builtin.o\
           41         $(QBE_OBJS)\
           42 
           43 Z80_SCC_OBJS =\
           44         z80-scc/builtin.o\
           45         $(OBJS) \
           46 
           47 TARGET  =\
           48         cc2-qbe_amd64-sysv\
           49         cc2-qbe_arm64-sysv\
           50         cc2-qbe_riscv64-sysv\
           51         cc2-z80-scc\
           52 
           53 all:
           54         +@$(MAKE) $(DIRS)
           55         +@$(MAKE) $(TARGET)
           56         @cp $(TARGET) $(LIBEXEC)/scc
           57 
           58 main.o: error.h
           59 qbe_amd64-sysv qbe_arm64-sysv: qbe
           60 qbe_amd64-sysv: amd64-sysv
           61 qbe_arm64-sysv: arm64-sysv
           62 
           63 error.h: cc2.h
           64         rm -f $@;\
           65         trap 'rm -f $$$$.h' EXIT INT QUIT TERM HUP;\
           66         awk -f generror.awk cc2.h > $$$$.h && mv $$$$.h $@
           67 
           68 cc2-qbe_amd64-sysv: $(LIBSCC) $(QBE_AMD64_SYSV_OBJS)
           69         $(CC) $(PROJ_LDFLAGS) $(QBE_AMD64_SYSV_OBJS) $(PROJ_LDLIBS) -o $@
           70 
           71 cc2-qbe_arm64-sysv: $(LIBSCC) $(QBE_ARM64_SYSV_OBJS)
           72         $(CC) $(PROJ_LDFLAGS) $(QBE_ARM64_SYSV_OBJS) $(PROJ_LDLIBS) -o $@
           73 
           74 cc2-qbe_riscv64-sysv: $(LIBSCC) $(QBE_RISCV64_SYSV_OBJS)
           75         $(CC) $(PROJ_LDFLAGS) $(QBE_RISCV64_SYSV_OBJS) $(PROJ_LDLIBS) -o $@
           76 
           77 cc2-z80-scc: $(LIBSCC) $(Z80_SCC_OBJS)
           78         $(CC) $(PROJ_LDFLAGS) $(Z80_SCC_OBJS) $(PROJ_LDLIBS) -o $@
           79 
           80 clean:
           81         rm -f error.h