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 # Copyright (c) 2018, Joyent, Inc. 11 # 12 # C Shell with process control; VM/UNIX VAX Makefile 13 # Bill Joy UC Berkeley; Jim Kulp IIASA, Austria 14 # 15 16 CSH_PROG = csh 17 PROG = $(CSH_PROG) 18 19 include ../../Makefile.cmd 20 21 MBCHAR = -DMBCHAR # Define this line to include multibyte input support 22 DEFS = -DVFORK -DFILEC -DBSD_COMP -DFIVE # No TELL when MBCHAR 23 CPPFLAGS= -I. $(DEFS) $(MBCHAR) $(CPPFLAGS.master) 24 CPPFLAGS += -I../../sh 25 CPPFLAGS += -D_FILE_OFFSET_BITS=64 26 LDLIBS += -lcurses 27 28 CERRWARN += -_gcc=-Wno-implicit-function-declaration 29 CERRWARN += -_gcc=-Wno-uninitialized 30 CERRWARN += -_gcc=-Wno-parentheses 31 CERRWARN += -_gcc=-Wno-implicit-int 32 CERRWARN += -_gcc=-Wno-unused-function 33 CERRWARN += -_gcc=-Wno-unused-variable 34 CERRWARN += -_gcc=-Wno-clobbered 35 CERRWARN += -_gcc=-Wno-unused-label 36 CERRWARN += -_gcc=-Wno-extra 37 38 # "missing type for func" 39 SMATCH=off 40 41 MAPFILES = ../mapfile-intf $(MAPFILE.NGB) 42 LDFLAGS += $(MAPFILES:%=-M%) 43 44 HDDEP = sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o sh.exp.o sh.file.o \ 45 sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o \ 46 sh.parse.o sh.proc.o sh.sem.o sh.set.o sh.time.o 47 48 COMMONOBJS= printf.o sh.char.o sh.dir.o sh.dol.o sh.err.o \ 49 sh.exec.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o \ 50 sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o \ 51 sh.time.o sh.tchar.o sh.tconst.o sh.o \ 52 wait3.o 53 54 LOCALOBJS= signal.o 55 56 COMMONSRCS= $(COMMONOBJS:%.o=../%.c) 57 58 .KEEP_STATE: 59 60 .PARALLEL: $(COMMONOBJS) $(LOCALOBJS) 61 62 all: $(PROG) 63 64 # build rule for common source above 65 %.o: ../%.c 66 $(COMPILE.c) $< 67 $(POST_PROCESS_O) 68 69 %.o: ../../sh/%.c 70 $(COMPILE.c) $< 71 $(POST_PROCESS_O) 72 73 $(CSH_PROG): $(COMMONOBJS) $(LOCALOBJS) $(MAPFILES) 74 $(LINK.c) $(COMMONOBJS) $(LOCALOBJS) -o $@ $(LDLIBS) 75 $(POST_PROCESS) 76 77 $(HDDEP): ../sh.tconst.h 78 79 install: all $(ROOTBINPROG) $(ROOTPROG) 80 81 lint: ../sh.tconst.h 82 $(LINT.c) $(COMMONSRCS) signal.c $(LDLIBS) 83 84 clean: 85 $(RM) $(LOCALOBJS) $(COMMONOBJS) 86 87 clobber: clean 88 $(RM) $(PROG)