NetBSD/libexec/crond/Makefile.vixie

121 lines
4.2 KiB
Makefile

# Makefile for vixie's cron
#
# $Header: /cvsroot/src/libexec/crond/Attic/Makefile.vixie,v 1.2 1993/05/28 08:34:03 cgd Exp $
#
# vix 03mar88 [moved to RCS, rest of log is in there]
# vix 30mar87 [goodbye, time.c; hello, getopt]
# vix 12feb87 [cleanup for distribution]
# vix 30dec86 [written]
#/* Copyright 1988,1990,1993 by Paul Vixie
# * All rights reserved
# *
# * Distribute freely, except: don't remove my name from the source or
# * documentation (don't take credit for my work), mark your changes (don't
# * get me blamed for your possible bugs), don't alter or remove this
# * notice. May be sold if buildable source is provided to buyer. No
# * warrantee of any kind, express or implied, is included with this
# * software; use at your own risk, responsibility for damages (if any) to
# * anyone resulting from the use of this software rests entirely with the
# * user.
# *
# * Send bug reports, bug fixes, enhancements, requests, flames, etc., and
# * I'll try to keep a version up to date. I can be reached as follows:
# * paul@vix.com || {hoptoad,pacbell,decwrl}!vixie!paul
# */
# NOTES:
# 'make' can be done by anyone
# 'make install' must be done by root
#
# this package needs getopt(3), bitstring(3), and BSD install(8).
#
# the configurable stuff in this makefile consists of compilation
# options (use -O, cron runs forever) and destination directories.
# SHELL is for the 'augumented make' systems where 'make' imports
# SHELL from the environment and then uses it to run its commands.
# if your environment SHELL variable is /bin/csh, make goes real
# slow and sometimes does the wrong thing.
#
# this package needs the 'bitstring macros' library, which is
# available from me or from the comp.sources.unix archive. if you
# put 'bitstring.h' in a non-standard place (i.e., not intuited by
# cc(1)), you will have to define INCLUDE to set the include
# directory for cc. INCLUDE should be `-Isomethingorother'.
#
# there's more configuration info in config.h; edit that first!
#################################### begin configurable stuff
#<<DESTROOT is assumed to have ./etc, ./bin, and ./man subdirectories>>
DESTROOT = $(DESTDIR)/usr/local
#<<CRONDIR will be created by crond or crontab if nec'y>>
CRONDIR = /var/cron
#<<need bitstring.h>>
INCLUDE = -I.
#INCLUDE =
#<<need getopt()>>
#LIBS = /usr/local/lib/getopt.o
LIBS =
#<<optimize or debug?>>
#OPTIM = -O
OPTIM = -g
#<<want -x flag for debugging?>>
DEBUGGING = -DDEBUGGING=1
#DEBUGGING = -DDEBUGGING=0
#<<ATT or BSD?>>
# (ATT untested)
#COMPAT = -DATT
COMPAT = -DBSD
#<<lint flags of choice?>>
LINTFLAGS = -hbxa $(INCLUDE) $(COMPAT) $(DEBUGGING)
#<<want to use a nonstandard CC?>>
#CC = vcc
#<<manifest defines>>
DEFS = '-DCRONDIR="$(CRONDIR)"'
#################################### end configurable stuff
SHELL = /bin/sh
CFLAGS = $(OPTIM) $(INCLUDE) $(COMPAT) $(DEBUGGING) $(DEFS)
INFOS = README CHANGES.V2 FEATURES INSTALL CONVERSION THANKS
MANPAGES = bitstring.3 crontab.5 crontab.1 crond.8
HEADERS = bitstring.h cron.h config.h
SOURCES = crond.c crontab.c database.c do_command.c \
entry.c env.c job.c misc.c user.c arpadate.c
SHAR_SOURCE = $(INFOS) $(MANPAGES) Makefile $(HEADERS) $(SOURCES)
LINT_CROND = crond.c database.c user.c entry.c \
misc.c job.c do_command.c env.c arpadate.c
LINT_CRONTAB = crontab.c misc.c entry.c env.c
CRON_OBJ = crond.o database.o user.o entry.o \
misc.o job.o do_command.o env.o
CRONTAB_OBJ = crontab.o misc.o entry.o env.o
all : crond crontab
lint :
lint $(LINTFLAGS) $(LINT_CROND) $(LIBS) \
|grep -v "constant argument to NOT" 2>&1
lint $(LINTFLAGS) $(LINT_CRONTAB) $(LIBS) \
|grep -v "constant argument to NOT" 2>&1
crond : $(CRON_OBJ)
$(CC) -o crond $(CRON_OBJ) $(LIBS)
crontab : $(CRONTAB_OBJ)
$(CC) -o crontab $(CRONTAB_OBJ) $(LIBS)
install : all
install -c -m 111 -o root -s crond $(DESTROOT)/etc/
install -c -m 4111 -o root -s crontab $(DESTROOT)/bin/
install -c crontab.1 $(DESTROOT)/man/man1/crontab.1
install -c crond.8 $(DESTROOT)/man/man8/crond.8
install -c crontab.5 $(DESTROOT)/man/man5/crontab.5
clean :; rm -f *.o crond crontab a.out core tags *~ #*
kit : $(SHAR_SOURCE)
makekit -m -s50k $(SHAR_SOURCE)
$(CRON_OBJ) : cron.h config.h Makefile
$(CRONTAB_OBJ) : cron.h config.h Makefile