Makefile revision d1c1c8ce74e7df9e7e01def7fd379b5bfaa8789f
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# CDDL HEADER START
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The contents of this file are subject to the terms of the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Common Development and Distribution License (the "License").
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You may not use this file except in compliance with the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# or http://www.opensolaris.org/os/licensing.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# See the License for the specific language governing permissions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and limitations under the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# When distributing Covered Code, include this CDDL HEADER in each
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# If applicable, add the following below this CDDL HEADER, with the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# fields enclosed by brackets "[]" replaced with your own identifying
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# information: Portions Copyright [yyyy] [name of copyright owner]
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# CDDL HEADER END
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Use is subject to license terms.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# ident "%Z%%M% %I% %E% SMI"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPROG= stty ttymon ttyadm sttydefs
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXPG4PROG= stty
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# the 'stty' objects have to be made in a separate directory
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# since only they are built with the -DEUC flag (see below).
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSTTYOBJ= sttyobjs/stty.o sttyobjs/sttytable.o sttyobjs/sttyparse.o
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXPG4STTYOBJ= sttyobjs.xpg4/stty.o sttyobjs.xpg4/sttytable.o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sttyobjs.xpg4/sttyparse.o
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTTYMONOBJ= ttymon.o tmglobal.o tmhandler.o tmpmtab.o tmttydefs.o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein tmparse.o tmsig.o tmsac.o tmchild.o tmautobaud.o tmterm.o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein tmutmp.o tmpeek.o tmlog.o tmlock.o tmutil.o tmexpress.o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sttytable.o sttyparse.o ulockf.o
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTTYADMOBJ= ttyadm.o tmutil.o admutil.o
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSTTYDEFSOBJ= sttydefs.o admutil.o tmttydefs.o tmparse.o sttytable.o \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sttyparse.o
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinOBJS= $(STTYOBJ) $(XPG4STTYOBJ) $(TTYMONOBJ) $(TTYADMOBJ) $(STTYDEFSOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSTTYSRC= stty.c sttytable.c sttyparse.c
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTTYMONSRC= $(TTYMONOBJ:%.o=%.c)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTTYADMSRC= $(TTYADMOBJ:%.o=%.c)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSTTYDEFSSRC= $(STTYDEFSOBJ:%.o=%.c)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSRCS= $(STTYSRC) $(TTYMONSRC) $(TTYADMSRC) $(STTYDEFSSRC)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein.PARALLEL: $(OBJS) $(PROG)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../Makefile.cmd
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# If machine name and /etc/issue file need to be printed
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# before the service prompt is printed, then: CPPFLAGS += -DSYS_NAME
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# If debug is needed, then: CPPFLAGS += -DDEBUG
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# fix for 1111333 - turn on SYS_NAME so /etc/issue will be read if it exists
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCPPFLAGS += -DSYS_NAME
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(XPG4):= CPPFLAGS += -DXPG4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttydefs := LDLIBS += -lnsl
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinttymon := LDLIBS += -lnsl -lsec -ldevinfo
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Only stty can be built with -DEUC. ttymon will dump core unless further
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# changes are made to it.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(STTYOBJ) := CPPFLAGS += -DEUC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(XPG4STTYOBJ) := CPPFLAGS += -DEUC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLINTFLAGS = -b -x
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCFLAGS += $(CCVERBOSE)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Message catalog
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPOFILES= $(STTYOBJ:sttyobjs/%.o=%.po)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPOFILE= ttymon.po
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIBSAFD= $(ROOTLIB)/saf
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDIRS= $(LIBSAFD)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIBSAF= ttymon
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinUSRSBINF= sttydefs ttyadm
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinBINF= stty
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTLIBF= $(LIBSAF:%=$(LIBSAFD)/%)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTUSRSBINF= $(USRSBINF:%=$(ROOTUSRSBIN)/%)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTBINF= $(BINF:%=$(ROOTBIN)/%)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTLIBF) := FILEMODE = 0555
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTUSRSBINF) := FILEMODE = 0755
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTUSRSBINF) $(ROOTLIBF) := OWNER = root
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(ROOTUSRSBINF) $(ROOTLIBF) := GROUP = sys
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(LIBSAFD)/% : %
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INS.file)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# /usr/xpg6/bin/stty is a symlink to /usr/bin/stty
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinROOTXPG6SYMLINK= $(ROOTXPG6BIN)/stty
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein.KEEP_STATE:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinall: $(PROG) $(XPG4)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinstty: sttyobjs $(STTYOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(LINK.c) $(STTYOBJ) -o $@ $(LDLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(POST_PROCESS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinstty.xpg4: $(XPG4STTYOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(LINK.c) $(XPG4STTYOBJ) -o $@ $(LDLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(POST_PROCESS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(XPG4STTYOBJ): sttyobjs.xpg4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttyobjs/%.o: %.c
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(COMPILE.c) -o $@ $<
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttyobjs.xpg4/%.o: %.c
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(COMPILE.c) -o $@ $<
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttyobjs:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -@mkdir -p $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttyobjs.xpg4:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -@mkdir -p $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinttymon: $(TTYMONOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(LINK.c) $(TTYMONOBJ) -o $@ $(LDLIBS) -lpam
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(POST_PROCESS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinttyadm: $(TTYADMOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(LINK.c) $(TTYADMOBJ) -o $@ $(LDLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(POST_PROCESS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinsttydefs: $(STTYDEFSOBJ)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(LINK.c) $(STTYDEFSOBJ) -o $@ $(LDLIBS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(POST_PROCESS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininstall: all $(DIRS) $(ROOTLIBF) $(ROOTUSRSBINF) $(ROOTBINF) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(ROOTXPG4PROG) $(ROOTXPG6SYMLINK)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -$(RM) $(ROOTETC)/getty
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -$(SYMLINK) ../usr/lib/saf/ttymon $(ROOTETC)/getty
$(ROOTXPG6SYMLINK): $(ROOTBINF)
-$(RM) $@
-$(SYMLINK) ../../bin/$(BINF) $@
$(POFILE): $(POFILES)
$(RM) $@
cat $(POFILES) > $@
$(DIRS):
$(INS.dir)
clean:
$(RM) $(OBJS)
lint:
$(LINT.c) $(STTYSRC)
$(LINT.c) $(TTYMONSRC)
$(LINT.c) $(TTYADMSRC)
$(LINT.c) $(STTYDEFSSRC)
include ../Makefile.targ