xref: /illumos-gate/usr/src/lib/libxcurses2/Makefile.com (revision 2a1fd0ffe121888d44fdec321c25b53dcfaa9118)
1#
2# CDDL HEADER START
3#
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.
7#
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.
12#
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]
18#
19# CDDL HEADER END
20#
21#
22# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24#
25# Copyright (c) 2018, Joyent, Inc.
26
27LIBRARY=	libcurses.a
28VERS=	.2
29
30# objects are grouped by source directory
31# all of the libxcurses source files are in src/libc
32OBJECTS= $(XCURSES)	$(MKS)	$(WIDE)
33
34# XCURSES source files are in src/libc/xcurses
35XCURSES= \
36add_wch.o	dupwin.o	longname.o	strname.o	wbrdr.o \
37addch.o		echo_wch.o	m_cc.o		termattr.o	wbrdr_st.o \
38addchn.o	echochar.o	meta.o		tgetent.o	wchgat.o \
39addnstr.o	endwin.o	move.o		tgetflag.o	wclear.o \
40addnws.o	flushinp.o	mvcur.o		tgetnum.o	wclrbot.o \
41addwchn.o	get_wch.o	mvwin.o		tgetstr.o	wclreol.o \
42attr_on.o	getcchar.o	napms.o		tgoto.o		wdelch.o \
43attron.o	getch.o		newpad.o	tigetfla.o	wget_wch.o \
44baudrate.o	getn_ws.o	newterm.o	tigetnum.o	wgetch.o \
45beep.o		getnstr.o	newwin.o	tigetstr.o	wgetn_ws.o \
46bkgd.o		getwin.o	noecho.o	timeout.o	whln.o \
47bkgdset.o	has.o		nonl.o		touched.o	whln_st.o \
48bkgrnd.o	hln.o		numcode.o	touchwin.o	win_wch.o \
49bkgrndst.o	hln_st.o	numfnam.o	tparm.o		win_wchn.o \
50boolcode.o	in_wch.o	numname.o	tputs.o		winch.o \
51boolfnam.o	in_wchn.o	overlay.o	winchn.o \
52boolname.o	inch.o		pecho_wc.o	unctrl.o	winnstr.o \
53box.o		inchn.o		pechoch.o	vid_attr.o	winnwstr.o \
54box_set.o	initscr.o	prefresh.o	vid_puts.o	wins_nws.o \
55brdr.o		innstr.o	printw.o	vidattr.o	wins_wch.o \
56brdr_st.o	innwstr.o	ptrmove.o	vw_print.o	winsch.o \
57cbreak.o	ins_nws.o	qiflush.o	vw_scanw.o	winsdel.o \
58chgat.o		ins_wch.o	redraw.o	vwprintw.o	winsnstr.o \
59clear.o		insch.o		refresh.o	vwscanw.o	wmove.o \
60clearok.o	insnstr.o	savetty.o	wacs.o		wredraw.o \
61clrbot.o	intrflsh.o	scanw.o		wadd_wch.o	wrefresh.o \
62clreol.o	scr_dump.o	waddch.o	wscrl.o \
63color.o		isendwin.o	scrl.o		waddchn.o	wscrreg.o \
64copywin.o	key_name.o	scrreg.o	waddnstr.o	wsyncdn.o \
65curs_set.o	keyindex.o	setcchar.o	waddnws.o	wsyncup.o \
66delay.o		keyname.o	setup.o		waddwchn.o	wtimeout.o \
67delch.o		keypad.o	slk.o		wattr_on.o	wtouchln.o \
68deleteln.o	killchar.o	strcode.o	wattron.o	wunctrl.o \
69doupdate.o	killwch.o	strfnam.o	wbkgrnd.o
70
71# MKS source files are in src/libc/mks
72MKS= m_crcpos.o
73
74# WIDE source files are in src/libc/wide
75WIDE= wio_get.o	wio_put.o
76
77# include library definitions
78include ../../Makefile.lib
79
80SRCDIR =	../src
81
82SRCS=		$(XCURSES:%.o=../src/libc/xcurses/%.c) \
83		$(MKS:%.o=../src/libc/mks/%.c) \
84		$(WIDE:%.o=../src/libc/wide/%.c)
85
86LIBS =		$(DYNLIB) $(LINTLIB)
87
88# definitions for install target
89ROOTLIBDIR=	$(ROOT)/usr/xpg4/lib
90ROOTLIBDIR64=	$(ROOT)/usr/xpg4/lib/$(MACH64)
91ROOTLIBS=	$(LIBS:%=$(ROOTLIBDIR)/%)
92
93$(LINTLIB):= SRCS=../src/libc/llib-lcurses
94
95LINTSRC=	$(LINTLIB:%.ln=%)
96
97LDLIBS += -lc
98
99CPPFLAGS = -I../h -I../src/libc/xcurses $(CPPFLAGS.master)
100CERRWARN += -_gcc=-Wno-uninitialized
101CERRWARN += -_gcc=-Wno-unused-value
102
103# not linted
104SMATCH=off
105
106#
107# If and when somebody gets around to messaging this, CLOBBERFILE should not
108# be cleared (so that any .po file will be clobbered.
109#
110CLOBBERFILES=	libcurses.so libcurses.so$(VERS)
111
112.KEEP_STATE:
113
114all: $(LIBS)
115
116lint: lintcheck
117
118#
119# Include library targets
120#
121include ../../Makefile.targ
122
123objs/%.o pics/%.o:	../src/libc/xcurses/%.c
124	$(COMPILE.c) -o $@ $<
125	$(POST_PROCESS_O)
126
127objs/%.o pics/%.o:	../src/libc/mks/%.c
128	$(COMPILE.c) -o $@ $<
129	$(POST_PROCESS_O)
130
131objs/%.o pics/%.o:	../src/libc/wide/%.c
132	$(COMPILE.c) -o $@ $<
133	$(POST_PROCESS_O)
134
135# install rule for lint library target
136$(ROOTLINTDIR)/%: ../src/libc/%
137	$(INS.file)
138
139# install rule for 64 bit lint library target
140$(ROOTLINTDIR64)/%: ../src/libc/%
141	$(INS.file)
142