1#
2# Main $(MAKE)file for PCCTS 1.33MR33	/* MRXXX */
3#
4# Terence Parr
5# Parr Research Corporation
6#
7# verbosity versus silence...
8#PSss=
9#
10# this can be set to /user/local/bin etc...
11BINDIR=bin
12# This part added by Thomas Herter, M"unchen, Germany. See also manpages
13# target.
14MANDIR=$(HOME)/man
15MANEXT=1
16MANFILES=dlg/dlg.1 antlr/antlr.1
17
18#CC=cc
19
20# Set COPT if your build setup does not pass it in CFLAGS
21#COPT=-O2
22
23#
24# 13 July 2015 - SLA
25# Updated to split out $(MAKE) targets (for cccc) and enable jobserver.
26#
27
28.PHONY : pccts dlg antlr sorcerer genmk pre welcome fini
29
30pccts:	pre welcome antlr dlg sorcerer genmk fini
31
32pre:
33	@if [ ! -d $(BINDIR) ] ; then mkdir -p $(BINDIR) ; fi
34
35welcome	:	pre
36	@echo " "
37	@echo "             Welcome to PCCTS 1.33MR33 installation"
38	@echo " "
39	@echo "             (Version 1.33 Maintenance Release #33)" # mrxxx
40	@echo " "
41	@echo "                  Released 19 April 2002"
42	@echo " "
43	@echo "                        Featuring"
44	@echo "         ANTLR     -- ANother Tool for Language Recognition"
45	@echo "         DLG       -- DFA-based Lexical Analyzer Generator"
46	@echo "         SORCERER  -- Source-to-source translator (tree walker)"
47	@echo " "
48	@echo "                  http://www.antlr.org"
49	@echo " "
50	@echo "             Trouble reports to tmoog@polhode.com"
51	@echo "             Additional PCCTS 1.33 information at"
52	@echo "                  http://www.polhode.com"
53	@echo
54	@echo
55	@echo "To substitute gcc for CC to invoke compiler: $(MAKE) CC=gcc"
56	@echo "If there are problems with cr and lf try: unzip -a ..."
57	@echo
58	@echo Making executables...
59
60antlr	:	pre
61	$(MAKE) -C antlr $@ || exit $$?
62	@echo antlr executable now in $(BINDIR)
63
64dlg	:	pre
65	$(MAKE) -C dlg $@ || exit $$?
66	@echo dlg executable now in $(BINDIR)
67
68genmk:
69	$(MAKE) -C support/genmk CC="$(CC)" COPT="$(COPT)" $@ || exit $$?
70	cd support/genmk && mv genmk ../../$(BINDIR) || exit $$?
71	@echo genmk executable now in $(BINDIR)
72
73fini:
74	@echo
75	@echo "       PCCTS 1.33MR33 installation complete"  # MRXXX
76
77clean:
78	(cd ./antlr; $(MAKE) -s clean)
79	(cd ./dlg; $(MAKE) -s clean)
80	(cd ./support/genmk; $(MAKE) -s clean)
81
82scrub:
83	(cd ./antlr; $(MAKE) -s scrub)
84	(cd ./dlg; $(MAKE) -s scrub)
85
86manpages:
87	# mkdir -p $(MANDIR)/man$(MANEXT)
88	if [ ! -d $(MANDIR) ] ; then \
89	  mkdir $(MANDIR) ; fi
90	if [ ! -d $(MANDIR)/man$(MANEXT) ] ; then \
91	  mkdir $(MANDIR)/man$(MANEXT); fi
92	cp -p $(MANFILES) $(MANDIR)/man$(MANEXT)
93