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