bool

Програм за тестирање логичких израза
git clone https://git.sr.ht/~strahinja/bool
Дневник | Датотеке | Референце | ПРОЧИТАЈМЕ | ЛИЦЕНЦА

Makefile (1472B)


      1 .POSIX:
      2 
      3 include config.mk
      4 
      5 .SUFFIXES:
      6 .SUFFIXES: .1.in .1 .h.in .h .y .l .c .o
      7 
      8 .1.in.1:
      9 	sh lib/replacepat $< $@
     10 
     11 .h.in.h:
     12 	sh lib/replacepat $< $@
     13 
     14 all: makedate makeversion $(PROG) $(MANPAGE)
     15 	if [ -f .rebuild ]; then rm .rebuild; make -e all; else true; fi
     16 
     17 date:
     18 	sh lib/makedate
     19 
     20 version:
     21 	sh lib/makeversion
     22 
     23 makedate:
     24 	sh lib/makedate -l
     25 
     26 makeversion:
     27 	sh lib/makeversion -l
     28 
     29 $(MANPAGE): $(MANPAGE).in date version
     30 
     31 version.h: version.h.in date version
     32 
     33 lex.yy.c: bool.l
     34 	$(FLEX) bool.l
     35 
     36 # Have to use explicit rules to prevent deletion of y.tab.c, so the program can
     37 # be properly debugged
     38 y.tab.c: bool.y
     39 	$(YACC) $(YACCFLAGS) bool.y
     40 
     41 bool.o: y.tab.c $(HEADERS)
     42 	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -c y.tab.c
     43 
     44 lex.yy.o: lex.yy.c
     45 
     46 $(PROG): $(OBJS) $(SRC) $(HEADERS)
     47 	$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
     48 
     49 clean:
     50 	rm -f bool y.tab.c lex.yy.c *.o *~
     51 
     52 install: all
     53 	$(INSTALL) -Dm 0644 $(MANPAGE) $(MANPREFIX)/man1/$(MANPAGE)
     54 	$(INSTALL) -Dm 0644 README $(DOCDIR)/README
     55 	$(INSTALL) -Dm 0644 LICENSE $(DOCDIR)/LICENSE
     56 	$(INSTALL) -Dm 0755 $(PROG) $(BINDIR)/$(PROG)
     57 
     58 uninstall:
     59 	rm -f $(MANPREFIX)/man1/$(MANPAGE)
     60 	rmdir $(MANPREFIX)/man1 2>/dev/null || true
     61 	rmdir $(MANPREFIX) 2>/dev/null || true
     62 	rm -f $(DOCDIR)/README
     63 	rm -f $(DOCDIR)/LICENSE
     64 	rmdir $(DOCDIR) 2>/dev/null || true
     65 	rm -f $(PROG) $(BINDIR)/$(PROG)
     66 	rmdir $(BINDIR) 2>/dev/null || true
     67 
     68 pack:
     69 	sh -x lib/mkpack
     70 
     71 .PHONY: all clean install makedate makeversion pack uninstall