#
# $Id: Makefile,v 1.39 2002/04/06 04:52:24 forys Exp $
#
# First, find the CONFIGURE comments and set up the "BIN*" and "MAN*"
# defines according to local customs.  Next, if your operating system
# is listed below, type "make config" to set OSTYPE, COPTS, and LIBS
# for your machine.  If the auto-configuration script reports that it
# failed, look for and fill in the CONFIGURE(Config) comments manually.
# Now type "make" followed by "make install".
#
# Currently supported operating systems include:
#
# Vendor	Release		OSTYPE		Notes
# ------------	--------------	--------------	--------------
# AT&T/DELL	SVR4		sys-5r4
# Berkeley	4.2BSD		bsd-43		COPTS=-DNO_UID_T
# Berkeley	4.3BSD		bsd-43		BINGRP=kmem BINMOD=2755
# Berkeley	4.4BSD		bsd-44		LIBS=-lkvm (kmem/2755)
# BSDI		2.1		bsd-44		LIBS=-lkvm (kmem/2755)
# CMU		Mach 2.6	mach-26		LIBS=-lsys
# CMU		Mach 3.0	mach-3		install setuid root
# Compaq	Tru64 Unix	mach-3		install setuid root
# DEC		OSF/1 3.0	mach-3		install setuid root
# DEC		Digital Unix	mach-3		install setuid root
# DEC		Ultrix 2.2	ultrix-22
# DEC		Ultrix 4.2	ultrix-4
# Encore	UMAX 4.2	umax-42		COPTS=-DNO_UID_T
# FreeBSD	2.0-2		bsd-44		LIBS=-lkvm (kmem/2755)
# FreeBSD	2.2.8-5.0	nbsd-44
# HP		HP-UX 6.5	hpux-70		COPTS=-DNO_UID_T
# HP		HP-UX 7.0	hpux-70
# HP		HP-UX 8.0-9.1	hpux-90
# HP		HP-UX 10.1-20	hpux-10
# HP		HP-UX 11.0-11	hpux-10
# IBM		AIX 3.2-4.1	aix-3
# IBM		AOS 4.3		aos-43
# Linux		Linux 1.0-2.2	linux-1		COPTS=-O3 LIBS="-s -N"
# MIPS		UMIPS 2.1	umips-21	LIBS=-lmld
# NetBSD	0.8-1.5		nbsd-44
# NeXT		NeXT OS 1.0	mach-26
# NeXT		NeXT OS 2.1	next-2
# OpenBSD	2.6-3.0		nbsd-44
# Pyramid	OSx 4.0		osx-4
# SCO		UnixWare 7.0.1	sys-5r4
# SGI		Irix 3.3	irix-3		LIBS=-lmld
# SGI		Irix 4.0.1	irix-4		LIBS=-lmld
# SGI		Irix 5.2-3	irix-5
# SGI		Irix 6.2	irix-5
# Sequent	Dynix 3.0-1	dynix-3
# Sun		SunOS 2-3	sunos-3
# Sun		SunOS 4.0	sunos-40	LIBS=-lkvm
# Sun		SunOS 4.1	sunos-41	LIBS=-lkvm
# Sun		SunOS 5.1-4	sys-5r4
# Sun		SunOS 5.5-8	sys-5r4		COPTS=-DSYSV_REGEX

DESTDIR=
SHELL=	/bin/sh
PREFIX=	/usr/local

# CONFIGURE: Set location of executable, it's group and mode.
BINDIR=	${PREFIX}/bin
BINGRP=	wheel
BINMOD=	555

# CONFIGURE: Set location of man directory and man page suffix.
MANDIR=	${PREFIX}/man/man1
MANSFX=	1

# CONFIGURE(Config): Select an OSTYPE for your machine from the list above.
OSTYPE=	nbsd-44

# CONFIGURE(Config): Add any OS-specific options here.
COPTS=	

# CONFIGURE(Config): Add any special libraries your system needs.
LIBS=	

SRCS=	main.c argparse.c getproc.c
OBJS=	main.o argparse.o getproc.o
HDRS=	conf.h

CFLAGS=	-O ${COPTS}

all:	skill

skill:	${OBJS}
	${CC} ${CFLAGS} ${OBJS} -o skill ${LIBS}

getproc.c:
	rm -f getproc.c getproc.o
	ln -s machdep/${OSTYPE}.c getproc.c

${OBJS}: ${HDRS}

install: skill
#(SysV)	filepriv -d ${DESTDIR}/${BINDIR}/skill
	rm -f ${DESTDIR}/${BINDIR}/skill ${DESTDIR}/${MANDIR}/skill.${MANSFX}
	rm -f ${DESTDIR}/${BINDIR}/snice ${DESTDIR}/${MANDIR}/snice.${MANSFX}
#	install -c -g ${BINGRP} -m ${BINMOD} -s skill ${DESTDIR}/${BINDIR}
	cp skill ${DESTDIR}/${BINDIR}/skill
	strip ${DESTDIR}/${BINDIR}/skill
	chgrp ${BINGRP} ${DESTDIR}/${BINDIR}/skill
	chmod ${BINMOD} ${DESTDIR}/${BINDIR}/skill
	ln ${DESTDIR}/${BINDIR}/skill ${DESTDIR}/${BINDIR}/snice
#(SysV)	filepriv -f dacread ${DESTDIR}/${BINDIR}/skill
#	install -c -m 644 skill.1 ${DESTDIR}/${MANDIR}/skill.${MANSFX}
	cp skill.1 ${DESTDIR}/${MANDIR}/skill.${MANSFX}
	chmod 644 ${DESTDIR}/${MANDIR}/skill.${MANSFX}
	ln ${DESTDIR}/${MANDIR}/skill.${MANSFX}\
		${DESTDIR}/${MANDIR}/snice.${MANSFX}

config Config: FRC
	./Config

clean:
	rm -f skill snice *.o [Ee]rrs [Ii][Ee]rrs mklog a.out core getproc.c

lint:	getproc.c
	lint ${COPTS} ${SRCS} ${LIBS}

FRC:

depend: ${SRCS}
	for i in ${SRCS}; do \
	    ${CC} -M ${COPTS} $$i | sed 's/\.o//' | \
	    awk ' { if ($$1 != prev) \
		{ if (rec != "") print rec; rec = $$0; prev = $$1; } \
		else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
		else rec = rec " " $$2 } } \
		END { print rec } ' >> makedep; done
	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
	echo '$$r makedep' >>eddep
	echo 'w' >>eddep
	chmod u+w Makefile
	cp Makefile Makefile.bak
	ed - Makefile < eddep
	rm eddep makedep
	echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
	echo '# see make depend above' >> Makefile

# DO NOT DELETE THIS LINE -- make depend uses it

# DEPENDENCIES MUST END AT END OF FILE
# IF YOU PUT STUFF HERE IT WILL GO AWAY
# see make depend above
