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