xref: /freebsd/contrib/one-true-awk/makefile (revision 1b11b783)
1146a1e50SDavid E. O'Brien# /****************************************************************
2146a1e50SDavid E. O'Brien# Copyright (C) Lucent Technologies 1997
3146a1e50SDavid E. O'Brien# All Rights Reserved
4146a1e50SDavid E. O'Brien#
5146a1e50SDavid E. O'Brien# Permission to use, copy, modify, and distribute this software and
6146a1e50SDavid E. O'Brien# its documentation for any purpose and without fee is hereby
7146a1e50SDavid E. O'Brien# granted, provided that the above copyright notice appear in all
8146a1e50SDavid E. O'Brien# copies and that both that the copyright notice and this
9146a1e50SDavid E. O'Brien# permission notice and warranty disclaimer appear in supporting
10146a1e50SDavid E. O'Brien# documentation, and that the name Lucent Technologies or any of
11146a1e50SDavid E. O'Brien# its entities not be used in advertising or publicity pertaining
12146a1e50SDavid E. O'Brien# to distribution of the software without specific, written prior
13146a1e50SDavid E. O'Brien# permission.
14146a1e50SDavid E. O'Brien#
15146a1e50SDavid E. O'Brien# LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
16146a1e50SDavid E. O'Brien# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
17146a1e50SDavid E. O'Brien# IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY
18146a1e50SDavid E. O'Brien# SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
19146a1e50SDavid E. O'Brien# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
20146a1e50SDavid E. O'Brien# IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
21146a1e50SDavid E. O'Brien# ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
22146a1e50SDavid E. O'Brien# THIS SOFTWARE.
23146a1e50SDavid E. O'Brien# ****************************************************************/
24146a1e50SDavid E. O'Brien
25146a1e50SDavid E. O'BrienCFLAGS = -g
26146a1e50SDavid E. O'BrienCFLAGS = -O2
27146a1e50SDavid E. O'BrienCFLAGS =
28146a1e50SDavid E. O'Brien
29146a1e50SDavid E. O'BrienCC = gcc -Wall -g
30146a1e50SDavid E. O'BrienCC = cc
311b11b783SRuslan ErmilovCC = gcc -Wall -g -Wwrite-strings
321b11b783SRuslan ErmilovCC = gcc -fprofile-arcs -ftest-coverage # then gcov f1.c; cat f1.c.gcov
33addad6afSRong-En FanCC = gcc -O4
34addad6afSRong-En Fan
35146a1e50SDavid E. O'BrienYACC = bison -y
36146a1e50SDavid E. O'BrienYACC = yacc
37146a1e50SDavid E. O'BrienYFLAGS = -d
38146a1e50SDavid E. O'Brien
39146a1e50SDavid E. O'BrienOFILES = b.o main.o parse.o proctab.o tran.o lib.o run.o lex.o
40146a1e50SDavid E. O'Brien
41813da98dSDavid E. O'BrienSOURCE = awk.h ytab.c ytab.h proto.h awkgram.y lex.c b.c main.c \
421b11b783SRuslan Ermilov	maketab.c parse.c lib.c run.c tran.c proctab.c
43146a1e50SDavid E. O'Brien
44813da98dSDavid E. O'BrienLISTING = awk.h proto.h awkgram.y lex.c b.c main.c maketab.c parse.c \
451b11b783SRuslan Ermilov	lib.c run.c tran.c
46146a1e50SDavid E. O'Brien
471b11b783SRuslan ErmilovSHIP = README FIXES $(SOURCE) ytab[ch].bak makefile  \
481b11b783SRuslan Ermilov	 awk.1
49146a1e50SDavid E. O'Brien
50146a1e50SDavid E. O'Briena.out:	ytab.o $(OFILES)
51146a1e50SDavid E. O'Brien	$(CC) $(CFLAGS) ytab.o $(OFILES) $(ALLOC)  -lm
52146a1e50SDavid E. O'Brien
53146a1e50SDavid E. O'Brien$(OFILES):	awk.h ytab.h proto.h
54146a1e50SDavid E. O'Brien
55146a1e50SDavid E. O'Brienytab.o:	awk.h proto.h awkgram.y
56146a1e50SDavid E. O'Brien	$(YACC) $(YFLAGS) awkgram.y
57146a1e50SDavid E. O'Brien	mv y.tab.c ytab.c
58146a1e50SDavid E. O'Brien	mv y.tab.h ytab.h
59146a1e50SDavid E. O'Brien	$(CC) $(CFLAGS) -c ytab.c
60146a1e50SDavid E. O'Brien
61146a1e50SDavid E. O'Brienproctab.c:	maketab
62146a1e50SDavid E. O'Brien	./maketab >proctab.c
63146a1e50SDavid E. O'Brien
64146a1e50SDavid E. O'Brienmaketab:	ytab.h maketab.c
65146a1e50SDavid E. O'Brien	$(CC) $(CFLAGS) maketab.c -o maketab
66146a1e50SDavid E. O'Brien
67146a1e50SDavid E. O'Brienbundle:
68146a1e50SDavid E. O'Brien	@cp ytab.h ytabh.bak
69146a1e50SDavid E. O'Brien	@cp ytab.c ytabc.bak
70146a1e50SDavid E. O'Brien	@bundle $(SHIP)
71146a1e50SDavid E. O'Brien
72146a1e50SDavid E. O'Brientar:
73146a1e50SDavid E. O'Brien	@cp ytab.h ytabh.bak
74146a1e50SDavid E. O'Brien	@cp ytab.c ytabc.bak
75146a1e50SDavid E. O'Brien	@bundle $(SHIP) >awk.shar
76146a1e50SDavid E. O'Brien	@tar cf awk.tar $(SHIP)
77146a1e50SDavid E. O'Brien	gzip awk.tar
78146a1e50SDavid E. O'Brien	ls -l awk.tar.gz
79146a1e50SDavid E. O'Brien	@zip awk.zip $(SHIP)
80146a1e50SDavid E. O'Brien	ls -l awk.zip
81146a1e50SDavid E. O'Brien
82146a1e50SDavid E. O'Briennames:
83146a1e50SDavid E. O'Brien	@echo $(LISTING)
84146a1e50SDavid E. O'Brien
85146a1e50SDavid E. O'Brienclean:
86addad6afSRong-En Fan	rm -f a.out *.o *.obj maketab maketab.exe *.bb *.bbg *.da *.gcov *.gcno *.gcda # proctab.c
87