xref: /illumos-gate/usr/src/cmd/awk/Makefile (revision 32991bed)
1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License, Version 1.0 only
6# (the "License").  You may not use this file except in compliance
7# with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22#
23#
24# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
25# Use is subject to license terms.
26#
27
28# NOTE: awk is oawk.
29
30PROG= nawk
31
32OBJ1= b.o lib.o main.o parse.o proctab.o run.o tran.o
33OBJ2= awk.g.o awk.lx.o
34OBJS= $(OBJ2) $(OBJ1)
35SRCS= $(OBJ1:%.o=%.c)
36
37include ../Makefile.cmd
38
39CERRWARN += -_gcc=-Wno-implicit-function-declaration
40CERRWARN += -_gcc=-Wno-unused-label
41CERRWARN += -_gcc=-Wno-parentheses
42CERRWARN += -_gcc=-Wno-unused-variable
43CERRWARN += -_gcc=-Wno-uninitialized
44
45#
46# Message catalog
47#
48POFILES= $(OBJS:%.o=%.po)
49POFILE= awk.po
50XGETFLAGS += -a -x awk.xcl
51#
52
53CPPFLAGS += -D_FILE_OFFSET_BITS=64
54YFLAGS += -d
55LDLIBS += -lm
56LINTFLAGS += -u
57CLEANFILES= maketab proctab.c awk.g.c awk.lx.c y.tab.h
58
59.KEEP_STATE:
60
61all: $(PROG)
62
63$(PROG): $(OBJS)
64	$(LINK.c) $(OBJS) -o $@ $(LDLIBS)
65	$(POST_PROCESS)
66
67#
68# message catalog
69#
70
71$(POFILE):  y.tab.h $(POFILES)
72	$(RM) $@
73	cat $(POFILES) > $@
74#
75
76proctab.c: maketab
77	rm -f $@; ./maketab > $@
78
79maketab: maketab.c
80	$(NATIVECC) $(NATIVE_CFLAGS) maketab.c -o $@ $(LDLIBS)
81
82install: all $(ROOTPROG) $(ROOTLINK)
83
84clean:
85	$(RM) $(OBJS) $(CLEANFILES)
86
87lint: awk.g.c lint_SRCS
88
89awk.g.c + y.tab.h: awk.g.y
90
91awk.g.o: awk.g.c
92
93awk.lx.c: awk.lx.l
94
95proctab.o: proctab.c
96	$(COMPILE.c) proctab.c
97	$(POST_PROCESS_O)
98
99include ../Makefile.targ
100