clockspeed uses a hardware tick counter to compensate for a persistently
fast or slow system clock. Given a few time measurements from a reliable
source, it computes and then eliminates the clock skew.
sntpclock checks another system's NTP clock, and prints the results in a
format suitable for input to clockspeed. sntpclock is the simplest
available NTP/SNTP client.
taiclock and taiclockd form an even simpler alternative to SNTP. They
are suitable for precise time synchronization over a local area network,
without the hassles and potential security problems of an NTP server.
This version of clockspeed can use the Pentium RDTSC tick counter or the
Solaris gethrtime() nanosecond counter.
A port to non-i386 platforms was done using the clock_gettime(2)
function. Since this is somewhat experimental, there might be some
tiny precision differences from the i386 platform versions. You
have been warned!
@postunexec echo "If you are permanently removing this port, you should do a ``rm -Rf ${PKG_PREFIX}/etc/clockspeed`` to remove any configuration files left." | fmt
===> The following configuration options are available for clockspeed-0.62_7:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
Please make sure that you read /usr/local/share/doc/clockspeed/INSTALL.
It contains important information about testing and configuring
clockspeed, and finally installing it in your system.
Clockspeed uses the libtai library, check /usr/ports/devel/libtai
for more details. TAI time measure is off 22 seconds from UTC time
measure. Therefore, your system time will show a 22 secs difference
from your time source after you've installed this port.
To fix this, you could follow this simple recipe created with
PR ports/27617.
1) killall clockspeed (you can't have it running)
2) sntpclock IP.OF.NTP.SERVER | clockadd
3) enable/start clockspeed :
% cp /usr/local/etc/rc.d/clockspeed.sh.sample \
/usr/local/etc/rc.d/clockspeed.sh
# enable clockspeed to automagically start next
# time you reboot. do this after testing everything
% /usr/local/etc/rc.d/clockspeed.sh start
# start clockspeed now
4) sntpclock IP.OF.NTP.SERVER > /usr/local/etc/clockspeed/adjust
5) cd /usr/src/share/zoneinfo
6) make -DLEAPSECONDS clean all install ; make clean
Step 5 and 6 build support in your system for leapseconds handling.
Take a note about this since you might forget later to disable it
if you remove this port. To disable it, simply re-do step 6 without
-DLEAPSECONDS.
Step 6 should not break anything but you can disable it anytime
as per last paragraph if you think something unusual has happened
to your system.
7) /stand/sysinstall -> configure -> time zone (choose the correct
time zone for your system)
8) sntpclock IP.OF.NTP.SERVER | clockview
Check how close is your clock before and after now. Should be
within milliseconds.
Do not forget to add a cron(8) job with step 4 to periodically
adjust clockspeed's drift rate. Once a week should be more than
adequate.
A port to non-i386 platforms was done using the clock_gettime(2)
function. Since this is somewhat experimental, there might be some
tiny precision differences from the i386 platform versions. You
have been warned!
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
Update leapsecs.dat to be the most current from
http://cr.yp.to/libtai.html. Do not use the one
installed by devel/libtai.
Submitted by: clemens fischer
- Move stuffs that are after post.mk to appropriate places
- Use DOCSDIR
PR: ports/109335
Submitted by: rafan
Approved by: maintainer timeout (1 month)
o Remove ONLY_FOR_ARCHS limitation by adding timing support other
than RDTSC registers from Pentium. After a reminder by Garrett
Wollman <wollman@FreeBSD.org> [1] that FreeBSD has a gethrtime()
similar function, added experimental support for FreeBSD
clock_gettime(2) which should work in all FreeBSD supported ARCHes
o Add notes in both DESCR and PKGMESSAGE that there might be precision
differences since this is experimental code
Reviewed by: portmgr (silence/no objections)
Submitted by: wollman [1]
Mark as ONLY_FOR_ARCHS i386 since it requires either a pentium
hardware tick counter or an equivalent Solaris gethrtime() syscall.
This should be investigated further. FreeBSD might have an equivalent
syscall.
Submitted by: bento
Half of these ones missed yesterday while converting to USE_REINPLACE.
The other half needs perl to build.
Noticed on bento and others (full mailbox :-)
Use ${ECHO_CMD} instead of ${ECHO} where you mean the echo command; the ECHO
macro is set to "echo" by default, but it is set to "true" if make(1) is
invoked with the -s option while ECHO_CMD is always set to the echo command.
1) Install leapsecs.dat (leapseconds support) 2) Add PKGMESSAGE with
additional FreeBSD specific installation information 3) Install sample
startup script 4) Bump PORTREVISION due to (1)
Update to sync with bsd.port.mk rev 1.361 - use PORTDOCS that is now in
bsd.port.mk, for easy removal of documentation. I left alone one port -
japanese/elisa8x8 (or something like that), because it appeared to have some
rather weird way of doing PORTDOCS substitution.
Add clockspeed - a program which uses a hardware tick counter to compensate
for a persistently fast or slow system clock. It also could be used to
synchronize time across LAN or WAN.