1 # Copyright (c) 1993, 2010, Oracle and/or its affiliates. All rights reserved.
   2 #
   3 #       Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T
   4 #         All Rights Reserved
   5 #
   6 # Copyright (c) 1980 Regents of the University of California.
   7 # All rights reserved.  The Berkeley Software License Agreement
   8 # specifies the terms and conditions for redistribution.
   9 
  10 #
  11 # C Shell with process control; VM/UNIX VAX Makefile
  12 # Bill Joy UC Berkeley; Jim Kulp IIASA, Austria
  13 #
  14 
  15 CSH_PROG =      csh
  16 PROG =          $(CSH_PROG)
  17 
  18 include ../../Makefile.cmd
  19 
  20 MBCHAR  = -DMBCHAR      # Define this line to include multibyte input support
  21 DEFS    =  -DVFORK -DFILEC -DBSD_COMP -DFIVE    # No TELL when MBCHAR
  22 CPPFLAGS= -I. $(DEFS) $(MBCHAR) $(CPPFLAGS.master)
  23 CPPFLAGS +=     -I../../sh
  24 CPPFLAGS += -D_FILE_OFFSET_BITS=64
  25 LDLIBS += -lcurses
  26 
  27 CERRWARN += -_gcc=-Wno-implicit-function-declaration
  28 CERRWARN += -_gcc=-Wno-uninitialized
  29 CERRWARN += -_gcc=-Wno-parentheses
  30 CERRWARN += -_gcc=-Wno-implicit-int
  31 CERRWARN += -_gcc=-Wno-unused-function
  32 CERRWARN += -_gcc=-Wno-unused-variable
  33 CERRWARN += -_gcc=-Wno-clobbered
  34 CERRWARN += -_gcc=-Wno-unused-label
  35 CERRWARN += -_gcc=-Wno-extra
  36 
  37 MAPFILES =      ../mapfile-intf $(MAPFILE.NGB)
  38 LDFLAGS +=      $(MAPFILES:%=-M%)
  39 
  40 HDDEP = sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o sh.exp.o sh.file.o \
  41         sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o \
  42         sh.parse.o sh.proc.o sh.sem.o sh.set.o sh.time.o
  43 
  44 COMMONOBJS=     printf.o sh.char.o sh.dir.o sh.dol.o sh.err.o \
  45         sh.exec.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o \
  46         sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o \
  47         sh.time.o sh.tchar.o sh.tconst.o sh.o \
  48         wait3.o
  49 
  50 LOCALOBJS= signal.o
  51 
  52 COMMONSRCS=     $(COMMONOBJS:%.o=../%.c)
  53 
  54 .KEEP_STATE:
  55 
  56 .PARALLEL: $(COMMONOBJS) $(LOCALOBJS)
  57 
  58 all: $(PROG)
  59 
  60 # build rule for common source above
  61 %.o:    ../%.c
  62         $(COMPILE.c) $<
  63         $(POST_PROCESS_O)
  64 
  65 %.o:    ../../sh/%.c
  66         $(COMPILE.c) $<
  67         $(POST_PROCESS_O)
  68 
  69 $(CSH_PROG): $(COMMONOBJS) $(LOCALOBJS) $(MAPFILES)
  70         $(LINK.c) $(COMMONOBJS) $(LOCALOBJS) -o $@ $(LDLIBS)
  71         $(POST_PROCESS)
  72 
  73 $(HDDEP): ../sh.tconst.h
  74 
  75 install: all $(ROOTBINPROG)  $(ROOTPROG)
  76 
  77 lint:   ../sh.tconst.h
  78         $(LINT.c) $(COMMONSRCS) signal.c $(LDLIBS)
  79 
  80 clean:
  81         $(RM) $(LOCALOBJS) $(COMMONOBJS)
  82 
  83 clobber:        clean
  84         $(RM)  $(PROG)