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 30 PROG= nawk 31 32 OBJ1= b.o lib.o main.o parse.o proctab.o run.o tran.o 33 OBJ2= awk.g.o awk.lx.o 34 OBJS= $(OBJ2) $(OBJ1) 35 SRCS= $(OBJ1:%.o=%.c) 36 37 include ../Makefile.cmd 38 39 CERRWARN += -_gcc=-Wno-implicit-function-declaration 40 CERRWARN += -_gcc=-Wno-unused-label 41 CERRWARN += -_gcc=-Wno-parentheses 42 CERRWARN += -_gcc=-Wno-unused-variable 43 CERRWARN += -_gcc=-Wno-uninitialized 44 45 # 46 # Message catalog 47 # 48 POFILES= $(OBJS:%.o=%.po) 49 POFILE= awk.po 50 XGETFLAGS += -a -x awk.xcl 51 # 52 53 CPPFLAGS += -D_FILE_OFFSET_BITS=64 54 YFLAGS += -d 55 LDLIBS += -lm 56 LINTFLAGS += -u 57 CLEANFILES= maketab proctab.c awk.g.c awk.lx.c y.tab.h 58 NATIVELDFLAGS += -Bdirect $(LDCHECKS) 59 NATIVE_LIBS= libc.so # because this is a native tool 60 61 .KEEP_STATE: 62 63 all: $(PROG) 64 65 $(PROG): $(OBJS) 66 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 67 $(POST_PROCESS) 68 69 # 70 # message catalog 71 # 72 73 $(POFILE): y.tab.h $(POFILES) 74 $(RM) $@ 75 cat $(POFILES) > $@ 76 # 77 78 proctab.c: maketab 79 rm -f $@; ./maketab > $@ 80 81 maketab: maketab.c 82 $(NATIVECC) $(NATIVE_CFLAGS) -O maketab.c -o $@ $(NATIVELDFLAGS) 83 84 install: all $(ROOTPROG) $(ROOTLINK) 85 86 clean: 87 $(RM) $(OBJS) $(CLEANFILES) 88 89 lint: awk.g.c lint_SRCS 90 91 awk.g.c + y.tab.h: awk.g.y 92 93 awk.g.o: awk.g.c 94 95 awk.lx.c: awk.lx.l 96 97 proctab.o: proctab.c 98 $(COMPILE.c) proctab.c 99 $(POST_PROCESS_O) 100 101 include ../Makefile.targ