xref: /titanic_53/usr/src/lib/libcurses/Makefile.com (revision 7c478bd95313f5f23a4c958a745db2134aa03244)
1*7c478bd9Sstevel@tonic-gate#
2*7c478bd9Sstevel@tonic-gate# CDDL HEADER START
3*7c478bd9Sstevel@tonic-gate#
4*7c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5*7c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
6*7c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
7*7c478bd9Sstevel@tonic-gate# with the License.
8*7c478bd9Sstevel@tonic-gate#
9*7c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*7c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
11*7c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
12*7c478bd9Sstevel@tonic-gate# and limitations under the License.
13*7c478bd9Sstevel@tonic-gate#
14*7c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
15*7c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*7c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
17*7c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
18*7c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
19*7c478bd9Sstevel@tonic-gate#
20*7c478bd9Sstevel@tonic-gate# CDDL HEADER END
21*7c478bd9Sstevel@tonic-gate#
22*7c478bd9Sstevel@tonic-gate#
23*7c478bd9Sstevel@tonic-gate# Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
24*7c478bd9Sstevel@tonic-gate# Use is subject to license terms.
25*7c478bd9Sstevel@tonic-gate#
26*7c478bd9Sstevel@tonic-gate# ident	"%Z%%M%	%I%	%E% SMI"
27*7c478bd9Sstevel@tonic-gate#
28*7c478bd9Sstevel@tonic-gate# lib/libcurses/screen/Makefile
29*7c478bd9Sstevel@tonic-gate#
30*7c478bd9Sstevel@tonic-gateLIBRARY=	libcurses.a
31*7c478bd9Sstevel@tonic-gateVERS=	.1
32*7c478bd9Sstevel@tonic-gate
33*7c478bd9Sstevel@tonic-gateOBJECTS=	$(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(OBJS5) $(OBJS6)
34*7c478bd9Sstevel@tonic-gate
35*7c478bd9Sstevel@tonic-gateOBJS1=	_addch.o _addchnstr.o _addchstr.o _addnstr.o _addstr.o \
36*7c478bd9Sstevel@tonic-gate	_attroff.o _attron.o _attrset.o _beep.o _bkgd.o \
37*7c478bd9Sstevel@tonic-gate	_bkgdset.o _border.o _box.o _clear.o _clrtobot.o \
38*7c478bd9Sstevel@tonic-gate	_clrtoeol.o _crmode.o _del_curterm.o _delch.o _deleteln.o \
39*7c478bd9Sstevel@tonic-gate	_echo.o _echochar.o _erase.o _fixterm.o _flash.o \
40*7c478bd9Sstevel@tonic-gate	_garbagdlins.o _garbagedwin.o _getch.o _getstr.o \
41*7c478bd9Sstevel@tonic-gate	_halfdelay.o _hline.o _inch.o _inchnstr.o _inchstr.o \
42*7c478bd9Sstevel@tonic-gate	_innstr.o _insch.o _insdelln.o _insertln.o _insnstr.o \
43*7c478bd9Sstevel@tonic-gate	_insstr.o _instr.o _intrflush.o _meta.o _move.o \
44*7c478bd9Sstevel@tonic-gate	_mvaddch.o _mvaddchnstr.o _mvaddchstr.o _mvaddnstr.o \
45*7c478bd9Sstevel@tonic-gate	_mvaddstr.o _mvdelch.o _mvgetch.o _mvgetstr.o _mvhline.o \
46*7c478bd9Sstevel@tonic-gate	_mvinch.o _mvinchnstr.o _mvinchstr.o _mvinnstr.o \
47*7c478bd9Sstevel@tonic-gate	_mvinsch.o _mvinsnstr.o _mvinsstr.o _mvinstr.o _mvvline.o \
48*7c478bd9Sstevel@tonic-gate	_mvwaddch.o _mvwaddchnst.o _mvwaddchstr.o _mvwaddnstr.o \
49*7c478bd9Sstevel@tonic-gate	_mvwaddstr.o _mvwdelch.o _mvwgetch.o _mvwgetstr.o \
50*7c478bd9Sstevel@tonic-gate	_mvwhline.o _mvwinch.o _mvwinchnst.o _mvwinchstr.o \
51*7c478bd9Sstevel@tonic-gate	_mvwinnstr.o _mvwinsch.o _mvwinsnstr.o _mvwinsstr.o \
52*7c478bd9Sstevel@tonic-gate	_mvwinstr.o _mvwvline.o _newterm.o _nl.o _nocrmode.o \
53*7c478bd9Sstevel@tonic-gate	_noecho.o _nonl.o _noqiflush.o _overlay.o _overwrite.o \
54*7c478bd9Sstevel@tonic-gate	_qiflush.o _refresh.o _resetterm.o _saveterm.o \
55*7c478bd9Sstevel@tonic-gate	_scr_init.o _scr_restore.o _scr_set.o _scrl.o _scroll.o \
56*7c478bd9Sstevel@tonic-gate	_set_curterm.o _set_term.o _setscrreg.o _slk_init.o \
57*7c478bd9Sstevel@tonic-gate	_standend.o _standout.o _subpad.o _timeout.o _touchline.o \
58*7c478bd9Sstevel@tonic-gate	_unctrl.o _vline.o _waddchstr.o _waddstr.o _wclear.o \
59*7c478bd9Sstevel@tonic-gate	_wdeleteln.o _werase.o _winsertln.o _winsstr.o \
60*7c478bd9Sstevel@tonic-gate	_wstandend.o _wstandout.o V2.__sscans.o V2._sprintw.o \
61*7c478bd9Sstevel@tonic-gate	V2.makenew.o V3.box.o V3.initscr.o V3.m_addch.o V3.m_addstr.o \
62*7c478bd9Sstevel@tonic-gate	V3.m_clear.o V3.m_erase.o V3.m_initscr.o V3.m_move.o V3.m_newterm.o \
63*7c478bd9Sstevel@tonic-gate	V3.m_refresh.o V3.newterm.o V3.pechochar.o V3.upd_old_y.o \
64*7c478bd9Sstevel@tonic-gate	V3.vidattr.o V3.vidputs.o V3.waddch.o V3.wattroff.o V3.wattron.o \
65*7c478bd9Sstevel@tonic-gate	V3.wattrset.o V3.wechochar.o V3.winsch.o baudrate.o can_change.o \
66*7c478bd9Sstevel@tonic-gate	color_cont.o cbreak.o chkinput.o clearok.o copywin.o curs_set.o \
67*7c478bd9Sstevel@tonic-gate	curserr.o curses.o def_prog.o delay.o delay_out.o \
68*7c478bd9Sstevel@tonic-gate	delkey.o delkeymap.o delscreen.o delterm.o delwin.o \
69*7c478bd9Sstevel@tonic-gate	derwin.o doupdate.o draino.o dupwin.o endwin.o erasechar.o \
70*7c478bd9Sstevel@tonic-gate	flushinp.o getattrs.o getbegyx.o getbkgd.o getmaxyx.o \
71*7c478bd9Sstevel@tonic-gate	getparyx.o getsyx.o gettmode.o getwin.o getyx.o has_colors.o \
72*7c478bd9Sstevel@tonic-gate	has_ic.o has_il.o idcok.o idlok.o immedok.o init_acs.o init_color.o \
73*7c478bd9Sstevel@tonic-gate	init_costs.o init_pair.o initscr.o is_linetou.o is_wintou.o \
74*7c478bd9Sstevel@tonic-gate	keyname.o keypad.o killchar.o leaveok.o
75*7c478bd9Sstevel@tonic-gate
76*7c478bd9Sstevel@tonic-gateOBJS2=	longname.o makenew.o memSset.o meta.o mvcur.o \
77*7c478bd9Sstevel@tonic-gate	mvderwin.o mvprintw.o mvscanw.o mvwin.o mvwprintw.o \
78*7c478bd9Sstevel@tonic-gate	mvwscanw.o napms.o newkey.o newpad.o newscreen.o \
79*7c478bd9Sstevel@tonic-gate	newwin.o nocbreak.o nodelay.o noraw.o \
80*7c478bd9Sstevel@tonic-gate	notimeout.o outch.o overlap.o pechochar.o pnoutref.o \
81*7c478bd9Sstevel@tonic-gate	prefresh.o printw.o putp.o putwin.o quick_echo.o \
82*7c478bd9Sstevel@tonic-gate	raw.o redrawwin.o reset_sh.o resetty.o restart.o \
83*7c478bd9Sstevel@tonic-gate	ring.o ripoffline.o savetty.o scanw.o scr_all.o \
84*7c478bd9Sstevel@tonic-gate	scr_dump.o scr_ll_dump.o scr_reset.o scrollok.o setcurscreen.o \
85*7c478bd9Sstevel@tonic-gate	setcurterm.o setecho.o setkeymap.o setnonl.o setqiflush.o \
86*7c478bd9Sstevel@tonic-gate	setsyx.o setterm.o setupterm.o slk_atroff.o slk_atron.o \
87*7c478bd9Sstevel@tonic-gate	slk_atrset.o slk_clear.o slk_label.o \
88*7c478bd9Sstevel@tonic-gate	slk_noutref.o slk_refresh.o slk_restore.o slk_set.o slk_start.o \
89*7c478bd9Sstevel@tonic-gate	slk_touch.o subwin.o syncok.o tcsearch.o termattrs.o \
90*7c478bd9Sstevel@tonic-gate	termcap.o termerr.o termname.o tgetch.o tgoto.o \
91*7c478bd9Sstevel@tonic-gate	tifget.o tifnames.o tiget.o tinames.o tinputfd.o \
92*7c478bd9Sstevel@tonic-gate	tnames.o touchwin.o tparm.o tputs.o trace.o \
93*7c478bd9Sstevel@tonic-gate	tstp.o ttimeout.o typeahead.o unctrl.o ungetch.o \
94*7c478bd9Sstevel@tonic-gate	untouchwin.o vidputs.o vidupdate.o vwprintw.o \
95*7c478bd9Sstevel@tonic-gate	vwscanw.o waddch.o waddchnstr.o waddnstr.o wattroff.o \
96*7c478bd9Sstevel@tonic-gate	wattron.o wattrset.o wbkgd.o wbkgdset.o wborder.o \
97*7c478bd9Sstevel@tonic-gate	wclrtobot.o wclrtoeol.o wdelch.o wechochar.o wgetch.o \
98*7c478bd9Sstevel@tonic-gate	wgetstr.o whline.o winch.o winchnstr.o winchstr.o \
99*7c478bd9Sstevel@tonic-gate	winnstr.o winsch.o winsdelln.o winsnstr.o winstr.o \
100*7c478bd9Sstevel@tonic-gate	wmove.o wnoutref.o wprintw.o wredrawln.o wrefresh.o \
101*7c478bd9Sstevel@tonic-gate	wscanw.o wscrl.o wsetscrreg.o wsyncdown.o wsyncup.o \
102*7c478bd9Sstevel@tonic-gate	wtimeout.o wtouchln.o wvline.o pair_cont.o start_col.o \
103*7c478bd9Sstevel@tonic-gate	mouse.o
104*7c478bd9Sstevel@tonic-gate
105*7c478bd9Sstevel@tonic-gateOBJS3=	mbaddch.o mbcharlen.o mbdisplen.o mbgetwidth.o \
106*7c478bd9Sstevel@tonic-gate	mbinch.o mbinsshift.o mbmove.o mbtranslate.o \
107*7c478bd9Sstevel@tonic-gate	pechowchar.o tgetwch.o ungetwch.o waddnwstr.o \
108*7c478bd9Sstevel@tonic-gate	waddwch.o waddwchnstr.o wechowchar.o wgetwstr.o \
109*7c478bd9Sstevel@tonic-gate	wgetwch.o winnwstr.o winsnwstr.o winswch.o \
110*7c478bd9Sstevel@tonic-gate	winwch.o winwchnstr.o winwstr.o \
111*7c478bd9Sstevel@tonic-gate	use_env.o
112*7c478bd9Sstevel@tonic-gate
113*7c478bd9Sstevel@tonic-gateOBJS4=	_addnwstr.o _addwch.o _addwchnstr.o _addwchstr.o \
114*7c478bd9Sstevel@tonic-gate	_addwstr.o _echowchar.o _getnwstr.o _getwch.o \
115*7c478bd9Sstevel@tonic-gate	_getwstr.o _innwstr.o _insnwstr.o _inswch.o \
116*7c478bd9Sstevel@tonic-gate	_inswstr.o _inwch.o _inwchnstr.o _inwchstr.o \
117*7c478bd9Sstevel@tonic-gate	_inwstr.o _mvaddnwstr.o _mvaddwch.o _mvaddwchnstr.o \
118*7c478bd9Sstevel@tonic-gate	_mvaddwchstr.o _mvaddwstr.o _mvgetnwstr.o _mvgetwch.o \
119*7c478bd9Sstevel@tonic-gate	_mvgetwstr.o _mvinnwstr.o _mvinsnwstr.o _mvinswch.o \
120*7c478bd9Sstevel@tonic-gate	_mvinswstr.o _mvinwch.o _mvinwchnstr.o _mvinwchstr.o \
121*7c478bd9Sstevel@tonic-gate	_mvinwstr.o _mvwaddnwstr.o _mvwaddwch.o _mvwaddwchnstr.o \
122*7c478bd9Sstevel@tonic-gate	_mvwaddwchstr.o _mvwaddwstr.o _mvwgetnwstr.o _mvwgetwch.o \
123*7c478bd9Sstevel@tonic-gate	_mvwgetwstr.o _mvwinnwstr.o _mvwinsnwstr.o _mvwinswch.o \
124*7c478bd9Sstevel@tonic-gate	_mvwinswstr.o _mvwinwch.o _mvwinwchnstr.o _mvwinwchstr.o \
125*7c478bd9Sstevel@tonic-gate	_mvwinwstr.o _waddwchstr.o _waddwstr.o _winswstr.o \
126*7c478bd9Sstevel@tonic-gate	_winwchstr.o
127*7c478bd9Sstevel@tonic-gate
128*7c478bd9Sstevel@tonic-gateOBJS5=	mbstowcs.o mbtowc.o wcstombs.o wctomb.o
129*7c478bd9Sstevel@tonic-gate
130*7c478bd9Sstevel@tonic-gateOBJS6=	wmovenextch.o wmoveprevch.o wadjcurspos.o print.o iexpand.o \
131*7c478bd9Sstevel@tonic-gate	cexpand.o infotocap.o
132*7c478bd9Sstevel@tonic-gate
133*7c478bd9Sstevel@tonic-gate# include library definitions
134*7c478bd9Sstevel@tonic-gateinclude ../../Makefile.lib
135*7c478bd9Sstevel@tonic-gate
136*7c478bd9Sstevel@tonic-gate# install this library in the root filesystem
137*7c478bd9Sstevel@tonic-gateinclude ../../Makefile.rootfs
138*7c478bd9Sstevel@tonic-gate
139*7c478bd9Sstevel@tonic-gateMAPFILE=	$(MAPDIR)/mapfile
140*7c478bd9Sstevel@tonic-gateMAPOPTS=	$(MAPFILE:%=-M %)
141*7c478bd9Sstevel@tonic-gate
142*7c478bd9Sstevel@tonic-gateSRCS=		$(OBJECTS:%.o=../screen/%.c)
143*7c478bd9Sstevel@tonic-gate
144*7c478bd9Sstevel@tonic-gateLIBS =		$(DYNLIB) $(LINTLIB)
145*7c478bd9Sstevel@tonic-gate
146*7c478bd9Sstevel@tonic-gate# definitions for lint
147*7c478bd9Sstevel@tonic-gate
148*7c478bd9Sstevel@tonic-gate$(LINTLIB):= SRCS=../screen/llib-lcurses
149*7c478bd9Sstevel@tonic-gate
150*7c478bd9Sstevel@tonic-gateLINTOUT=	lint.out
151*7c478bd9Sstevel@tonic-gateLINTSRC=	$(LINTLIB:%.ln=%)
152*7c478bd9Sstevel@tonic-gate
153*7c478bd9Sstevel@tonic-gateROOTLINTDIR=	$(ROOTLIBDIR)
154*7c478bd9Sstevel@tonic-gateROOTLINT=	$(LINTSRC:%=$(ROOTLINTDIR)/%)
155*7c478bd9Sstevel@tonic-gateROOTLINTDIR64=	$(ROOTLIBDIR64)
156*7c478bd9Sstevel@tonic-gateROOTLINT64=	$(LINTSRC:%=$(ROOTLINTDIR64)/%)
157*7c478bd9Sstevel@tonic-gateROOTLINKS64=	$(ROOTLIBDIR64)/$(LIBLINKS)
158*7c478bd9Sstevel@tonic-gate
159*7c478bd9Sstevel@tonic-gateCLEANFILES +=	$(LINTOUT) $(LINTLIB)
160*7c478bd9Sstevel@tonic-gate
161*7c478bd9Sstevel@tonic-gateCFLAGS	+=	$(CCVERBOSE)
162*7c478bd9Sstevel@tonic-gateDYNFLAGS +=	$(MAPOPTS)
163*7c478bd9Sstevel@tonic-gateLDLIBS += -lc
164*7c478bd9Sstevel@tonic-gate
165*7c478bd9Sstevel@tonic-gateCPPFLAGS += -I../screen -I../../common/inc
166*7c478bd9Sstevel@tonic-gate
167*7c478bd9Sstevel@tonic-gateED = ed
168*7c478bd9Sstevel@tonic-gateRM = rm -f
169*7c478bd9Sstevel@tonic-gate
170*7c478bd9Sstevel@tonic-gate#
171*7c478bd9Sstevel@tonic-gate# If and when somebody gets around to messaging this, CLOBBERFILE should not
172*7c478bd9Sstevel@tonic-gate# be cleared (so that any .po file will be clobbered.
173*7c478bd9Sstevel@tonic-gate#
174*7c478bd9Sstevel@tonic-gateCLOBBERFILES=	libcurses.so libcurses.so$(VERS)
175*7c478bd9Sstevel@tonic-gate
176*7c478bd9Sstevel@tonic-gate.KEEP_STATE:
177*7c478bd9Sstevel@tonic-gate
178*7c478bd9Sstevel@tonic-gateall: $(LIBS)
179*7c478bd9Sstevel@tonic-gate
180*7c478bd9Sstevel@tonic-gatelint: lintcheck
181*7c478bd9Sstevel@tonic-gate
182*7c478bd9Sstevel@tonic-gate$(DYNLIB): 	$(MAPFILE)
183*7c478bd9Sstevel@tonic-gate
184*7c478bd9Sstevel@tonic-gate$(MAPFILE):
185*7c478bd9Sstevel@tonic-gate	@cd $(MAPDIR); $(MAKE) mapfile
186*7c478bd9Sstevel@tonic-gate
187*7c478bd9Sstevel@tonic-gate
188*7c478bd9Sstevel@tonic-gate# install rule for 32-bit libcurses.a
189*7c478bd9Sstevel@tonic-gate$(ROOTLIBDIR)/%.a: %.a
190*7c478bd9Sstevel@tonic-gate	$(INS.file)
191*7c478bd9Sstevel@tonic-gate		cd $(ROOTLIBDIR); \
192*7c478bd9Sstevel@tonic-gate		$(RM) libtermlib.a libtermcap.a; \
193*7c478bd9Sstevel@tonic-gate		ln libcurses.a libtermlib.a; \
194*7c478bd9Sstevel@tonic-gate		ln libcurses.a libtermcap.a;
195*7c478bd9Sstevel@tonic-gate
196*7c478bd9Sstevel@tonic-gate# install rules for 32-bit libcurses.so in /usr/lib
197*7c478bd9Sstevel@tonic-gate$(ROOTLINKS) := INS.liblink= \
198*7c478bd9Sstevel@tonic-gate	$(RM) $@; $(SYMLINK) $(LIBLINKPATH)$(LIBLINKS)$(VERS) $@; \
199*7c478bd9Sstevel@tonic-gate		cd $(ROOTLIBDIR); \
200*7c478bd9Sstevel@tonic-gate		$(RM) libtermlib.so$(VERS) libtermcap.so$(VERS); \
201*7c478bd9Sstevel@tonic-gate		$(RM) libtermlib.so libtermcap.so; \
202*7c478bd9Sstevel@tonic-gate		$(SYMLINK) libcurses.so$(VERS) libtermlib.so$(VERS); \
203*7c478bd9Sstevel@tonic-gate		$(SYMLINK) libcurses.so$(VERS) libtermcap.so$(VERS); \
204*7c478bd9Sstevel@tonic-gate		$(SYMLINK) libtermlib.so$(VERS) libtermlib.so; \
205*7c478bd9Sstevel@tonic-gate		$(SYMLINK) libtermcap.so$(VERS) libtermcap.so;
206*7c478bd9Sstevel@tonic-gate
207*7c478bd9Sstevel@tonic-gate#
208*7c478bd9Sstevel@tonic-gate# Include library targets
209*7c478bd9Sstevel@tonic-gate#
210*7c478bd9Sstevel@tonic-gateinclude ../../Makefile.targ
211*7c478bd9Sstevel@tonic-gate
212*7c478bd9Sstevel@tonic-gatepics/%.o: ../screen/%.c
213*7c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $<
214*7c478bd9Sstevel@tonic-gate	$(POST_PROCESS_O)
215*7c478bd9Sstevel@tonic-gate
216*7c478bd9Sstevel@tonic-gate# install rule for lint library target
217*7c478bd9Sstevel@tonic-gate$(ROOTLINTDIR)/%: ../screen/%
218*7c478bd9Sstevel@tonic-gate	$(INS.file)
219*7c478bd9Sstevel@tonic-gate	cd $(ROOTLINTDIR); \
220*7c478bd9Sstevel@tonic-gate		$(RM) llib-ltermcap llib-ltermlib ; \
221*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses llib-ltermcap; \
222*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses llib-ltermlib; \
223*7c478bd9Sstevel@tonic-gate		$(RM) llib-ltermcap.ln llib-ltermlib.ln ; \
224*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses.ln llib-ltermcap.ln; \
225*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses.ln llib-ltermlib.ln;
226*7c478bd9Sstevel@tonic-gate
227*7c478bd9Sstevel@tonic-gate# install rule for 64 bit lint library target
228*7c478bd9Sstevel@tonic-gate$(ROOTLINTDIR64)/%: ../screen/%
229*7c478bd9Sstevel@tonic-gate	$(INS.file)
230*7c478bd9Sstevel@tonic-gate	cd $(ROOTLINTDIR64); \
231*7c478bd9Sstevel@tonic-gate		$(RM) llib-ltermcap llib-ltermlib ; \
232*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses llib-ltermcap; \
233*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses llib-ltermlib; \
234*7c478bd9Sstevel@tonic-gate		$(RM) llib-ltermcap.ln llib-ltermlib.ln ; \
235*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses.ln llib-ltermcap.ln; \
236*7c478bd9Sstevel@tonic-gate		$(SYMLINK) ./llib-lcurses.ln llib-ltermlib.ln;
237