Files
Arquivotheca.SunOS-4.1.4/bin/Makefile
seta75D ff309bfe1c Init
2021-10-11 18:37:13 -03:00

257 lines
7.5 KiB
Makefile

#
# Copyright (c) 1980 Regents of the University of California.
# All rights reserved. The Berkeley software License Agreement
# specifies the terms and conditions for redistribution.
#
# @(#)Makefile 1.1 94/10/31 SMI; from UCB 5.13 85/09/09
#
DESTDIR= /net/squaw/home/au
MACHINES= iAPX286 i386 m68k mc68010 mc68020 pdp11 sparc sun u370 u3b u3b2 \
u3b5 u3b15 vax
ARCHITECTURE= sun2 sun3 sun4 sun386 sun3x sun4c sun4m
CFLAGS= -O
LDFLAGS=
CC= /bin/cc
CHOWN= /usr/etc/chown
DOPRNT= ../lib/libc/stdio/common
MAKE= make CC=${CC}
RM= /usr/bin/rm -f
ROOT= root
SPGRP= daemon
.KEEP_STATE:
# Programs that live in subdirectories, and have makefiles of their own.
#
SUBDIR= awk csh diff make sed sh
# Shell scripts that need only be installed and are never removed.
#
SCRIPT= false true mach
SCRIPTSRC= $(SCRIPT:%=%.sh)
SCRIPTASP= arch
SCRIPTASPSRC= $(SCRIPTASP:%=%.sh)
# C programs that live in the current directory and do not need
# explicit make lines.
#
STD= chgrp cmp domainname dd env \
hostid kill ldd line mkdir mt newgrp nice \
pagesize pwd rm rmail rmdir sync \
tee test who
# C programs that live in the current directory and need explicit make lines.
#
NSTD= ed login mail passwd
# Architecture-specific programs
#
ASP= ps
ASP4MONLY= mpstat mps
# Install directory for architecture-specific programs, absolute path
#
ASDIR= /usr/kvm
# Install directory for architecture-specific programs, relative to /usr/bin
#
RELASDIR= ../kvm
# Programs that must run setuid to root
#
SETUID= login mail newgrp passwd
# Programs that must run set-group-id kmem
#
KMEM=
# Programs that must run set-group-id tty.
#
TTY= wall write
# Programs that must run set-group-id operator.
#
OPERATOR=
# Programs built "static" for disaster recovery and startup.
#
STATIC= bar hostname mv tar
# Programs built "small"
#
chgrp cmp cp domainname dd \
env hostid hostname kill \
line ldd mkdir mt mv newgrp nice pagesize passwd \
${ASP} ${ASP4MONLY} pwd rm rmail rmdir sync tee test who \
wall := LDFLAGS += -n -Bdynamic
all: ${SUBDIR} ${STD} ${NSTD} ${TTY} cp ${STATIC} ${ASP} ${ASP4MONLY}
${SUBDIR}: FRC
cd $@; $(MAKE) ${MFLAGS}
${STD} ${TTY} cp:
${CC} ${LDFLAGS} ${CFLAGS} -o $@ $@.c
${STATIC}: doprnt.o $$@.c
${CC} ${LDFLAGS} -Bstatic ${CFLAGS} -o $@ $@.c doprnt.o
doprnt.o: ${DOPRNT}/doprnt.c
${CC} ${CFLAGS} -c -DFLOAT=0 -I${DOPRNT} ${DOPRNT}/doprnt.c
install: ${STD} ${NSTD} ${TTY} cp ${STATIC} ${SCRIPTSRC} ${ASP} ${ASP4MONLY} \
${SCRIPTASPSRC}
install -d -o bin -m 755 ${DESTDIR}/usr/bin
install -d -o bin -m 755 ${DESTDIR}${ASDIR}
install -s cp ${DESTDIR}/usr/bin/newcp; \
mv ${DESTDIR}/usr/bin/newcp ${DESTDIR}/usr/bin/cp;
$(RM) ${DESTDIR}/usr/bin/mv; cp mv ${DESTDIR}/usr/bin/mv; \
strip ${DESTDIR}/usr/bin/mv; chmod 755 ${DESTDIR}/usr/bin/mv
@set -x; for i in ${SUBDIR}; do \
(cd $$i; $(MAKE) ${MFLAGS} DESTDIR=${DESTDIR} install); done
@set -x; for i in ${SCRIPT}; do (install -c $$i.sh ${DESTDIR}/usr/bin/$$i); \
done
@set -x; for i in ${SCRIPTASP} ; \
do (install -c $$i.sh ${DESTDIR}${ASDIR}/$$i; \
rm -f ${DESTDIR}/usr/bin/$$i; \
/usr/bin/ln -s ${RELASDIR}/$$i ${DESTDIR}/usr/bin/$$i); done
install -s ${STD} ${NSTD} ${TTY} bar hostname tar ${DESTDIR}/usr/bin
@set -x; for i in ${ASP}; do (install -s $$i ${DESTDIR}${ASDIR}/$$i; \
rm -f ${DESTDIR}/usr/bin/$$i; \
/usr/bin/ln -s ${RELASDIR}/$$i ${DESTDIR}/usr/bin/$$i); \
done
case `arch -k` in \
sun4m) \
set -x; for i in ${ASP4MONLY}; do (install -s $$i ${DESTDIR}${ASDIR}/$$i; \
rm -f ${DESTDIR}/usr/bin/$$i; \
/usr/bin/ln -s ${RELASDIR}/$$i ${DESTDIR}/usr/bin/$$i); \
done;; \
esac;
$(RM) ${DESTDIR}/usr/bin/cc; \
/usr/bin/ln -s ../lib/compile ${DESTDIR}/usr/bin/cc
@set -x; for i in ${SETUID}; do ($(CHOWN) root ${DESTDIR}/usr/bin/$$i; \
chmod 4755 ${DESTDIR}/usr/bin/$$i); done
@set -x; list="${KMEM}"; \
for i in $$list; do (chgrp kmem ${DESTDIR}/usr/bin/$$i; \
chmod 2755 ${DESTDIR}/usr/bin/$$i); done
@set -x; for i in ${ASP}; do (chgrp kmem ${DESTDIR}${ASDIR}/$$i; \
chmod 2755 ${DESTDIR}${ASDIR}/$$i); done
case `arch -k` in \
sun4m) \
set -x; for i in ${ASP4MONLY}; do (chgrp kmem ${DESTDIR}${ASDIR}/$$i; \
chmod 2755 ${DESTDIR}${ASDIR}/$$i); done;; \
esac;
@set -x; for i in ${TTY}; do (chgrp tty ${DESTDIR}/usr/bin/$$i; \
chmod 2755 ${DESTDIR}/usr/bin/$$i); done
$(RM) "${DESTDIR}/usr/bin/["; \
/bin/ln ${DESTDIR}/usr/bin/test "${DESTDIR}/usr/bin/["
$(RM) ${DESTDIR}/usr/bin/e; \
/bin/ln ${DESTDIR}/usr/bin/ed ${DESTDIR}/usr/bin/e
$(RM) ${DESTDIR}/usr/bin/red; \
/bin/ln ${DESTDIR}/usr/bin/ed ${DESTDIR}/usr/bin/red
@set -x; for i in ${MACHINES}; do \
/bin/rm -f ${DESTDIR}/usr/bin/$$i; \
/bin/ln -s ${RELASDIR}/$$i ${DESTDIR}/usr/bin/$$i; \
done
@set -x; for i in ${ARCHITECTURE}; do \
/bin/rm -f ${DESTDIR}/usr/bin/$$i; \
/bin/ln -s ${RELASDIR}/$$i ${DESTDIR}/usr/bin/$$i; \
done
$(RM) ${DESTDIR}/usr/bin/chsh; \
/usr/bin/ln ${DESTDIR}/usr/bin/passwd ${DESTDIR}/usr/bin/chsh
$(RM) ${DESTDIR}/usr/bin/chfn; \
/usr/bin/ln ${DESTDIR}/usr/bin/passwd ${DESTDIR}/usr/bin/chfn
$(RM) ${DESTDIR}/usr/bin/yppasswd; \
/usr/bin/ln ${DESTDIR}/usr/bin/passwd ${DESTDIR}/usr/bin/yppasswd
$(RM) ${DESTDIR}/usr/bin/ypchsh; \
/usr/bin/ln ${DESTDIR}/usr/bin/passwd ${DESTDIR}/usr/bin/ypchsh
$(RM) ${DESTDIR}/usr/bin/ypchfn; \
/usr/bin/ln ${DESTDIR}/usr/bin/passwd ${DESTDIR}/usr/bin/ypchfn
# create symlink from for ${DESTDIR}/bin for backward compatability.
# /usr/bin/rm -rf ${DESTDIR}/bin
# /usr/bin/ln -s /usr/bin ${DESTDIR}/bin
international:
$(RM) ed passwd login
$(RM) $(DESTDIR)/usr/bin/chfn
$(RM) $(DESTDIR)/usr/bin/chsh
$(RM) $(DESTDIR)/usr/bin/yppasswd
$(RM) $(DESTDIR)/usr/bin/ypchfn
$(RM) $(DESTDIR)/usr/bin/ypchsh
${CC} ${CFLAGS} -o ed ed.c
(LD_LIBRARY_PATH=$(DESTDIR)/usr/lib; export LD_LIBRARY_PATH; \
${CC} ${CFLAGS} $(IFLAGS) -o login login.c -lrpcsvc)
(LD_LIBRARY_PATH=$(DESTDIR)/usr/lib; export LD_LIBRARY_PATH; \
${CC} ${CFLAGS} $(IFLAGS) -o passwd passwd.c -lrpcsvc)
install -s ed ${DESTDIR}/usr/bin
$(RM) ${DESTDIR}/usr/bin/e
ln ${DESTDIR}/usr/bin/ed ${DESTDIR}/usr/bin/e
$(RM) ${DESTDIR}/usr/bin/red
ln ${DESTDIR}/usr/bin/ed ${DESTDIR}/usr/bin/red
install -s -m 4755 passwd $(DESTDIR)/usr/bin
install -s -m 4755 login $(DESTDIR)/usr/bin
ln $(DESTDIR)/usr/bin/passwd $(DESTDIR)/usr/bin/chsh
ln $(DESTDIR)/usr/bin/passwd $(DESTDIR)/usr/bin/chfn
ln $(DESTDIR)/usr/bin/passwd $(DESTDIR)/usr/bin/yppasswd
ln $(DESTDIR)/usr/bin/passwd $(DESTDIR)/usr/bin/ypchsh
ln $(DESTDIR)/usr/bin/passwd $(DESTDIR)/usr/bin/ypchfn
$(RM) ed passwd login
clean:
$(RM) a.out core *.s *.o errs
for i in ${SUBDIR}; do (cd $$i; $(MAKE) ${MFLAGS} clean); done
$(RM) ${STD} ${NSTD} cp mv
FRC:
# Files listed in ${NSTD} have explicit make lines given below.
ps:
${CC} ${CFLAGS} $(LDFLAGS) -o ps ps.c -lm -lkvm
mps:
case `arch -k` in \
sun4m) \
${CC} ${CFLAGS} $(LDFLAGS) -o mps -I/usr/src/sys mps.c -lm -lkvm ;;\
esac; \
mpstat:
case `arch -k` in \
sun4m) \
${CC} ${CFLAGS} $(LDFLAGS) -o mpstat -I/usr/src/sys mpstat.c -lkvm ;;\
esac; \
ed:
${CC} ${CFLAGS} -o ed ed.c
rmjob:
${CC} ${CFLAGS} ${LPINC} -c ${LPDIR}/rmjob.c
startdaemon:
${CC} ${CFLAGS} ${LPINC} -c ${LPDIR}/startdaemon.c
common:
${CC} ${CFLAGS} ${LPINC} -c ${LPDIR}/common.c
printcap:
${CC} ${CFLAGS} ${LPINC} -c ${LPDIR}/printcap.c
displayq:
${CC} ${CFLAGS} ${LPINC} -c ${LPDIR}/displayq.c
# Following files have explicit make lines because they
# are big and should be linked to be demand paged.
login:
${CC} ${CFLAGS} -o login login.c -lrpcsvc
passwd:
${CC} ${CFLAGS} -o passwd passwd.c -lrpcsvc
mail:
${CC} ${CFLAGS} -o mail mail.c