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 
  59 .KEEP_STATE:
  60 
  61 all: $(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 
  76 proctab.c: maketab
  77         rm -f $@; ./maketab > $@
  78 
  79 maketab: maketab.c
  80         $(NATIVECC) $(NATIVE_CFLAGS) maketab.c -o $@ $(LDLIBS)
  81 
  82 install: all $(ROOTPROG) $(ROOTLINK)
  83 
  84 clean:
  85         $(RM) $(OBJS) $(CLEANFILES)
  86 
  87 lint: awk.g.c lint_SRCS
  88 
  89 awk.g.c + y.tab.h: awk.g.y
  90 
  91 awk.g.o: awk.g.c
  92 
  93 awk.lx.c: awk.lx.l
  94 
  95 proctab.o: proctab.c
  96         $(COMPILE.c) proctab.c
  97         $(POST_PROCESS_O)
  98 
  99 include ../Makefile.targ