1 # Copyright (c) 1992, 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 CERRWARN += -_gcc=-Wno-implicit-function-declaration
  26 CERRWARN += -_gcc=-Wno-uninitialized
  27 CERRWARN += -_gcc=-Wno-parentheses
  28 CERRWARN += -_gcc=-Wno-implicit-int
  29 CERRWARN += -_gcc=-Wno-unused-function
  30 CERRWARN += -_gcc=-Wno-unused-variable
  31 CERRWARN += -_gcc=-Wno-clobbered
  32 CERRWARN += -_gcc=-Wno-unused-label
  33 CERRWARN += -_gcc=-Wno-extra
  34 
  35 LDLIBS += -lcurses
  36 
  37 MAPFILES =      ../mapfile-intf $(MAPFILE.NGB)
  38 LDFLAGS +=      $(MAPFILES:%=-M%)
  39 
  40 PFOBJS = sh_policy.o
  41 
  42 HDDEP = sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o sh.exp.o sh.file.o \
  43         sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o \
  44         sh.parse.o sh.proc.o sh.sem.o sh.set.o sh.time.o
  45 
  46 COMMONOBJS=     printf.o sh.char.o sh.dir.o sh.dol.o sh.err.o \
  47         sh.exec.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o \
  48         sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o \
  49         sh.time.o sh.tchar.o sh.tconst.o sh.o \
  50         wait3.o
  51 
  52 LOCALOBJS= signal.o
  53 
  54 COMMONSRCS=     $(COMMONOBJS:%.o=../%.c)
  55 
  56 .KEEP_STATE:
  57 
  58 .PARALLEL: $(COMMONOBJS) $(LOCALOBJS)
  59 
  60 all: $(PROG)
  61 
  62 # build rule for common source above
  63 %.o:    ../%.c
  64         $(COMPILE.c) $<
  65         $(POST_PROCESS_O)
  66 
  67 %.o:    ../../sh/%.c
  68         $(COMPILE.c) $<
  69         $(POST_PROCESS_O)
  70 
  71 $(CSH_PROG): $(COMMONOBJS) $(LOCALOBJS) $(MAPFILES)
  72         $(LINK.c) $(COMMONOBJS) $(LOCALOBJS) -o $@ $(LDLIBS)
  73         $(POST_PROCESS)
  74 
  75 $(HDDEP): ../sh.tconst.h
  76 
  77 install: all $(ROOTBINPROG)  $(ROOTPROG)
  78 
  79 lint:   ../sh.tconst.h
  80         $(LINT.c) $(COMMONSRCS) signal.c $(LDLIBS)
  81 
  82 clean:
  83         $(RM) $(LOCALOBJS) $(COMMONOBJS)
  84 
  85 clobber:        clean
  86         $(RM)  $(PROG)