Files
IanDarwin.OpenLookCDROM/NeWS/gterm/Makefile

278 lines
6.7 KiB
Makefile

# Release: Grass-2
#
# This file is a product of Sun Microsystems, Inc. and is provided for
# unrestricted use provided that this legend is included on all tape
# media and as a part of the software program in whole or part.
# Users may copy, modify or distribute this file at will.
#
# THIS FILE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
# WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
# PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
#
# This file is provided with no support and without any obligation on the
# part of Sun Microsystems, Inc. to assist in its use, correction,
# modification or enhancement.
#
# SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
# INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS FILE
# OR ANY PART THEREOF.
#
# In no event will Sun Microsystems, Inc. be liable for any lost revenue
# or profits or other special, indirect and consequential damages, even
# if Sun has been advised of the possibility of such damages.
#
# Sun Microsystems, Inc.
# 2550 Garcia Avenue
# Mountain View, California 94043
#
#
# ancestor: @(#)Makefile.psterm 9.9 88/01/19
# @(#)$Header: Makefile,v 2.33 91/05/14 00:04:31 hugh Exp $
#
# Copyright (c) 1987 by Sun Microsystems, Inc.
#
# Modifications to the original Sun Microsystems, Inc. source code
# made by the Grasshopper Group are in the Public Domain.
#
# Extensions to this file by Eric Messick & ||ugh Daniel
# of the Grasshopper Group.
#
# Grasshopper Group
# 210 Clayton St
# San Francisco, CA 94117
#
# Please note that this will be the last V7 make based makefile we will
# release, all future makefiles will be based on gnumake. Be prepared.
#
SHELL=/bin/sh
# Global macro definitions
# Set these variables for your site
# OpenWindows
NEWSHOME=/usr/openwin
PSHDIR=${INSDIR}/etc
# NeWS 1.1 users will need to uncomment these lines
#NEWSHOME=/usr/NeWS
#PSHDIR=${INSDIR}/lib
# Other variables you might want to change
INSDIR=${NEWSHOME}
INSTALLDIR=${INSDIR}/clientsrc/client/gterm
BINDIR=${INSDIR}/bin
LIBDIR=${INSDIR}/lib
INCLUDE=${INSDIR}/include
MANEXT=1
MANDIR=/usr/local/man/man${MANEXT}
BINNAME=gterm
# --- Global macro definitions ---
OPT=-O
CC=cc
OSI=REF
SYSV_NETWORK=
BYTES=
TERMFLAG=
SYSV_NETLIB=
TERMLIB=-ltermcap
PREPROC=-I. -I${INCLUDE} -I${INCLUDE}/NeWS -D${OSI} -DUTMP ${TERMFLAG} ${SYSV_NETWORK}
COPTS= ${BYTES}
CPS= ${BINDIR}/cps
LIBCPS= ${LIBDIR}/libcps.a
# For debugging its helps to use the debugging version of the library
LIBCPS_G= ${LIBDIR}/libcps_g.a
CFLAGS=${OPT} ${COPTS} ${PREPROC}
# Too many lints -- pick your own lint flags.
#LINT=/usr/5bin/lint
LOPTS=-abch
#LOPTS=
LINTOPTS=${LOPTS} ${PREPROC}
LIBS=${TERMLIB} ${LIBCPS} ${SYSV_NETLIB}
# When adding files, also modify 'make shar' below.
SRCS = display.c \
selection.c \
io.c \
main.c \
parsers.c \
slave.c \
tcap_ops.c \
tcap_parse.c \
bsd.c \
sys5.c
OBJS = display.o \
selection.o \
io.o \
main.o \
parsers.o \
slave.o \
tcap_ops.o \
tcap_parse.o \
bsd.o \
sys5.o
HDRS = screen.h \
tcap.h \
termcap.h
# Note: gterm?XXX.psh the ? is a Protocall level and NOT a patchlevel.
PSCODE = gtermstart.psh gterm1lte1.psh gterm1lte2.psh
# What is the size limet on a shar file?
SHAR1 = README \
BUGS \
patchlevel.h \
Makefile \
gterm.1 \
UsingGTerm \
termcap.NeWS \
terminfo.NeWS
SHAR2 = slave.c \
gterm1lte2.psh
SHAR3 = ref/config_aux \
ref/config_sunos \
selection.c \
gtermstart.psh \
gterm1lte1.psh \
fkeys.psh \
sys5.c
SHAR4 = tcap.cps \
tcap_ops.c \
tcap_parse.c \
termcap.h
SHAR5 = parsers.c \
display.c \
bsd.c \
main.c \
screen.h
SHAR6 = sampl.user.ps \
sampl.gtermrc \
io.c
all: gterm
psterm: gterm
aux:
cd ref; rm -f config.h; ln -s config_aux config.h
${MAKE} NEWSHOME=/usr/NeWS PSHDIR=/usr/NeWS/lib
sunos:
cd ref; rm -f config.h; ln -s config_sunos config.h
${MAKE}
debug:
${MAKE} OPT=-g LIBCPS=${LIBCPS_G} BINNAME=gterm.g
lint: tcap.h
${LINT} ${LINTOPTS} ${SRCS} | grep -v _CPS
gterm: ref/config.h ${OBJS}
${CC} ${CFLAGS} -o ${BINNAME} ${OBJS} ${LIBS}
gprof:
${MAKE} BINNAME=gterm.pg OPT=-pg gterm
# ${MAKE} BINNAME=gterm.pg OPT=-pg LIBCPS=${LIBCPS_G} gterm
tcap.h: tcap.cps
ref/config.h:
@echo "You need to create the file ref/config.h. See the installation"
@echo "instructions in the file README."
@false
install: gterm ${PSCODE}
-cd ${BINDIR} ; mv gterm RemoveMe.$$ ; rm -f RemoveMe.$$
@echo You may have to remove ${BINDIR}/RemoveMe.\* manually on
@echo systems which cannot delete busy text files
cp gterm ${BINDIR}
-chmod 755 ${BINDIR}/gterm
-chgrp bin ${BINDIR}/gterm
-chown bin ${BINDIR}/gterm
-cd ${PSHDIR} ; rm -f ${PSCODE}
cp ${PSCODE} ${PSHDIR}
cp termcap.NeWS ${PSHDIR}
-cd ${PSHDIR} ; chmod 644 ${PSCODE} termcap.NeWS
-cd ${PSHDIR} ; chgrp bin ${PSCODE} termcap.NeWS
-cd ${PSHDIR} ; chown bin ${PSCODE} termcap.NeWS
cp gterm.1 ${MANDIR}/gterm.${MANEXT}
-chmod 644 ${MANDIR}/gterm.${MANEXT}
# Used in creation of the NeWS client source tree
srcinstall:
-mkdir ${INSTALLDIR}
@echo '[Errors from mkdir are OK]'
(cd ${INSTALLDIR}; rm -rf *)
mkdir ${INSTALLDIR}/ref
cp ${SHAR1} ${SHAR2} ${SHAR3} ${SHAR4} ${SHAR5} ${SHAR6} ${INSTALLDIR}
(cd ${INSTALLDIR}/ref; mv ../config_* .; ln -s config_aux config.h)
clean:
rm -f *.o gterm gterm.pg psterm tcap tcap.h core *.BAK *~
shar:
echo ": gterm part 1 of 6" > gterm.shar.1
shar ${SHAR1} >> gterm.shar.1
echo ": gterm part 2 of 6" > gterm.shar.2
shar ${SHAR2} >> gterm.shar.2
echo ": gterm part 3 of 6" > gterm.shar.3
echo "echo ref" >> gterm.shar.3
echo "mkdir ref" >> gterm.shar.3
shar ${SHAR3} >> gterm.shar.3
echo ": gterm part 4 of 6" > gterm.shar.4
shar ${SHAR4} >> gterm.shar.4
echo ": gterm part 5 of 6" > gterm.shar.5
shar ${SHAR5} >> gterm.shar.5
echo ": gterm part 6 of 6" > gterm.shar.6
shar ${SHAR6} >> gterm.shar.6
etags:
etags ${SRCS}
ctags:
ctags ${SRCS}
tags: ctags etags
rcslabel:
for afile in ${SHAR1} ${SHAR2} ${SHAR3} ${SHAR4} ${SHAR5} ${SHAR6}; do\
if test -w $${afile};\
then\
echo File $${afile} is writable and likely checked out;\
echo All files MUST be checked in before a labeling;\
exit 121;\
fi;\
done
for afile in ${SHAR1} ${SHAR2} ${SHAR3} ${SHAR4} ${SHAR5} ${SHAR6}; do\
co -l $${afile};\
ci -f -u -q -n${LABEL} -s$${STATE:-${LABEL}} $${afile} < /dev/null;\
done
depend: ${HDRS} ${SRCS}
${INSDIR}/clientsrc/makedepend ". -I${INCLUDE}"
.SUFFIXES: .h .cps
.cps.h:
${CPS} $*.cps
# START OF AUTOMATICALLY GENERATED DEPENDENCIES
bsd.o: bsd.c
display.o: display.c screen.h tcap.h
io.o: io.c
main.o: main.c
parsers.o: termcap.h
selection.o: screen.h selection.c tcap.h
slave.o: slave.c
sys5.o: sys5.c
tcap_ops.o: screen.h tcap.h tcap_ops.c termcap.h
tcap_parse.o: tcap_parse.c termcap.h