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.
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.
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]
23 # Copyright 2010 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
27 # cmd/vi/port/Makefile
32 LIBPROGS
= expreserve exrecover
36 EXOBJS
= bcopy.o ex.o ex_addr.o ex_cmds.o ex_cmds2.o \
37 ex_cmdsub.o ex_data.o ex_extern.o ex_get.o \
38 ex_io.o ex_put.o ex_re.o ex_set.o ex_subr.o \
39 ex_temp.o ex_tty.o ex_unix.o ex_v.o ex_vadj.o \
40 ex_vget.o ex_vmain.o ex_voper.o ex_vops.o \
41 ex_vops2.o ex_vops3.o ex_vput.o ex_vwind.o \
43 EXOBJS_XPG4
= $(EXOBJS
) compile.o values-xpg4.o
44 EXOBJS_XPG6
= $(EXOBJS
) compile.o values-xpg6.o
45 XPG4EXOBJS
= ${EXOBJS_XPG4
:%=$(XD4
)/%}
46 XPG6EXOBJS
= ${EXOBJS_XPG6
:%=$(XD6
)/%}
47 EXRECOVEROBJS
= exrecover.o ex_extern.o
48 OBJS
= $(EXOBJS
) $(XPG4EXOBJS
) $(XPG6EXOBJS
) expreserve.o exrecover.o
49 SRCS
= $(EXOBJS
:%.o
=%.c
) expreserve.c exrecover.c
50 TXTS
= READ_ME makeoptions asfix.c70 ex.news port.mk
.370 port.mk
.70 \
51 port.mk.c70 port.mk.usg ovdoprnt.s ovprintf.c rofix
53 include ..
/..
/Makefile.cmd
55 CERRWARN
+= -_gcc
=-Wno-implicit-function-declaration
56 CERRWARN
+= -_gcc
=-Wno-clobbered
57 CERRWARN
+= -_gcc
=-Wno-parentheses
58 CERRWARN
+= -_gcc
=-Wno-unused-variable
59 CERRWARN
+= -_gcc
=-Wno-unused-label
60 CERRWARN
+= -_gcc
=-Wno-unused-value
61 CERRWARN
+= -_gcc
=-Wno-uninitialized
62 CERRWARN
+= -_gcc
=-Wno-address
65 # For message catalogue files
67 POFILES
= $(EXOBJS
:%.o
=%.po
) expreserve.po exrecover.po
70 # Include all XPG4 and XPG4ONLY changes in the XPG4 version
71 $(XPG4
) := CFLAGS
+= -DXPG4
-DXPG4ONLY
73 # Include all XPG4 changes, but don't include XPG4ONLY in the XPG6 version
74 $(XPG6
) := CFLAGS
+= -DXPG4
-DXPG6
-I
$(SRC
)/lib
/libc
/inc
76 CPPFLAGS
+= -DUSG
-DSTDIO
-DVMUNIX
-DTABS
=8 -DSINGLE
-DTAG_STACK
78 # vi maintains its own versions of various routines from libc and libcurses,
79 # so localize all symbols to avoid name space collisions.
80 LDFLAGS
+= $(MAPFILE.NGB
:%=-M
%)
82 CLOBBERFILES
+= $(LIBPROGS
)
83 ex
:= LDLIBS
+= -lmapmalloc
-lcurses
-lgen
-lcrypt_i
84 $(XPG4
) := LDLIBS
+= -lmapmalloc
-lcurses
-lgen
-lcrypt_i
85 $(XPG6
) := LDLIBS
+= -lmapmalloc
-lcurses
-lgen
-lcrypt_i
86 exrecover
:= LDLIBS
+= -lmapmalloc
-lcrypt_i
87 lint
:= LDLIBS
+= -lmapmalloc
-lcurses
-lgen
-lcrypt
89 ROOTLIBPROGS
= $(LIBPROGS
:%=$(ROOTLIB
)/%)
92 ROOTLINKS
= $(ROOTBIN
)/edit
$(ROOTHASBIN
)/edit
$(ROOTBIN
)/vedit \
93 $(ROOTHASBIN
)/vedit
$(ROOTHASBIN
)/vi
$(ROOTHASBIN
)/view \
95 ROOTXPG4LINKS
= $(ROOTXPG4BIN
)/vi
$(ROOTXPG4BIN
)/view
$(ROOTXPG4BIN
)/edit \
97 ROOTXPG6LINKS
= $(ROOTXPG6BIN
)/vi
$(ROOTXPG6BIN
)/view
$(ROOTXPG6BIN
)/edit \
103 all: $(PROG
) $(XPG4
) $(XPG6
) $(LIBPROGS
)
106 $(LINK.c
) $(EXOBJS
) -o
$@
$(LDLIBS
)
109 ex.xpg4
: $(XD4
) $(XPG4EXOBJS
)
110 $(LINK.c
) $(XPG4EXOBJS
) -o
$@
$(LDLIBS
)
113 ex.xpg6
: $(XD6
) $(XPG6EXOBJS
)
114 $(LINK.c
) $(XPG6EXOBJS
) -o
$@
$(LDLIBS
)
117 $(XD4
)/compile.o
$(XD6
)/compile.o
: ..
/..
/expr
/compile.c
118 $(COMPILE.c
) -o
$@ ..
/..
/expr
/compile.c
120 %values-xpg4.o
: ..
/..
/..
/lib
/common
/common
/values-xpg4.c
121 $(COMPILE.c
) -o
$@ ..
/..
/..
/lib
/common
/common
/values-xpg4.c
123 %values-xpg6.o
: ..
/..
/..
/lib
/common
/common
/values-xpg6.c
124 $(COMPILE.c
) -o
$@ ..
/..
/..
/lib
/common
/common
/values-xpg6.c
126 $(XPG4EXOBJS
): $(XD4
)
128 $(XPG6EXOBJS
): $(XD6
)
131 $(COMPILE.c
) -o
$@
$<
134 $(COMPILE.c
) -o
$@
$<
142 exrecover
: $(EXRECOVEROBJS
)
143 $(LINK.c
) $(EXRECOVEROBJS
) -o
$@
$(LDLIBS
)
146 catalog
: $(MSGDOMAIN
) $(POFILE
)
148 $(POFILE
): $(POFILES
)
153 install: all $(ROOTHASBINPROG
) $(ROOTLIBPROGS
) $(ROOTLINKS
) \
154 $(ROOTXPG4PROG
) $(ROOTXPG4LINKS
) $(ROOTXPG6PROG
) $(ROOTXPG6LINKS
)
156 $(ROOTLINKS
): $(ROOTHASBINPROG
)
158 -$(LN
) -f
$(ROOTHASBINPROG
) $@
160 $(ROOTXPG4LINKS
): $(ROOTXPG4PROG
)
162 -$(LN
) -f
$(ROOTXPG4PROG
) $@
164 $(ROOTXPG6LINKS
): $(ROOTXPG6PROG
)
166 -$(LN
) -f
$(ROOTXPG6PROG
) $@
173 include ..
/..
/Makefile.targ