10SN/A# $Id: makefile.in,v 1.25 2022/11/06 21:03:11 tom Exp $
28625SN/A#
30SN/A# UNIX template-makefile for Berkeley Yacc
40SN/A
50SN/ATHIS		= yacc
60SN/A
72362SN/A#### Start of system configuration section. ####
80SN/A
92362SN/Asrcdir 		= @srcdir@
100SN/AVPATH  		= @srcdir@
110SN/A
120SN/ACC		= @CC@
130SN/A
140SN/AINSTALL		= @INSTALL@
150SN/AINSTALL_PROGRAM	= @INSTALL_PROGRAM@
160SN/AINSTALL_DATA	= @INSTALL_DATA@
170SN/Atransform	= @program_transform_name@
180SN/A
190SN/ADEFINES		=
200SN/AEXTRA_CFLAGS	= @EXTRA_CFLAGS@
212362SN/ACPPFLAGS	= -I. -I$(srcdir) $(DEFINES) -DHAVE_CONFIG_H -DYYPATCH=`cat $(srcdir)/VERSION` @CPPFLAGS@
222362SN/ACFLAGS		= @CFLAGS@ $(CPPFLAGS) $(EXTRA_CFLAGS)
232362SN/A
240SN/ALDFLAGS		= @LDFLAGS@
250SN/ALIBS		= @LIBS@
260SN/A
270SN/AAWK		= @AWK@
280SN/ACTAGS		= @CTAGS@
290SN/AETAGS		= @ETAGS@
300SN/AFGREP		= @FGREP@
310SN/ALINT		= @LINT@
3210071SN/ALINTFLAGS	= @LINT_OPTS@
338625SN/A
348625SN/Aprefix		= @prefix@
358625SN/Aexec_prefix	= @exec_prefix@
360SN/A
370SN/Adatarootdir	= @datarootdir@
380SN/Abindir		= $(DESTDIR)@bindir@
390SN/Amandir		= $(DESTDIR)@mandir@/man1
400SN/Amanext		= 1
410SN/A
420SN/Atestdir		= $(srcdir)/test
430SN/A
440SN/ASKELETON	= @SKELETON@
450SN/Ax		= @EXEEXT@
4610071SN/Ao		= .@OBJEXT@
470SN/A
480SN/A#### End of system configuration section. ####
490SN/A
500SN/ASHELL		= /bin/sh
510SN/A@SET_MAKE@
520SN/A
530SN/AH_FILES = \
540SN/A	defs.h
550SN/A
560SN/AC_FILES = \
570SN/A	closure.c \
5810071SN/A	error.c \
590SN/A	graph.c \
600SN/A	lalr.c \
610SN/A	lr0.c \
620SN/A	main.c \
630SN/A	mkpar.c \
640SN/A	mstring.c \
65	output.c \
66	reader.c \
67	$(SKELETON).c \
68	symtab.c \
69	verbose.c \
70	warshall.c
71
72OBJS	= \
73	closure$o \
74	error$o \
75	graph$o \
76	lalr$o \
77	lr0$o \
78	main$o \
79	mkpar$o \
80	mstring$o \
81	output$o \
82	reader$o \
83	$(SKELETON)$o \
84	symtab$o \
85	verbose$o \
86	warshall$o
87
88YACCPAR	= \
89	btyaccpar.c \
90	yaccpar.c
91
92TRANSFORM_BIN = sed 's/$x$$//'       |sed '$(transform)'|sed 's/$$/$x/'
93TRANSFORM_MAN = sed 's/$(manext)$$//'|sed '$(transform)'|sed 's/$$/$(manext)/'
94
95actual_bin = `echo $(THIS)$x        | $(TRANSFORM_BIN)`
96actual_man = `echo $(THIS).$(manext)| $(TRANSFORM_MAN)`
97
98all : $(THIS)$x
99
100install: all installdirs
101	$(INSTALL_PROGRAM) $(THIS)$x $(bindir)/$(actual_bin)
102	- $(INSTALL_DATA) $(srcdir)/$(THIS).1 $(mandir)/$(actual_man)
103
104installdirs:
105	mkdir -p $(bindir)
106	- mkdir -p $(mandir)
107
108uninstall:
109	- rm -f $(bindir)/$(actual_bin)
110	- rm -f $(mandir)/$(actual_man)
111
112################################################################################
113.SUFFIXES : .c $o .i .skel
114
115.c$o:
116	@RULE_CC@
117	@ECHO_CC@$(CC) -c $(CFLAGS) $<
118
119.c.i :
120	@RULE_CC@
121	@ECHO_CC@$(CPP) -C $(CPPFLAGS) $*.c >$@
122
123.skel.c :
124	$(AWK) -f $(srcdir)/skel2c $*.skel > $@
125
126################################################################################
127
128$(THIS)$x : $(OBJS)
129	@ECHO_LD@$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
130
131mostlyclean :
132	- rm -f core .nfs* *$o *.bak *.BAK *.out
133
134clean :: mostlyclean
135	- rm -f $(THIS)$x
136
137distclean :: clean
138	- rm -f config.log config.cache config.status config.h makefile man2html.tmp
139	- rm -f $(testdir)/yacc/test-* $(testdir)/btyacc/test-*
140
141realclean :: distclean
142	- rm -f tags TAGS
143
144sources : $(YACCPAR)
145
146maintainer-clean :: realclean
147	rm -f $(YACCPAR)
148
149################################################################################
150check:	$(THIS)$x
151	@echo "** making $@"
152	@FGREP="$(FGREP)" $(SHELL) $(testdir)/run_test.sh $(testdir)
153
154check_make: $(THIS)$x
155	@echo "** making $@"
156	@FGREP="$(FGREP)" $(SHELL) $(testdir)/run_make.sh $(testdir)
157
158check_lint:
159	@echo "** making $@"
160	@FGREP="$(FGREP)" $(SHELL) $(testdir)/run_lint.sh $(testdir)
161################################################################################
162tags: $(H_FILES) $(C_FILES) 
163	$(CTAGS) $(C_FILES) $(H_FILES)
164
165lint: $(C_FILES) 
166	$(LINT) $(LINTFLAGS) $(CPPFLAGS) $(C_FILES)
167
168@MAKE_UPPER_TAGS@TAGS: $(H_FILES) $(C_FILES) 
169@MAKE_UPPER_TAGS@	$(ETAGS) $(C_FILES) $(H_FILES)
170
171depend:
172	makedepend -- $(CPPFLAGS) -- $(C_FILES)
173
174$(OBJS) : defs.h makefile
175
176main$o \
177$(SKELETON)$o : VERSION
178
179# DO NOT DELETE THIS LINE -- make depend depends on it.
180