#
# Makefile.tmpl,v 3.1 1993/07/06 01:11:10 jbj Exp
#
PROGRAM=	xntpd
#
# xntpd - NTP daemon
#
COMPILER= gcc -DUSE_PROTOTYPES # -Wall
COPTS= -O2 # -finline-functions -fomit-frame-pointer
BINDIR=	/usr/bin
INSTALL= install
DEFS=       -DSYS_LINUX -DHAVE_TERMIOS
DEFS_OPT=-DDEBUG
DEFS_LOCAL= $(DEFS_OPT)  -DREFCLOCK -DBIGTIMESTEP #TEST -DPPSPPS -DKERNEL_PLL
CLOCKDEFS=  -DLOCAL_CLOCK #TEST -DAS2201PPS -DCHU -DGOES -DIRIG -DMX4200PPS -DOMEGA -DPST -DPSTCLK -DTPRO -DWWVBCLK -DMSFEESPPS -DLEITCH -DPARSE -DPARSEPPS -DCLOCK_MEINBERG -DCLOCK_RAWDCF -DCLOCK_SCHMID -DCLOCK_DCF7000 -DCLOCK_TRIMSV6
DAEMONLIBS=
RESLIB=
ADJLIB=
COMPAT=
#
INCL=	    -I../include -I/usr/include/bsd
CFLAGS=		$(COPTS) $(DEFS) $(DEFS_LOCAL) $(INCL)
CC=		$(COMPILER)
LIB=		../lib/libntp.a ../parse/libparse.a
LINTLIB=	../lib/llib-llibntp.ln
MAKE=		make
TOP=../
#
SOURCE=	ntp_config.c ntp_control.c ntp_io.c ntp_leap.c \
	ntp_loopfilter.c ntp_monitor.c ntp_peer.c ntp_proto.c \
	ntp_refclock.c ntp_request.c ntp_restrict.c ntp_timer.c \
	ntp_unixclock.c ntp_util.c ntpd.c refclock_chu.c \
	refclock_conf.c refclock_local.c refclock_pst.c \
	refclock_wwvb.c refclock_goes.c refclock_mx4200.c \
	refclock_parse.c refclock_as2201.c refclock_omega.c \
	refclock_tpro.c refclock_leitch.c refclock_irig.c \
	refclock_msfees.c refclock_gpstm.c refclock_trak.c \
	ntp_intres.c ntp_filegen.c

OBJS=	ntp_config.o ntp_control.o ntp_io.o ntp_leap.o \
	ntp_loopfilter.o ntp_monitor.o ntp_peer.o ntp_proto.o \
	ntp_refclock.o ntp_request.o ntp_restrict.o ntp_timer.o \
	ntp_unixclock.o ntp_util.o ntpd.o refclock_chu.o \
	refclock_conf.o refclock_local.o refclock_pst.o \
	refclock_wwvb.o refclock_goes.o refclock_mx4200.o \
	refclock_parse.o refclock_as2201.o refclock_omega.o \
	refclock_tpro.o refclock_leitch.o refclock_irig.o \
	refclock_msfees.o refclock_gpstm.o refclock_trak.o \
	ntp_intres.o ntp_filegen.o

all:	$(PROGRAM)

$(PROGRAM): $(OBJS) $(LIB) version.o 
	-rm -f $(PROGRAM)
	$(CC) $(COPTS) -o $@ $(OBJS) version.o $(LIB) $(DAEMONLIBS) \
		$(RESLIB) $(ADJLIB) $(COMPAT)

install:	$(BINDIR)/$(PROGRAM)

$(BINDIR)/$(PROGRAM): $(PROGRAM)
	$(INSTALL) -c -m 0755 $(PROGRAM) $(BINDIR)

tags:
	ctags *.c *.h

depend:
	mkdep $(CFLAGS) $(SOURCE)

clean:
	-@rm -f $(PROGRAM) *.o *.out tags oxntpd make.log Makefile.bak lint.errs
	-@rm -f .depend *~ .version

distclean:	clean
	-@rm -f *.orig *.rej .version Makefile

lint:	$(LINTLIB)
	lint -x -u $(DEFS) $(INCL) $(LINTLIB) $(SOURCE) >lint.errs

../lib/llib-llibntp.ln:
	cd ../lib && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)" lintlib

../lib/libntp.a:
	cd ../lib && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)"

../parse/libparse.a:
	cd ../parse && $(MAKE) $(MFLAGS) MFLAGS="$(MFLAGS)"

#
# we want to build the current version string here
#
version.o: ../VERSION
	../scripts/mkversion $(PROGRAM)
	$(CC) $(COPTS) $(INCL) -c version.c

../VERSION:
	-@rm -f .version
#
# These guys require knowledge of our clock configuration
#
refclock_chu.o:		refclock_chu.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_conf.o:	refclock_conf.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_local.o:	refclock_local.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL)  $(CLOCKDEFS) $(INCL) -c $*.c

refclock_pst.o:		refclock_pst.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_goes.o:	refclock_goes.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_wwvb.o:	refclock_wwvb.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_parse.o:	refclock_parse.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_mx4200.o:	refclock_mx4200.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_as2201.o:	refclock_as2201.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_omega.o:	refclock_omega.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_tpro.o:	refclock_tpro.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_leitch.o:	refclock_leitch.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_irig.o:	refclock_irig.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_msfees.o:	refclock_msfees.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_trak.o:	refclock_trak.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c

refclock_gpstm.o:	refclock_gpstm.c
	$(CC) $(COPTS) $(DEFS) $(DEFS_LOCAL) $(CLOCKDEFS) $(INCL) -c $*.c
