1# Id: Makefile.in,v 1.42 2012/03/15 09:22:12 plunky Exp 2# $NetBSD: Makefile.in,v 1.1.1.4.4.1 2012/04/03 16:36:21 riz Exp $ 3# 4# Makefile.in for ccom 5# 6VPATH=@srcdir@ 7srcdir=@srcdir@ 8top_srcdir=@top_srcdir@ 9builddir=@builddir@ 10top_builddir=@top_builddir@ 11CC = @CC@ 12EXEEXT = @EXEEXT@ 13CC_FOR_BUILD = @CC_FOR_BUILD@ 14CFLAGS = @CFLAGS@ @ADD_CFLAGS@ 15CPPFLAGS = @CPPFLAGS@ @ADD_CPPFLAGS@ -D_ISOC99_SOURCE \ 16 -Dos_$(TARGOS) -Dmach_$(TARGMACH) \ 17 -I$(srcdir) -I$(builddir) -I$(top_builddir) -I$(MIPDIR) -I$(MDIR) \ 18 -I$(top_srcdir)/os/$(TARGOS) 19LIBS = @LIBS@ 20LDFLAGS = @LDFLAGS@ 21LEX = @LEX@ 22LFLAGS = 23LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ 24YACC = @YACC@ 25YFLAGS = @YFLAGS@ 26TARGOS = @targos@ 27TARGOSVER = @targosver@ 28TARGMACH = @targmach@ 29prefix = @prefix@ 30exec_prefix = @exec_prefix@ 31libexecdir = @libexecdir@ 32datarootdir = @datarootdir@ 33mandir = @mandir@ 34strip = @strip@ 35INSTALL = @INSTALL@ 36INSTALL_PROGRAM = @INSTALL_PROGRAM@ 37INSTALL_DATA = @INSTALL_DATA@ 38 39MDIR=$(top_srcdir)/arch/$(TARGMACH) 40MIPDIR=$(top_srcdir)/mip 41 42DEST=@BINPREFIX@ccom$(EXEEXT) 43MKEXT=mkext$(EXEEXT) 44 45all: $(DEST) 46 47OBJS= builtins.o cgram.o code.o common.o compat.o external.o \ 48 gcc_compat.o init.o inline.o local.o local2.o main.o \ 49 match.o optim.o optim2.o order.o pftn.o reader.o \ 50 regs.o scan.o stabs.o symtabs.o table.o trees.o 51 52LOBJS= mkext.lo common.lo table.lo 53 54HDRS= $(srcdir)/pass1.h $(MIPDIR)/pass2.h $(MIPDIR)/manifest.h \ 55 $(MDIR)/macdefs.h $(MIPDIR)/node.h $(MIPDIR)/compat.h 56 57# 58# round 1: generate external.[ch], cgram.[ch] & scan.c 59# 60 61$(LOBJS): $(HDRS) 62 63mkext.lo: $(MIPDIR)/mkext.c 64 $(CC_FOR_BUILD) $(CFLAGS) $(CPPFLAGS) -DMKEXT -c -o $@ $(MIPDIR)/mkext.c 65 66common.lo: $(MIPDIR)/common.c 67 $(CC_FOR_BUILD) $(CFLAGS) $(CPPFLAGS) -DMKEXT -c -o $@ $(MIPDIR)/common.c 68 69table.lo: $(MDIR)/table.c 70 $(CC_FOR_BUILD) $(CFLAGS) $(CPPFLAGS) -DMKEXT -c -o $@ $(MDIR)/table.c 71 72$(MKEXT): $(LOBJS) 73 $(CC_FOR_BUILD) $(LDFLAGS) $(LOBJS) -o $@ $(LIBS) 74 75external.c: $(MKEXT) 76 $(builddir)/$(MKEXT) 77 78cgram.c: $(srcdir)/cgram.y 79 $(YACC) $(YFLAGS) -d $(srcdir)/cgram.y 80 mv -f y.tab.c cgram.c 81 mv -f y.tab.h cgram.h 82 83scan.c: $(srcdir)/scan.l 84 $(LEX) $(LFLAGS) $(srcdir)/scan.l 85 mv -f $(LEX_OUTPUT_ROOT).c scan.c 86 87# 88# round 2: compile $(OBJS) 89# 90 91$(OBJS): $(HDRS) external.c cgram.c 92 93builtins.o: $(srcdir)/builtins.c 94 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/builtins.c 95 96cgram.o: cgram.c 97 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ cgram.c 98 99code.o: $(MDIR)/code.c 100 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MDIR)/code.c 101 102common.o: $(MIPDIR)/common.c 103 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/common.c 104 105compat.o: $(MIPDIR)/compat.c 106 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/compat.c 107 108external.o: external.c 109 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ external.c 110 111gcc_compat.o: $(srcdir)/gcc_compat.c 112 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/gcc_compat.c 113 114init.o: $(srcdir)/init.c 115 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/init.c 116 117inline.o: $(srcdir)/inline.c 118 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/inline.c 119 120local.o: $(MDIR)/local.c 121 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MDIR)/local.c 122 123local2.o: $(MDIR)/local2.c 124 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MDIR)/local2.c 125 126main.o: $(srcdir)/main.c 127 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/main.c 128 129match.o: $(MIPDIR)/match.c 130 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/match.c 131 132optim.o: $(srcdir)/optim.c 133 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/optim.c 134 135optim2.o: $(MIPDIR)/optim2.c 136 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/optim2.c 137 138order.o: $(MDIR)/order.c 139 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MDIR)/order.c 140 141pftn.o: $(srcdir)/pftn.c 142 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/pftn.c 143 144reader.o: $(MIPDIR)/reader.c 145 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/reader.c 146 147regs.o: $(MIPDIR)/regs.c 148 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MIPDIR)/regs.c 149 150scan.o: scan.c 151 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ scan.c 152 153stabs.o: $(srcdir)/stabs.c 154 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/stabs.c 155 156symtabs.o: $(srcdir)/symtabs.c 157 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/symtabs.c 158 159table.o: $(MDIR)/table.c 160 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(MDIR)/table.c 161 162trees.o: $(srcdir)/trees.c 163 $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $(srcdir)/trees.c 164 165# 166# round 3: build $(DEST) 167# 168 169$(DEST): $(OBJS) 170 $(CC) $(LDFLAGS) $(OBJS) -o $@ $(LIBS) 171 172install: $(DEST) 173 test -z "$(DESTDIR)$(libexecdir)" || mkdir -p "$(DESTDIR)$(libexecdir)" 174 $(INSTALL_PROGRAM) $(DEST) $(DESTDIR)$(libexecdir) 175 @if [ $(strip) = yes ]; then \ 176 strip $(DESTDIR)$(libexecdir)/$(DEST) ; \ 177 echo strip $(DESTDIR)$(libexecdir)/$(DEST) ; \ 178 fi 179 test -z "$(DESTDIR)$(mandir)/man1" || mkdir -p "$(DESTDIR)$(mandir)/man1" 180 $(INSTALL_DATA) $(srcdir)/ccom.1 $(DESTDIR)$(mandir)/man1/$(DEST).1 181 182clean: 183 rm -f $(DEST) $(OBJS) $(MKEXT) $(LOBJS) $(LEX_OUTPUT_ROOT).c \ 184 scan.c y.tab.[ch] cgram.[ch] external.[ch] 185 186distclean: clean 187 rm -f Makefile 188