Date: Sat, 3 Feb 2001 17:49:38 +0100 From: Gerhard Sittig <Gerhard.Sittig@gmx.net> To: FreeBSD-gnats-submit@freebsd.org Subject: bin/24828: [PATCH] ntpd compilation and additional refclocks Message-ID: <20010203174937.N253@speedy.gsinet>
next in thread | raw e-mail | index | archive | help
>Number: 24828 >Category: bin >Synopsis: [PATCH] ntpd compilation and additional refclocks >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Feb 03 09:10:00 PST 2001 >Closed-Date: >Last-Modified: >Originator: Gerhard Sittig >Release: FreeBSD 4.2-STABLE i386 >Organization: System Defenestrators Inc. >Environment: ntp using refclock #35 ("Conrad parallel port radio clock") as a source of information >Description: ntpd lives in src/contrib/ntp and is shadowed(id? term?) in src/usr.sbin/ntp, while the latter tree comes with a preset config.h file and its own Makefiles. The config.h file has almost no drivers activated and the Makefile tries to enumerate the sourcefiles itself which live in the contrib tree. The cut down driver list is done by will. But in my try to extend the list of drivers I ended up with build errors. This is where I stumbled across the second aspect: The src/usr.sbin/ntp/ntpd/Makefile tries to duplicate the contrib filelist and maybe should do some 'ls' in this directory instead of enumerating all the files itself. Since I just wanted to get the parport device to run I didn't check for the other drivers. >How-To-Repeat: Use some "server 127.127.35.0" line in /etc/ntp.conf and have your ntpd complain about failed initialization due to unsupported refclock devices. refclock_newpeer: clock type 35 invalid configuration of 127.127.35.0 failed Apply this patch and run "make all" in src/usr.sbin/ntp and see ld(1) barf. The problem is that there's no refclock_pcf.o object file since the source file is missing in SRCS. Index: config.h =================================================================== RCS file: /CVSREPO/fbsd/src/usr.sbin/ntp/config.h,v retrieving revision 1.4 diff -u -r1.4 config.h --- config.h 2000/03/12 13:25:14 1.4 +++ config.h 2001/02/03 17:03:44 @@ -173,7 +173,7 @@ #define CLOCK_PARSE 1 /* Conrad parallel port radio clock */ -/* #undef CLOCK_PCF */ +#define CLOCK_PCF 1 /* PCL 720 clock support */ /* #undef CLOCK_PPS720 */ This will result in the following error message: [ ... lengthy link command snipped ... ] refclock_conf.o(.data+0xa8): undefined reference to `refclock_pcf' *** Error code 1 A more verbose description can be found in message <20010203140459.L253@speedy.gsinet> I sent earlier today to freebsd-questions. >Fix: For the situation I found myself in the following patch resolved the problem. But as sketched above it might be useful to derive the SRCS list from an ls(1) run in the contrib dir. Index: ntpd/Makefile =================================================================== RCS file: /CVSREPO/fbsd/src/usr.sbin/ntp/ntpd/Makefile,v retrieving revision 1.3 diff -u -r1.3 Makefile --- ntpd/Makefile 2000/01/01 23:57:59 1.3 +++ ntpd/Makefile 2001/02/03 17:03:44 @@ -19,7 +19,8 @@ refclock_hpgps.c refclock_irig.c refclock_jupiter.c \ refclock_leitch.c refclock_local.c refclock_msfees.c \ refclock_mx4200.c refclock_nmea.c refclock_oncore.c \ - refclock_palisade.c refclock_parse.c refclock_pst.c \ + refclock_palisade.c refclock_parse.c \ + refclock_pcf.c refclock_pst.c \ refclock_ptbacts.c refclock_shm.c refclock_tpro.c \ refclock_trak.c refclock_true.c refclock_usno.c \ refclock_wwvb.c version.c virtually yours 82D1 9B9C 01DC 4FB4 D7B4 61BE 3F49 4F77 72DE DA76 Gerhard Sittig true | mail -s "get gpg key" Gerhard.Sittig@gmx.net -- If you don't understand or are scared by any of the above ask your parents or an adult to help you. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010203174937.N253>