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 (the "License").
   6 # You may not use this file except in compliance with the License.
   7 #
   8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9 # or http://www.opensolaris.org/os/licensing.
  10 # See the License for the specific language governing permissions
  11 # and limitations under the License.
  12 #
  13 # When distributing Covered Code, include this CDDL HEADER in each
  14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15 # If applicable, add the following below this CDDL HEADER, with the
  16 # fields enclosed by brackets "[]" replaced with your own identifying
  17 # information: Portions Copyright [yyyy] [name of copyright owner]
  18 #
  19 # CDDL HEADER END
  20 #
  21 #
  22 # Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  23 # Use is subject to license terms.
  24 #
  25 
  26 include ../Makefile.lib
  27 
  28 SUBDIRS =       $(MACH)
  29 $(BUILD64)SUBDIRS += $(MACH64)
  30 
  31 all :=          TARGET= all
  32 install :=      TARGET= install
  33 clean :=        TARGET= clean
  34 clobber :=      TARGET= clobber
  35 lint :=         TARGET= lint
  36 
  37 # capability NAMES generated source
  38 NAMES= \
  39 src/libc/xcurses/boolcode.c     src/libc/xcurses/boolfnam.c \
  40 src/libc/xcurses/boolname.c     src/libc/xcurses/numcode.c \
  41 src/libc/xcurses/numfnam.c      src/libc/xcurses/numname.c \
  42 src/libc/xcurses/strcode.c      src/libc/xcurses/strfnam.c \
  43 src/libc/xcurses/strname.c
  44 
  45 GENERATED= \
  46 $(NAMES)        src/libc/xcurses/keyindex.c     h/term.h
  47 
  48 # definitions for install_h target
  49 HDRS=           h/term.h h/curses.h h/unctrl.h
  50 ROOTHDRDIR=     $(ROOT)/usr/xpg4/include
  51 ROOTHDRS=       $(HDRS:h/%=$(ROOTHDRDIR)/%)
  52 
  53 # install rule for install_h target
  54 $(ROOTHDRDIR)/%: h/%
  55         $(INS.file)
  56 
  57 # extra clean-up work
  58 CLOBBERFILES=   $(GENERATED)
  59 
  60 .KEEP_STATE:
  61 
  62 LIBS=           $(DYNLIB) $(LINTLIB)
  63 
  64 all: $(GENERATED) .WAIT $(SUBDIRS)
  65 
  66 install: all .WAIT $(SUBDIRS)
  67 
  68 clean clobber: $(SUBDIRS)
  69         $(RM) $(GENERATED)
  70 
  71 lint: $(SUBDIRS)
  72 
  73 # still need to implement cstyle check of term.h
  74 # do this when we go through and make this library cstyle clean.
  75 check: $(HDRS)
  76 
  77 install_h: $(ROOTHDRS)
  78 
  79 $(SUBDIRS):     $(GENERATED)
  80         @cd $@; pwd; $(MAKE) $(TARGET)
  81 
  82 # derived C files
  83 # mknames.awk defines functions so needs nawk
  84 $(NAMES) : src/libc/xcurses/mknames.awk src/libc/xcurses/caps
  85         $(RM) $(NAMES)
  86         cd src/libc/xcurses; $(NAWK) -f mknames.awk caps
  87 
  88 h/term.h : src/libc/xcurses/mkterm.awk src/libc/xcurses/caps
  89         $(RM) $@
  90         cd src/libc/xcurses; $(NAWK) -f mkterm.awk caps > term.h
  91         $(MV) src/libc/xcurses/term.h h/term.h
  92 
  93 src/libc/xcurses/keyindex.c : src/libc/xcurses/mkkey.awk src/libc/xcurses/caps
  94         $(RM) $@
  95         cd src/libc/xcurses; $(NAWK) -f mkkey.awk caps > keyindex.c