diff options
author | wollman <wollman@FreeBSD.org> | 1993-12-21 18:36:48 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 1993-12-21 18:36:48 +0000 |
commit | 8e51e9f1429efc498f923bce8b25b20f47d7c075 (patch) | |
tree | 9db10264d45dc397a38276190303093a450d769e /usr.sbin/xntpd/Makefile | |
download | FreeBSD-src-8e51e9f1429efc498f923bce8b25b20f47d7c075.zip FreeBSD-src-8e51e9f1429efc498f923bce8b25b20f47d7c075.tar.gz |
xntpd 3.3b from UDel
Diffstat (limited to 'usr.sbin/xntpd/Makefile')
-rw-r--r-- | usr.sbin/xntpd/Makefile | 359 |
1 files changed, 359 insertions, 0 deletions
diff --git a/usr.sbin/xntpd/Makefile b/usr.sbin/xntpd/Makefile new file mode 100644 index 0000000..30e59bb --- /dev/null +++ b/usr.sbin/xntpd/Makefile @@ -0,0 +1,359 @@ +# WARNING: +# CONTENTS UNDER PRESSURE. +# HIGHLY FLAMMABLE. +# RISK OF SHOCK. +# DO NOT ATTEMPT TO OPEN COVER. +# NO USER SERVICEABLE PARTS INSIDE. +# REFER SERVICING TO QUALIFIED PERSONNEL. +# +# The vendor hits you... +# You try to hit the vendor... +# You die. +# +# Unfortunately the above is no fun... +# +# During testing/porting we have found a long list +# of "make" and "sh" and "awk" features in different implementations. +# Some goodies (make good horror stories for your kids 8-(): +# gmake 3.62 +# non standard target construction +# +# pmake (e. g. NetBSD on MAC, possible other BNR2+pmake systems) +# skips '' (empty string positional) args to sh +# (this leads to following stupid constructions +# sh -c "./scripts/makeconfig.sh '$(OS)' '$(COMP)'") +# +# Following Makefile construction fails for no +# apparent reason (at least to me) +# doit: +# $(MAKE) MAKE=\"$(MAKE)\" all +# +# all: +# @echo all done. +# +# for the "make MAKE=make" call not for "make" or +# "make -e MAKE=make". Use the last form if you suffer +# from that kind of make problems. (Easily detected +# by failure to build with the message: +# "don't know how to make make". +# +# sh (Ultrix 4.2 MIPS) +# shell broken (reversed pipe construction "false | true" +# returns false - major bummer) +# +# awk (EP/IX 2.?) +# unable to do regexp matches +# (aka awk '/..*/ { print; }' fails on match) +# +# Usually the vendor should fix these bugs in vital utilities. +# We try to circumvent these bugs in a hopefully portable way. +# If you can reproduce these bugs on your system please bug your +# vendor to fix them. We are not trying anything fancy in here and +# we are shocked that even the most common tools fail so miserably. +# By the time you get this code the above utilities may already +# have been fixed. Hopefully one day we do not have to cope with +# this kind of broken utilities. +# +# Sorry about the situation, +# Frank Kardel +# +SHELL=/bin/sh +CONF = Config +CONFL = $(CONF).local +CONFLD= $(CONFL).dist +TARGETS = xntpd/xntpd xntpdc/xntpdc ntpq/ntpq ntpdate/ntpdate \ + ntptrace/ntptrace xntpres/xntpres authstuff/authspeed util/tickadj +OPTTARG = adjtime/adjtimed util/ntptime util/precision +REFCONF= +COMPRESSOR=compress +# Base distribution name (will be extended by <VERSION>.tar.<comperssorsuffix>) +DISTNAME=xntp- +MAKE= make + +all: version $(TARGETS) kernel_modules + +$(TARGETS): VERSION $(CONF) + +version: + @echo '### Building XNTP:' "`egrep '^.*=.*$$' VERSION | tr '\012' ';'`" + +makeconfig: + sh -c "./scripts/makeconfig.sh '$(OS)' '$(COMP)'" + +$(CONFL).NO.clock: + @echo '###' creating $(CONFL) for absolutely '*NO*' clocks '*AT ALL*' + rm -f $(CONFL)-t $(CONFL) + cat < $(CONFLD) > $(CONFL)-t && mv $(CONFL)-t $(CONFL) + +$(CONFL).green: + @echo '###' creating $(CONFL) for greenhorns '(local refclock only)' + rm -f $(CONFL)-t $(CONFL) + sed 's/#GREEN//' < $(CONFLD) > $(CONFL)-t && mv $(CONFL)-t $(CONFL) + +$(CONFL): + @echo '' + @echo '### creating a $(CONFL) file as none existed.' + @echo '### Use "make refconf" if you have a radio clock' + @echo '' + @$(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" $(CONFL).green + +$(CONF): $(CONFL) + @echo + @echo '###' creating new configuration + @sh -c "./scripts/makeconfig.sh '$(OS)' '$(COMP)'" + +refconf: $(CONF) + -@sh refclocks/rconfig '$(REFCONF)' + @sh -c "./scripts/makeconfig.sh '$(OS)' '$(COMP)'" + +kernel_modules: kernel/Makefile + @cd kernel && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +xntpd/xntpd: lib/libntp.a parse/libparse.a xntpd/Makefile FRC + @echo + @echo '###' creating NTP daemon + @cd xntpd && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +xntpdc/xntpdc: lib/libntp.a xntpdc/Makefile FRC + @echo + @echo '###' creating XNTPDC utility + @cd xntpdc && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +ntpq/ntpq: lib/libntp.a ntpq/Makefile FRC + @echo + @echo '###' creating NTPQ utility + @cd ntpq && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +ntptrace/ntptrace: lib/libntp.a ntptrace/Makefile FRC + @echo + @echo '###' creating NTPTRACE utility + @cd ntptrace && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +ntpdate/ntpdate: lib/libntp.a ntpdate/Makefile FRC + @echo + @echo '###' creating NTPDATE utility + @cd ntpdate && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +authstuff/authspeed: lib/libntp.a authstuff/Makefile FRC + @echo + @echo '###' creating AUTH utilities + @cd authstuff && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +xntpres/xntpres: lib/libntp.a xntpres/Makefile FRC + @echo + @echo '###' creating XNTPRES utility + @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +util/tickadj: util/Makefile FRC + @echo + @echo '###' creating TICKADJ utility + @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +lib/libntp.a: lib/*.c lib/Makefile adjtime/Makefile + @echo + @echo '###' creating NTP library + @cd lib && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +parse/libparse.a: parse/*.c parse/Makefile parse/util/Makefile lib/libntp.a + @echo + @echo '### creating PARSE subsystem (if configured)' + @cd parse && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" + +FRC: + +savebin: + @test -d bin || mkdir bin + @echo + @echo '### saving $(TARGETS) $(OPTTARG) in bin' + -@for f in $(TARGETS) $(OPTTARG); \ + do test -f $$f && mv $$f bin/. && echo "### saved $$f in bin/"; \ + done; \ + true + +neatneat: + @echo '###' cleaning derived config files + -@rm -f $(CONF).sed $(CONF) + +neat: + @echo '###' cleaning top level left overs + -@rm -f eddep makedep Makefile.bak make.log make.out + +distclean: neatneat clean + @echo '###' cleaning configuration dependent Makefiles + -@find . -name Makefile -print | \ + while read X; do \ + if [ -f "$$X.tmpl" ]; then \ + rm -f "$$X"; \ + else \ + :; \ + fi \ + done + @echo '###' cleaning old scratch files + -@find . \( -name '*.rej' -o -name '*.orig' -o -name '*~' -o \ + -name '.version' -o -name '#*' -o -name '.#*' -o \ + -name core -o -name version.c \) -print | xargs rm -f + @echo '###' cleaning saved binaries + -@rm -fr bin + +clean: neat + @echo '###' cleaning adjtime + @cd adjtime && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" -f Makefile.tmpl $@ + @echo '###' cleaning authstuff + @cd authstuff && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning clockstuff + @cd clockstuff && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning lib + @cd lib && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning ntpdate + @cd ntpdate && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning ntpq + @cd ntpq && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning ntptrace + @cd ntptrace && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning util + @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning xntpd + @cd xntpd && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning xntpdc + @cd xntpdc && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning xntpres + @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + @echo '###' cleaning parse + @cd parse && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" $@ + +install: all + @echo installing from xntpd + @cd xntpd && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from xntpdc + @cd xntpdc && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from ntpq + @cd ntpq && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from ntptrace + @cd ntptrace && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from ntpdate + @cd ntpdate && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from xntpres + @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from util + @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + @echo installing from parse + @cd parse && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" install + +dist: + @echo '### building distribution ...' + @$(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" MAKE="$(MAKE)" distclean + @DISTVERSION="`sed -e 's/^[ ]*[Vv][Ee][Rr][Ss][Ii][Oo][Nn][ ]*=\(.*\)$$/\1/' VERSION | \ + sed -e 's/[^0-9a-zA-Z\.]/_/g; s/__*/_/g; s/_*$$//'`" && \ + echo "### creating distribution file $(DISTNAME)$${DISTVERSION}.tar" && \ + rm -f $(DISTNAME)$${DISTVERSION}.tar $(DISTNAME)$${DISTVERSION}.tar.* && \ + tar cfv $(DISTNAME)$${DISTVERSION}.tar `ls | egrep -v "^$(CONFL)$$|^$(DISTNAME)$${DISTVERSION}.tar$$"` && \ + $(COMPRESSOR) -v $(DISTNAME)$${DISTVERSION}.tar + +$(CONF).sed: $(CONF) Makefile + @sed -n -e 's:^\([^ ]*\)=[ ]*\(.*\):s~^\1=.*~&~:p' < $(CONF) > $@ + +depend: + find . -name Makefile.tmpl -print > eddep + echo >> makedep + sed -e 's:^\./::' -e '/^Makefile/d' \ + -e h \ + -e 's/^\(.*\)\.tmpl$$/\1: \1.tmpl $${CONF}.sed/' -e p -e g \ + -e 's/.*/ @echo/' -e p -e g \ + -e 's:^\(.*\)/Makefile\.tmpl$$: @echo '"'###'"' updating Makefile in \1:' -e p -e g \ + -e 's/.*/ @sed -f $${CONF}.sed < $$@.tmpl > $$@/' -e p -e g \ + -e 's:^\(.*\)/Makefile\.tmpl$$: @echo '"'###'"' cleaning in \1:' -e p -e g \ + -e 's:^\(.*\)/Makefile\.tmpl$$: @cd \1 \&\& $$(MAKE) $$(MFLAGS) MFLAGS="$$(MFLAGS)" -f Makefile.tmpl MAKE="$$(MAKE)" clean:p' \ + < eddep >> makedep + echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep + echo '$$r makedep' >>eddep + echo 'w' >>eddep + cp Makefile Makefile.bak + /bin/ed - Makefile < eddep + rm eddep makedep + +# DO NOT DELETE THIS LINE -- It is used by 'make depend' to update this file + +adjtime/Makefile: adjtime/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in adjtime + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in adjtime + @cd adjtime && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +authstuff/Makefile: authstuff/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in authstuff + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in authstuff + @cd authstuff && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +clockstuff/Makefile: clockstuff/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in clockstuff + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in clockstuff + @cd clockstuff && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +kernel/Makefile: kernel/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in kernel + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in kernel + @cd kernel && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +lib/Makefile: lib/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in lib + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in lib + @cd lib && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +ntpdate/Makefile: ntpdate/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in ntpdate + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in ntpdate + @cd ntpdate && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +ntpq/Makefile: ntpq/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in ntpq + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in ntpq + @cd ntpq && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +ntptrace/Makefile: ntptrace/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in ntptrace + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in ntptrace + @cd ntptrace && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +util/Makefile: util/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in util + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in util + @cd util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +xntpd/Makefile: xntpd/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in xntpd + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in xntpd + @cd xntpd && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +xntpdc/Makefile: xntpdc/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in xntpdc + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in xntpdc + @cd xntpdc && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +xntpres/Makefile: xntpres/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in xntpres + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in xntpres + @cd xntpres && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +parse/util/Makefile: parse/util/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in parse/util + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in parse/util + @cd parse/util && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean +parse/Makefile: parse/Makefile.tmpl ${CONF}.sed + @echo + @echo '###' updating Makefile in parse + @sed -f ${CONF}.sed < $@.tmpl > $@ + @echo '###' cleaning in parse + @cd parse && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" -f Makefile.tmpl MAKE="$(MAKE)" clean |