12b15cb3dSCy Schubertdnl NTP top-level configure.ac -*- Autoconf -*- 22b15cb3dSCy Schubertdnl 32b15cb3dSCy Schubertm4_include([sntp/m4/version.m4]) 42d4e511cSCy SchubertAC_PREREQ([2.68]) 52b15cb3dSCy SchubertAC_INIT( 62b15cb3dSCy Schubert [ntp], 72b15cb3dSCy Schubert [VERSION_NUMBER], 8a466cc55SCy Schubert [https://bugs.ntp.org/], 92b15cb3dSCy Schubert [], 10a466cc55SCy Schubert [https://www.ntp.org/]dnl 112b15cb3dSCy Schubert) 122b15cb3dSCy SchubertAC_CONFIG_MACRO_DIR([sntp/m4]) 132b15cb3dSCy SchubertAC_CONFIG_AUX_DIR([sntp/libevent/build-aux]) 149034852cSGleb SmirnoffAC_LANG([C]) 152b15cb3dSCy Schubert 162b15cb3dSCy SchubertAC_PRESERVE_HELP_ORDER 172b15cb3dSCy Schubert 182b15cb3dSCy Schubert# Bump ntp_configure_cache_version for each change to configure.ac or 192b15cb3dSCy Schubert# .m4 files which invalidates cached values from previous configure 202b15cb3dSCy Schubert# runs. 212b15cb3dSCy Schubert# 222b15cb3dSCy Schubert# If the change affects cache variables used only by the main NTP 232b15cb3dSCy Schubert# configure.ac, then only its version number should be bumped, while 242b15cb3dSCy Schubert# the subdir configure.ac version numbers should be unchanged. The 252b15cb3dSCy Schubert# same is true for a test/variable that is used only by one subdir 262b15cb3dSCy Schubert# being changed incompatibly; only that subdir's cache version needs 272b15cb3dSCy Schubert# bumping. 282b15cb3dSCy Schubert# 292b15cb3dSCy Schubert# If a change affects variables shared by all NTP configure scripts, 302b15cb3dSCy Schubert# please bump the version numbers of each. If you are not sure, the 312b15cb3dSCy Schubert# safe choice is to bump all on any cache-invalidating change. 322b15cb3dSCy Schubert# 332b15cb3dSCy Schubert# In order to avoid the risk of version stamp collision between -stable 342b15cb3dSCy Schubert# and -dev branches, do not simply increment the version, instead use 352b15cb3dSCy Schubert# the date YYYYMMDD optionally with -HHMM if there is more than one 362b15cb3dSCy Schubert# bump in a day. 372b15cb3dSCy Schubert 38*f5f40dd6SCy Schubertntp_configure_cache_version=20240218 392b15cb3dSCy Schubert 402b15cb3dSCy Schubert# When the cache version of config.cache and configure do not 412b15cb3dSCy Schubert# match, NTP_CACHEVERSION will flush the cache. 422b15cb3dSCy Schubert 432b15cb3dSCy SchubertNTP_CACHEVERSION([main], [$ntp_configure_cache_version]) 442b15cb3dSCy Schubert 45a466cc55SCy SchubertAM_INIT_AUTOMAKE([1.15 foreign subdir-objects -Wall -Wno-gnu]) 462b15cb3dSCy Schubert 472d4e511cSCy SchubertAM_SILENT_RULES([yes]) 482d4e511cSCy Schubert 492b15cb3dSCy SchubertAC_CANONICAL_BUILD 50ea906c41SOllivier RobertAC_CANONICAL_HOST 51ea906c41SOllivier Robertdnl the 'build' machine is where we run configure and compile 52ea906c41SOllivier Robertdnl the 'host' machine is where the resulting stuff runs. 532b15cb3dSCy SchubertAC_DEFINE_UNQUOTED([STR_SYSTEM], ["$host"], 542b15cb3dSCy Schubert [canonical system (cpu-vendor-os) of where we should run]) 552b15cb3dSCy SchubertAC_CONFIG_HEADERS([config.h]) 56ea906c41SOllivier Robertdnl AC_ARG_PROGRAM 57ea906c41SOllivier Robert 58*f5f40dd6SCy SchubertAC_MSG_CHECKING([if we should enable build framework help]) 59*f5f40dd6SCy SchubertAC_ARG_ENABLE( 60*f5f40dd6SCy Schubert [build-framework-help], 61*f5f40dd6SCy Schubert [AS_HELP_STRING( 62*f5f40dd6SCy Schubert [--enable-build-framework-help], 63*f5f40dd6SCy Schubert [+ enable build framework help] 64*f5f40dd6SCy Schubert )], 65*f5f40dd6SCy Schubert [ntp_ok=$enableval], 66*f5f40dd6SCy Schubert [ntp_ok=yes] 67*f5f40dd6SCy Schubert) 68*f5f40dd6SCy Schubertcase "$ntp_ok" in 69*f5f40dd6SCy Schubert yes) 70*f5f40dd6SCy Schubert ntp_cv_build_framework_help=yes ;; 71*f5f40dd6SCy Schubert *) ntp_cv_build_framework_help=no ;; 72*f5f40dd6SCy Schubertesac 73*f5f40dd6SCy SchubertAC_MSG_RESULT([$ntp_ok]) 74*f5f40dd6SCy Schubert 752b15cb3dSCy Schubertntp_atom_ok=${ntp_atom_ok=no} 762b15cb3dSCy Schubertntp_oncore_ok=${ntp_oncore_ok=no} 772b15cb3dSCy Schubertntp_parse_ok=${ntp_parse_ok=no} 782b15cb3dSCy Schubertntp_ripe_ncc_ok=${ntp_parse_ok=no} 792b15cb3dSCy Schubertntp_jupiter_ok=${ntp_jupiter_ok=no} 80ea906c41SOllivier Robert 812b15cb3dSCy SchubertNTP_PROG_CC 82f0574f5cSXin LINTP_COMPILER 83f0574f5cSXin LI 842b15cb3dSCy SchubertAC_PROG_YACC 85f0574f5cSXin LIdnl AC_PROG_CC_C_O # called by NTP_COMPILER 86a25439b6SCy SchubertAX_C99_STRUCT_INIT 87ea906c41SOllivier Robert 88f0574f5cSXin LINTP_HARDEN([sntp]) 89f0574f5cSXin LI 90*f5f40dd6SCy SchubertNTP_VPATH_HACK dnl used by ntpd/Makefile.am libparse/Makefile.am 912b15cb3dSCy Schubert 922b15cb3dSCy SchubertNTP_LOCINFO([sntp]) dnl takes over from NTP_BINDIR, in NTP_LIBNTP 932b15cb3dSCy Schubert 94a466cc55SCy SchubertAM_PROG_AR 95ea906c41SOllivier Robert 96eb6d21b4SOllivier Robert# So far, the only shared library we might use is libopts. 97eb6d21b4SOllivier Robert# It's a small library - we might as well use a static version of it. 98*f5f40dd6SCy SchubertLT_INIT([disable-shared]) 992b15cb3dSCy SchubertAC_SUBST([LIBTOOL_DEPS]) 100eb6d21b4SOllivier Robert 1012b15cb3dSCy Schubert# NTP has (so far) been relying on leading-edge autogen, which 1022b15cb3dSCy Schubert# means we need the appropriate corresponding libopts as well. 103ea906c41SOllivier Robert# Therefore, by default: 1042b15cb3dSCy Schubert# - use the version of libopts we ship with 105ea906c41SOllivier Robert# - do not install it 106*f5f40dd6SCy Schubert# - build a static copy (disable-shared - done earlier) 107ea906c41SOllivier Robertcase "${enable_local_libopts+set}" in 108ea906c41SOllivier Robert set) ;; 109ea906c41SOllivier Robert *) enable_local_libopts=yes ;; 110ea906c41SOllivier Robertesac 111ea906c41SOllivier Robertcase "${enable_libopts_install+set}" in 112ea906c41SOllivier Robert set) ;; 113ea906c41SOllivier Robert *) enable_libopts_install=no ;; 114ea906c41SOllivier Robertesac 1152b15cb3dSCy Schubertenable_nls=no 1162b15cb3dSCy SchubertLIBOPTS_CHECK_NOBUILD([sntp/libopts]) 117ea906c41SOllivier Robert 1182b15cb3dSCy SchubertNTP_LIBEVENT_CHECK_NOBUILD([2], [sntp/libevent]) 119ea906c41SOllivier Robert 1202b15cb3dSCy SchubertNTP_LIBNTP 121ea906c41SOllivier Robert 122ea906c41SOllivier Robertdnl we need to check for cross compile tools for vxWorks here 123ea906c41SOllivier RobertAC_PROG_AWK 1242b15cb3dSCy SchubertAS_UNSET([ac_cv_prog_AWK]) 1252b15cb3dSCy SchubertAC_SUBST([AWK]) dnl scripts/ntpver.in 126ea906c41SOllivier RobertAC_PROG_MAKE_SET 127ea906c41SOllivier Robert 128ea906c41SOllivier RobertAC_PROG_LN_S 129ea906c41SOllivier Robert 1302b15cb3dSCy Schubert 1312b15cb3dSCy SchubertAC_PATH_PROG([PATH_PERL], [perl]) 1322b15cb3dSCy Schubertdnl Saving cached hardcoded paths rather than searching $PATH during a 1332b15cb3dSCy Schubertdnl cached configure run is an optimization not worth the the cost of 1342b15cb3dSCy Schubertdnl preventing newly-installed tools from being found. Short-circuit 1352b15cb3dSCy Schubertdnl the caching after the tests so preset overrides still work. 1362b15cb3dSCy SchubertAS_UNSET([ac_cv_path_PATH_PERL]) 1372b15cb3dSCy SchubertAC_PATH_PROG([PATH_TEST], [test]) 1382b15cb3dSCy SchubertAS_UNSET([ac_cv_path_PATH_TEST]) 1392b15cb3dSCy Schuberttest -z "$CONFIG_SHELL" && CONFIG_SHELL=/bin/sh 1402b15cb3dSCy SchubertAC_SUBST([CONFIG_SHELL]) dnl for scripts #!/path/to/sh 1412b15cb3dSCy Schubert 1422b15cb3dSCy SchubertAC_ARG_WITH( 1432b15cb3dSCy Schubert [net-snmp-config], 1442b15cb3dSCy Schubert [AS_HELP_STRING( 1452b15cb3dSCy Schubert [--with-net-snmp-config], 1462b15cb3dSCy Schubert [+ =net-snmp-config] 1472b15cb3dSCy Schubert )], 1482b15cb3dSCy Schubert [ans=$withval], 1492b15cb3dSCy Schubert [ans=yes] 1502b15cb3dSCy Schubert) 1512b15cb3dSCy Schubertcase "$ans" in 1522b15cb3dSCy Schubert no) 1532b15cb3dSCy Schubert ;; 1542b15cb3dSCy Schubert yes) 1552b15cb3dSCy Schubert ans=net-snmp-config 1562b15cb3dSCy Schubert ;; 1572b15cb3dSCy Schubert /*) 1582b15cb3dSCy Schubert ;; 1592b15cb3dSCy Schubert */*) 1602b15cb3dSCy Schubert AC_MSG_ERROR([--with-net-snmp-config takes either a name or an absolute path]) 1612b15cb3dSCy Schubert ;; 1622b15cb3dSCy Schubert *) 1632b15cb3dSCy Schubert ;; 1642b15cb3dSCy Schubertesac 1652b15cb3dSCy SchubertPROG_NET_SNMP_CONFIG=$ans 1662b15cb3dSCy Schubertcase "$PROG_NET_SNMP_CONFIG" in 1672b15cb3dSCy Schubert no) ;; 1682b15cb3dSCy Schubert /*) 1692b15cb3dSCy Schubert PATH_NET_SNMP_CONFIG=$PROG_NET_SNMP_CONFIG 1702b15cb3dSCy Schubert ;; 1712b15cb3dSCy Schubert *) 1722b15cb3dSCy Schubert AC_PATH_PROG([PATH_NET_SNMP_CONFIG], [$PROG_NET_SNMP_CONFIG]) 1732b15cb3dSCy Schubert AS_UNSET([ac_cv_path_PATH_NET_SNMP_CONFIG]) 1742b15cb3dSCy Schubert;; 1752b15cb3dSCy Schubertesac 176f0574f5cSXin LIAC_MSG_CHECKING([for net-snmp-config path]) 1772b15cb3dSCy SchubertAC_MSG_RESULT([$PATH_NET_SNMP_CONFIG]) 178ea906c41SOllivier Robert 179276da39aSCy Schubertcase "$PATH_NET_SNMP_CONFIG" in 180276da39aSCy Schubert /*) AC_CACHE_CHECK( 181276da39aSCy Schubert [for net-snmp version], 182276da39aSCy Schubert [ntp_cv_net_snmp_version], 183276da39aSCy Schubert [ntp_cv_net_snmp_version=`$PATH_NET_SNMP_CONFIG --version`] 184276da39aSCy Schubert ) 185276da39aSCy Schubert ;; 186276da39aSCy Schubertesac 187276da39aSCy Schubert 188ea906c41SOllivier Robertcase "$host" in 189ea906c41SOllivier Robert *-*-vxworks*) 190ea906c41SOllivier Robert ac_link="$ac_link $VX_KERNEL" 191ea906c41SOllivier Robert ;; 192ea906c41SOllivier Robertesac 193ea906c41SOllivier Robert 1942b15cb3dSCy Schubert# HMS: a check for -lnsl used to be here - now being done in NTP_LIBNTP 1952b15cb3dSCy SchubertAC_SEARCH_LIBS([openlog], [gen syslog]) 1962b15cb3dSCy Schubert# XXX library list will be in ac_cv_search_openlog 197ea906c41SOllivier Robert 1982b15cb3dSCy Schubert# LIBSECCOMP is off by default -- needs testing with all the features 1992b15cb3dSCy Schubert# Please send bug reports to loganaden@gmail.com 2002b15cb3dSCy SchubertAC_MSG_CHECKING([if we want to use libseccomp sandboxing (EXPERIMENTAL)]) 2012b15cb3dSCy SchubertAC_ARG_ENABLE( 2022b15cb3dSCy Schubert [libseccomp], 2032b15cb3dSCy Schubert [AS_HELP_STRING( 2042b15cb3dSCy Schubert [--enable-libseccomp], 2052b15cb3dSCy Schubert [EXPERIMENTAL: enable support for libseccomp sandboxing (default is no) ] 2062b15cb3dSCy Schubert )], 2072b15cb3dSCy Schubert [ntp_ok=$enableval], 2082b15cb3dSCy Schubert [ntp_ok=no] 2092b15cb3dSCy Schubert) 2102b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2112b15cb3dSCy Schubertcase "$ntp_ok" in 2122b15cb3dSCy Schubert yes) 2132b15cb3dSCy Schubert AC_SEARCH_LIBS( 2142b15cb3dSCy Schubert [seccomp_init], 2152b15cb3dSCy Schubert [seccomp], 2162b15cb3dSCy Schubert [AC_DEFINE([LIBSECCOMP], [1], 2172b15cb3dSCy Schubert [Define to any value to include libseccomp sandboxing.])] 2182b15cb3dSCy Schubert ) 2192b15cb3dSCy Schubert AC_TRY_RUN([ 2202b15cb3dSCy Schubert #include <stdio.h> 2212b15cb3dSCy Schubert #include <stdlib.h> 2222b15cb3dSCy Schubert #include <errno.h> 2232b15cb3dSCy Schubert #include <sys/prctl.h> 2242b15cb3dSCy Schubert #include <linux/seccomp.h> 2252b15cb3dSCy Schubert 2262b15cb3dSCy Schubert int main(void) 2272b15cb3dSCy Schubert { 2282b15cb3dSCy Schubert int ret; 2292b15cb3dSCy Schubert ret = prctl(PR_GET_SECCOMP, 0, 0, 0, 0); 2302b15cb3dSCy Schubert if (ret < 0) { 2312b15cb3dSCy Schubert switch (errno) { 2322b15cb3dSCy Schubert case ENOSYS: 2332b15cb3dSCy Schubert return 1; 2342b15cb3dSCy Schubert case EINVAL: 2352b15cb3dSCy Schubert return 1; 2362b15cb3dSCy Schubert default: 2372b15cb3dSCy Schubert return 1; 2382b15cb3dSCy Schubert } 2392b15cb3dSCy Schubert } 2402b15cb3dSCy Schubert ret = 2412b15cb3dSCy Schubert prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0); 2422b15cb3dSCy Schubert if (ret < 0) { 2432b15cb3dSCy Schubert switch (errno) { 2442b15cb3dSCy Schubert case EINVAL: 2452b15cb3dSCy Schubert return 1; 2462b15cb3dSCy Schubert case EFAULT: 2472b15cb3dSCy Schubert return 0; 2482b15cb3dSCy Schubert default: 2492b15cb3dSCy Schubert return 1; 2502b15cb3dSCy Schubert } 2512b15cb3dSCy Schubert } 2522b15cb3dSCy Schubertreturn 1; 2532b15cb3dSCy Schubert} 2542b15cb3dSCy Schubert] 2552b15cb3dSCy Schubert, AC_DEFINE([KERN_SECCOMP], 1, 2562b15cb3dSCy Schubert[Define to use libseccomp system call filtering.]) 2572b15cb3dSCy Schubert, [] 2582b15cb3dSCy Schubert) 259ea906c41SOllivier Robert ;; 260ea906c41SOllivier Robertesac 261ea906c41SOllivier Robert 2622b15cb3dSCy SchubertNTP_FACILITYNAMES 263ea906c41SOllivier Robert 264ea906c41SOllivier Robertdnl Digital UNIX V4.0 and Solaris 7 have POSIX.1c functions in -lrt 265ea906c41SOllivier Robertdnl Solaris 2.6 only has -lposix4; in Solaris 7, this is a symlink to -lrt, 266ea906c41SOllivier Robertdnl so only use one of them. Linux (glibc-2.1.2 and -2.2.2, at least) 267ea906c41SOllivier Robertdnl does Strange Things with extra processes using the Posix-compatibility 268ea906c41SOllivier Robertdnl real-time library, so we don't want to use it. 2692b15cb3dSCy Schubertdnl 2702b15cb3dSCy Schubertdnl 081118 Harlan got tired of looking for a way to get the sched*() 2712b15cb3dSCy Schubertdnl functions to link OK with either cc or gcc. 272ea906c41SOllivier Robert 273ea906c41SOllivier Robertcase "$host" in 274eb6d21b4SOllivier Robert *-*-*linux*) ;; 2752b15cb3dSCy Schubert *-*-osf4*) ;; 2762b15cb3dSCy Schubert *-*-osf5*) ;; 277ea906c41SOllivier Robert *) 2782b15cb3dSCy Schubert # HMS: Make sure we check for -lrt for clock_* before this... 2792b15cb3dSCy Schubert case "$ac_cv_search_clock_gettime" in 280*f5f40dd6SCy Schubert '') AC_MSG_FAILURE([Internal Error: Haven't looked for clock_gettime() yet!]) ;; 2812b15cb3dSCy Schubert esac 2822b15cb3dSCy Schubert AC_SEARCH_LIBS([sched_setscheduler], [rt posix4]) 283ea906c41SOllivier Robert ;; 284ea906c41SOllivier Robertesac 285ea906c41SOllivier Robert 286*f5f40dd6SCy SchubertAC_CHECK_HEADERS([bstring.h sys/procctl.h]) 2872b15cb3dSCy SchubertAC_CHECK_HEADER( 2882b15cb3dSCy Schubert [dns_sd.h], 2892b15cb3dSCy Schubert [AC_SEARCH_LIBS( 2902b15cb3dSCy Schubert [DNSServiceRegister], 2912b15cb3dSCy Schubert [dns_sd], 2922b15cb3dSCy Schubert [AC_DEFINE([HAVE_DNSREGISTRATION], [1], 2932b15cb3dSCy Schubert [Use Rendezvous/DNS-SD registration])] 2942b15cb3dSCy Schubert )] 2952b15cb3dSCy Schubert) 2962b15cb3dSCy SchubertAC_CHECK_HEADERS([fcntl.h fnmatch.h ieeefp.h inttypes.h kvm.h math.h]) 297ea906c41SOllivier Robert 2982b15cb3dSCy SchubertAC_CHECK_HEADERS([memory.h netdb.h poll.h]) 2994990d495SXin LIAC_CHECK_HEADERS([sgtty.h stdatomic.h]) 3004990d495SXin LIAC_HEADER_STDBOOL 3014990d495SXin LIAC_CHECK_HEADERS([stdlib.h string.h termio.h]) 3022b15cb3dSCy SchubertAC_CHECK_HEADERS([termios.h timepps.h timex.h unistd.h]) 303ea906c41SOllivier Robert 304ea906c41SOllivier Robertcase "$host" in 305ea906c41SOllivier Robert *-*-aix*) 3062b15cb3dSCy Schubert AC_CHECK_HEADERS([utmpx.h]) 307ea906c41SOllivier Robert case "$ac_cv_header_utmpx_h" in 3082b15cb3dSCy Schubert yes) 3092b15cb3dSCy Schubert ;; 3102b15cb3dSCy Schubert *) 3112b15cb3dSCy Schubert AC_CHECK_HEADERS([utmp.h]) 3122b15cb3dSCy Schubert ;; 313ea906c41SOllivier Robert esac 314ea906c41SOllivier Robert ;; 3152b15cb3dSCy Schubert *) 3162b15cb3dSCy Schubert AC_CHECK_HEADERS([utmp.h utmpx.h]) 3172b15cb3dSCy Schubert ;; 318ea906c41SOllivier Robertesac 3192b15cb3dSCy Schubert 3202b15cb3dSCy Schubert# 3212b15cb3dSCy Schubert# On Suns only (so far) getpass() truncates the typed password to 8 3222b15cb3dSCy Schubert# characters, but getpassphrase() allows up to 257. Most systems' 3232b15cb3dSCy Schubert# getpass() does not truncate, at least not so as to affect ntpq and 3242b15cb3dSCy Schubert# ntpdc password prompts. 3252b15cb3dSCy Schubert# 3262b15cb3dSCy Schubert# So check for getpassphrase(), but only on Sun operating systems. 3272b15cb3dSCy Schubert# 3282b15cb3dSCy Schubertcase "$host" in 3292b15cb3dSCy Schubert *-*-sunos*|*-*-solaris*) 3302b15cb3dSCy Schubert AC_CHECK_FUNCS([getpassphrase]) 3312b15cb3dSCy Schubertesac 3322b15cb3dSCy Schubert 3332b15cb3dSCy Schubert 3342b15cb3dSCy SchubertAC_CHECK_HEADERS([net/if6.h]) 3352b15cb3dSCy SchubertAC_CHECK_HEADERS([net/route.h], [], [], [ 336ea906c41SOllivier Robert #include <sys/types.h> 337ea906c41SOllivier Robert #include <sys/socket.h> 338ea906c41SOllivier Robert #include <net/if.h> 339ea906c41SOllivier Robert]) 340eb6d21b4SOllivier Robert 3412b15cb3dSCy SchubertAC_CHECK_HEADERS([netinfo/ni.h]) 3422b15cb3dSCy Schubertcase "$ac_cv_header_netinfo_ni_h" in 343eb6d21b4SOllivier Robert yes) 3442b15cb3dSCy Schubert AC_DEFINE([HAVE_NETINFO], [1], [NetInfo support?]) 345eb6d21b4SOllivier Robertesac 3462b15cb3dSCy SchubertAC_CHECK_HEADERS([sun/audioio.h sys/audioio.h sys/file.h]) 347ea906c41SOllivier Robertcase "$host" in 3482b15cb3dSCy Schubert *-*-sunos4*) 3492b15cb3dSCy Schubert ;; 3502b15cb3dSCy Schubert *) 3512b15cb3dSCy Schubert AC_CHECK_HEADERS([sys/ioctl.h]) 352ea906c41SOllivier Robert ;; 353ea906c41SOllivier Robertesac 3542b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/ipc.h sys/lock.h sys/mman.h]) 355ea906c41SOllivier Robert# HMS: Check sys/proc.h and sys/resource.h after some others 3562b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/modem.h sys/ppsclock.h sys/ppstime.h sched.h]) 357ea906c41SOllivier Robertcase "$ac_cv_header_sched_h" in 3582b15cb3dSCy Schubert yes) 3592b15cb3dSCy Schubert ;; 3602b15cb3dSCy Schubert *) 3612b15cb3dSCy Schubert AC_CHECK_HEADERS([sys/sched.h]) 362ea906c41SOllivier Robert ;; 363ea906c41SOllivier Robertesac 364ea906c41SOllivier Robert# HMS: Check sys/shm.h after some others 3652b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/select.h sys/signal.h sys/sockio.h]) 366ea906c41SOllivier Robert# HMS: Checked sys/socket.h earlier 367ea906c41SOllivier Robertcase "$host" in 3682b15cb3dSCy Schubert *-*-netbsd*) 3692b15cb3dSCy Schubert ;; 3702b15cb3dSCy Schubert *) 3712b15cb3dSCy Schubert AC_CHECK_HEADERS([machine/soundcard.h sys/soundcard.h]) 372ea906c41SOllivier Robert ;; 373ea906c41SOllivier Robertesac 3742b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/stat.h sys/stream.h stropts.h sys/stropts.h sys/syssgi.h]) 3752b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/systune.h sys/termios.h sys/tpro.h sys/wait.h]) 3762d4e511cSCy SchubertAC_CHECK_FUNCS([waitpid]) 377ea906c41SOllivier Robertcase "$host" in 378ea906c41SOllivier Robert*-convex-*) 3792b15cb3dSCy Schubert AC_CHECK_HEADERS([/sys/sync/queue.h /sys/sync/sema.h]) 380ea906c41SOllivier Robert ;; 381ea906c41SOllivier Robert*-*-bsdi*) 3822b15cb3dSCy Schubert AC_CHECK_HEADERS([machine/inline.h sys/pcl720.h sys/i8253.h]) 3832b15cb3dSCy Schubert ;; 3842b15cb3dSCy Schubertesac 3852b15cb3dSCy Schubert 386276da39aSCy Schubertcase "$ac_cv_header_stdatomic_h" in 387276da39aSCy Schubert yes) 388276da39aSCy Schubert AC_CHECK_FUNCS([atomic_thread_fence]) 389276da39aSCy Schubert AC_CACHE_CHECK( 390276da39aSCy Schubert [for atomic_thread_fence()], 391276da39aSCy Schubert [ntp_cv_func_atomic_thread_fence], 392276da39aSCy Schubert [AC_COMPILE_IFELSE( 393276da39aSCy Schubert [AC_LANG_PROGRAM( 394276da39aSCy Schubert [[ 395276da39aSCy Schubert #include <stdatomic.h> 396276da39aSCy Schubert ]], 397276da39aSCy Schubert [[ 398276da39aSCy Schubert atomic_thread_fence(memory_order_seq_cst); 399276da39aSCy Schubert ]] 400a466cc55SCy Schubert )], 401276da39aSCy Schubert [ntp_cv_func_atomic_thread_fence=yes], 402276da39aSCy Schubert [ntp_cv_func_atomic_thread_fence=no] 403276da39aSCy Schubert )] 404276da39aSCy Schubert ) 405276da39aSCy Schubert ;; 406276da39aSCy Schubertesac 407276da39aSCy Schubert 4082b15cb3dSCy Schubertcase "$host" in 4092b15cb3dSCy Schubert *-*-solaris2.6) 4102b15cb3dSCy Schubert # Broken... 4112b15cb3dSCy Schubert ;; 4122b15cb3dSCy Schubert *) 4132b15cb3dSCy Schubert AC_CHECK_FUNCS([ntp_adjtime ntp_gettime]) 414ea906c41SOllivier Robert ;; 415ea906c41SOllivier Robertesac 416ea906c41SOllivier Robert 417ea906c41SOllivier Robertcase "$host" in 418eb6d21b4SOllivier Robert *-*-*linux*) 4192b15cb3dSCy Schubert case "$ac_cv_func_ntp_gettime" in 4202b15cb3dSCy Schubert yes) 421ea906c41SOllivier Robert ;; 422ea906c41SOllivier Robert *) 4232b15cb3dSCy Schubert AC_CHECK_FUNCS([__ntp_gettime]) 4242b15cb3dSCy Schubert case "$ac_cv_func___ntp_gettime" in 4252b15cb3dSCy Schubert yes) 4262b15cb3dSCy Schubert AC_DEFINE([ntp_gettime], [__ntp_gettime], [deviant]) 4272b15cb3dSCy Schubert AC_DEFINE([HAVE_NTP_GETTIME], [1], [via __ntp_gettime]) 4282b15cb3dSCy Schubert esac 429ea906c41SOllivier Robert ;; 430ea906c41SOllivier Robert esac 4312b15cb3dSCy Schubert AC_CHECK_FUNCS([adjtimex]) 4322b15cb3dSCy Schubert case "$ac_cv_func_adjtimex" in 4332b15cb3dSCy Schubert yes) 4342b15cb3dSCy Schubert AC_DEFINE([ntp_adjtime], [adjtimex], [deviant]) 4352b15cb3dSCy Schubert AC_DEFINE([HAVE_NTP_ADJTIME], [1], [via adjtimex]) 4362b15cb3dSCy Schubert have_adjtimex=1 4372b15cb3dSCy Schubert ;; 4382b15cb3dSCy Schubert *) 4392b15cb3dSCy Schubert AC_CHECK_FUNCS([__adjtimex]) 4402b15cb3dSCy Schubert case "$ac_cv_func___adjtimex" in 4412b15cb3dSCy Schubert yes) 4422b15cb3dSCy Schubert AC_DEFINE([ntp_adjtime], [__adjtimex], [deviant]) 4432b15cb3dSCy Schubert AC_DEFINE([HAVE_NTP_ADJTIME], [1], [via __adjtimex]) 4442b15cb3dSCy Schubert AC_DEFINE([adjtimex], [__adjtimex], [deviant]) 4452b15cb3dSCy Schubert AC_DEFINE([HAVE_ADJTIMEX], [1], [via __adjtimex]) 4462b15cb3dSCy Schubert have_adjtimex=1 4472b15cb3dSCy Schubert esac 4482b15cb3dSCy Schubert ;; 4492b15cb3dSCy Schubert esac 4502b15cb3dSCy Schubertesac 4512b15cb3dSCy Schubertcase "$have_adjtimex" in 4522b15cb3dSCy Schubert '') 4532b15cb3dSCy Schubert # nlist stuff is only needed for tickadj. 4542b15cb3dSCy Schubert saved_LIBS="$LIBS" 4552b15cb3dSCy Schubert LIBS= 4562b15cb3dSCy Schubert AC_SEARCH_LIBS([nlist], [elf ld mld]) 4572b15cb3dSCy Schubert # XXX ac_cv_search_nlist will be 'none required', 'no', or '-l...' 4582b15cb3dSCy Schubert AC_SEARCH_LIBS([kvm_open], [kvm]) dnl We already know about -lelf here... 4592b15cb3dSCy Schubert # XXX ac_cv_search_kvm_open will be 'none required', 'no', or '-l...' 4602b15cb3dSCy Schubert AC_CHECK_HEADERS([nlist.h sys/var.h]) 4612b15cb3dSCy Schubert case "$ac_cv_header_nlist_h" in 4622b15cb3dSCy Schubert yes) 4632b15cb3dSCy Schubert AC_DEFINE([NLIST_STRUCT], [1], [nlist stuff]) 4642b15cb3dSCy Schubert AC_CACHE_CHECK( 4652b15cb3dSCy Schubert [for n_un in struct nlist], 4662b15cb3dSCy Schubert [ntp_cv_struct_nlist_n_un], 4672b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 4682b15cb3dSCy Schubert [AC_LANG_PROGRAM( 4692b15cb3dSCy Schubert [[ 4702b15cb3dSCy Schubert #include <nlist.h> 4712b15cb3dSCy Schubert ]], 4722b15cb3dSCy Schubert [[ 4732b15cb3dSCy Schubert struct nlist n; 4742b15cb3dSCy Schubert n.n_un.n_name = 0; 4752b15cb3dSCy Schubert ]] 476a466cc55SCy Schubert )], 4772b15cb3dSCy Schubert [ntp_cv_struct_nlist_n_un=yes], 4782b15cb3dSCy Schubert [ntp_cv_struct_nlist_n_un=no] 4792b15cb3dSCy Schubert )] 4802b15cb3dSCy Schubert ) 4812b15cb3dSCy Schubert case "$ntp_cv_struct_nlist_n_un" in 4822b15cb3dSCy Schubert yes) 4832b15cb3dSCy Schubert AC_DEFINE([NLIST_NAME_UNION], [1], 4842b15cb3dSCy Schubert [does struct nlist use a name union?]) 4852b15cb3dSCy Schubert esac 4862b15cb3dSCy Schubert esac 4872b15cb3dSCy Schubert AC_SUBST([LDADD_NLIST]) 4882b15cb3dSCy Schubert LDADD_NLIST="$LIBS" 4892b15cb3dSCy Schubert LIBS="$saved_LIBS" 4902b15cb3dSCy Schubert AS_UNSET([saved_LIBS]) 4912b15cb3dSCy Schubertesac 492ea906c41SOllivier Robert 4932b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/proc.h], [], [], [ 4942b15cb3dSCy Schubert #ifdef HAVE_SYS_TYPES_H 495ea906c41SOllivier Robert # include <sys/types.h> 496ea906c41SOllivier Robert #endif 4972b15cb3dSCy Schubert #ifdef HAVE_SYS_TIME_H 498ea906c41SOllivier Robert # include <sys/time.h> 499ea906c41SOllivier Robert #endif 500ea906c41SOllivier Robert]) 501ea906c41SOllivier Robert 5022b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/resource.h], [], [], [ 5032b15cb3dSCy Schubert #ifdef HAVE_SYS_TIME_H 504ea906c41SOllivier Robert # include <sys/time.h> 505ea906c41SOllivier Robert #endif 506ea906c41SOllivier Robert]) 507ea906c41SOllivier Robert 5082b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/shm.h], [], [], [ 5092b15cb3dSCy Schubert #ifdef HAVE_SYS_TYPES_H 510ea906c41SOllivier Robert # include <sys/types.h> 511ea906c41SOllivier Robert #endif 5122b15cb3dSCy Schubert #ifdef HAVE_SYS_IPC_H 513ea906c41SOllivier Robert # include <sys/ipc.h> 514ea906c41SOllivier Robert #endif 515ea906c41SOllivier Robert]) 516ea906c41SOllivier Robert 5172b15cb3dSCy SchubertAC_CHECK_HEADERS([sys/timex.h], [], [], [ 5182b15cb3dSCy Schubert #ifdef HAVE_SYS_TIME_H 519ea906c41SOllivier Robert # include <sys/time.h> 520ea906c41SOllivier Robert #endif 521ea906c41SOllivier Robert]) 522ea906c41SOllivier Robert 52309100258SXin LINTP_AF_UNSPEC 52409100258SXin LI 525ea906c41SOllivier RobertAC_TYPE_SIGNAL 526ea906c41SOllivier RobertAC_TYPE_OFF_T 5272b15cb3dSCy SchubertAC_STRUCT_TM dnl defines TM_IN_SYS_TIME used by refclock_parse.c 528ea906c41SOllivier Robert 5292b15cb3dSCy SchubertAC_CACHE_CHECK( 5302b15cb3dSCy Schubert [for a fallback value for HZ], 5312b15cb3dSCy Schubert [ntp_cv_default_hz], 5322b15cb3dSCy Schubert [ 5332b15cb3dSCy Schubert ntp_cv_default_hz=100 534ea906c41SOllivier Robert case "$host" in 535ea906c41SOllivier Robert alpha*-dec-osf4*|alpha*-dec-osf5*) 5362b15cb3dSCy Schubert ntp_cv_default_hz=1024 537ea906c41SOllivier Robert ;; 538ea906c41SOllivier Robert mips-dec-ultrix4*) 5392b15cb3dSCy Schubert ntp_cv_default_hz=256 540ea906c41SOllivier Robert ;; 5412b15cb3dSCy Schubert esac 5422b15cb3dSCy Schubert ] 5432b15cb3dSCy Schubert) 5442b15cb3dSCy SchubertAC_DEFINE_UNQUOTED([DEFAULT_HZ], [$ntp_cv_default_hz], 5452b15cb3dSCy Schubert [What is the fallback value for HZ?]) 546ea906c41SOllivier Robert 5472b15cb3dSCy SchubertAC_CACHE_CHECK( 5482b15cb3dSCy Schubert [if we need to override the system's value for HZ], 5492b15cb3dSCy Schubert [ntp_cv_override_hz], 5502b15cb3dSCy Schubert [ 5512b15cb3dSCy Schubert ntp_cv_override_hz=no 552ea906c41SOllivier Robert case "$host" in 553ea906c41SOllivier Robert alpha*-dec-osf4*|alpha*-dec-osf5*) 5542b15cb3dSCy Schubert ntp_cv_override_hz=yes 555ea906c41SOllivier Robert ;; 556ea906c41SOllivier Robert mips-dec-ultrix4*) 5572b15cb3dSCy Schubert ntp_cv_override_hz=yes 558ea906c41SOllivier Robert ;; 559ea906c41SOllivier Robert *-*-freebsd*) 5602b15cb3dSCy Schubert ntp_cv_override_hz=yes 561ea906c41SOllivier Robert ;; 562ea906c41SOllivier Robert *-*-sunos4*) 5632b15cb3dSCy Schubert ntp_cv_override_hz=yes 564ea906c41SOllivier Robert ;; 5652b15cb3dSCy Schubert *-*-kfreebsd*) 5662b15cb3dSCy Schubert ntp_cv_override_hz=yes 5672b15cb3dSCy Schubert ;; 5682b15cb3dSCy Schubert esac 5692b15cb3dSCy Schubert ] 5702b15cb3dSCy Schubert) 5712b15cb3dSCy Schubertcase "$ntp_cv_override_hz" in 572ea906c41SOllivier Robert yes) 5732b15cb3dSCy Schubert AC_DEFINE([OVERRIDE_HZ], [1], 5742b15cb3dSCy Schubert [Do we need to override the system's idea of HZ?]) 575ea906c41SOllivier Robertesac 576ea906c41SOllivier Robert 577ea906c41SOllivier Robertdnl AC_CACHE_CHECK(ut_host in struct utmp, ac_cv_func_ut_host_in_utmp, 578ea906c41SOllivier Robertdnl [AC_TRY_LINK([#include <sys/types.h> 579ea906c41SOllivier Robertdnl #include <utmp.h>], [struct utmp ut; ut.ut_host;], 580ea906c41SOllivier Robertdnl ac_cv_func_ut_host_in_utmp=yes, ac_cv_func_ut_host_in_utmp=no)]) 581ea906c41SOllivier Robertdnl if test $su_cv_func_ut_host_in_utmp = yes; then 582ea906c41SOllivier Robertdnl AC_DEFINE(HAVE_UT_HOST) 583ea906c41SOllivier Robertdnl fi 584ea906c41SOllivier Robert 585ea906c41SOllivier Robertdnl AC_MSG_CHECKING(if we can get the system boot time) 586ea906c41SOllivier Robertdnl AC_CACHE_VAL(su_cv_have_boot_time, 587ea906c41SOllivier Robertdnl [AC_EGREP_CPP(yes, 588ea906c41SOllivier Robertdnl [#ifdef HAVE_UTMPX_H 589ea906c41SOllivier Robertdnl #include <utmpx.h> 590ea906c41SOllivier Robertdnl #else 591ea906c41SOllivier Robertdnl #include <utmp.h> 592ea906c41SOllivier Robertdnl #endif 593ea906c41SOllivier Robertdnl #ifdef BOOT_TIME 594ea906c41SOllivier Robertdnl yes 595ea906c41SOllivier Robertdnl #endif 596ea906c41SOllivier Robertdnl ], su_cv_have_boot_time=yes, su_cv_have_boot_time=no)]) 597ea906c41SOllivier Robertdnl AC_MSG_RESULT($su_cv_have_boot_time) 598ea906c41SOllivier Robert 5992b15cb3dSCy SchubertAC_CACHE_CHECK( 6002b15cb3dSCy Schubert [for struct rt_msghdr], 6012b15cb3dSCy Schubert [ntp_cv_struct_rt_msghdr], 6022b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 6032b15cb3dSCy Schubert [AC_LANG_PROGRAM( 6042b15cb3dSCy Schubert [[ 605ea906c41SOllivier Robert #include <sys/types.h> 606ea906c41SOllivier Robert #include <sys/socket.h> 607ea906c41SOllivier Robert #include <net/if.h> 6082b15cb3dSCy Schubert #include <net/route.h> 6092b15cb3dSCy Schubert ]], 6102b15cb3dSCy Schubert [[ 6112b15cb3dSCy Schubert struct rt_msghdr p; 6122b15cb3dSCy Schubert ]] 6132b15cb3dSCy Schubert )], 6142b15cb3dSCy Schubert [ntp_cv_struct_rt_msghdr=yes], 6152b15cb3dSCy Schubert [ntp_cv_struct_rt_msghdr=no] 6162b15cb3dSCy Schubert )] 6172b15cb3dSCy Schubert) 618eb6d21b4SOllivier Robert 6192b15cb3dSCy SchubertAC_CACHE_CHECK( 6202b15cb3dSCy Schubert [for struct rtattr], 6212b15cb3dSCy Schubert [ntp_cv_rtattr], 6222b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 6232b15cb3dSCy Schubert [AC_LANG_PROGRAM( 6242b15cb3dSCy Schubert [[ 6252b15cb3dSCy Schubert #include <stddef.h> 6262b15cb3dSCy Schubert #include <sys/socket.h> 6272b15cb3dSCy Schubert #include <linux/rtnetlink.h> 6282b15cb3dSCy Schubert ]], 6292b15cb3dSCy Schubert [[ 6302b15cb3dSCy Schubert struct rtattr p; 6312b15cb3dSCy Schubert ]] 6322b15cb3dSCy Schubert )], 6332b15cb3dSCy Schubert [ntp_cv_rtattr=yes], 6342b15cb3dSCy Schubert [ntp_cv_rtattr=no] 6352b15cb3dSCy Schubert )] 6362b15cb3dSCy Schubert) 6372b15cb3dSCy Schubert 6382b15cb3dSCy Schubertcase "$ntp_cv_struct_rt_msghdr$ntp_cv_rtattr" in 6392b15cb3dSCy Schubert *yes*) 6402b15cb3dSCy Schubert AC_DEFINE([HAS_ROUTING_SOCKET], [1], 6412b15cb3dSCy Schubert [Do we have a routing socket (rt_msghdr or rtattr)?]) 6422b15cb3dSCy Schubert case "$ntp_cv_rtattr" in 6432b15cb3dSCy Schubert yes) 6442b15cb3dSCy Schubert AC_DEFINE([HAVE_RTNETLINK], [1], 6452b15cb3dSCy Schubert [Do we have Linux routing socket?]) 6462b15cb3dSCy Schubert esac 6472b15cb3dSCy Schubertesac 648ea906c41SOllivier Robert 649ea906c41SOllivier RobertAC_CACHE_CHECK( 650eb6d21b4SOllivier Robert [struct sigaction for sa_sigaction], 6512b15cb3dSCy Schubert [ntp_cv_struct_sigaction_has_sa_sigaction], 6522b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 6532b15cb3dSCy Schubert [AC_LANG_PROGRAM( 6542b15cb3dSCy Schubert [[ 6552b15cb3dSCy Schubert #include <signal.h> 6562b15cb3dSCy Schubert ]], 6572b15cb3dSCy Schubert [[ 6582b15cb3dSCy Schubert struct sigaction act; 6592b15cb3dSCy Schubert act.sa_sigaction = 0; 6602b15cb3dSCy Schubert ]] 6612b15cb3dSCy Schubert )], 6622b15cb3dSCy Schubert [ntp_cv_struct_sigaction_has_sa_sigaction=yes], 6632b15cb3dSCy Schubert [ntp_cv_struct_sigaction_has_sa_sigaction=no] 6642b15cb3dSCy Schubert )] 665ea906c41SOllivier Robert) 6662b15cb3dSCy Schubertcase "$ntp_cv_struct_sigaction_has_sa_sigaction" in 6672b15cb3dSCy Schubert yes) 6682b15cb3dSCy Schubert AC_DEFINE([HAVE_SA_SIGACTION_IN_STRUCT_SIGACTION], [1], [Obvious]) 6692b15cb3dSCy Schubertesac 670ea906c41SOllivier Robert 6712b15cb3dSCy SchubertAC_CACHE_CHECK( 6722b15cb3dSCy Schubert [for struct ppsclockev], 6732b15cb3dSCy Schubert [ntp_cv_struct_ppsclockev], 6742b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 6752b15cb3dSCy Schubert [AC_LANG_PROGRAM( 6762b15cb3dSCy Schubert [[ 6772b15cb3dSCy Schubert #ifdef HAVE_SYS_TYPES_H 678ea906c41SOllivier Robert # include <sys/types.h> 6792b15cb3dSCy Schubert #endif 680ea906c41SOllivier Robert #ifdef HAVE_SYS_TERMIOS_H 681ea906c41SOllivier Robert # include <sys/termios.h> 682ea906c41SOllivier Robert #endif 683ea906c41SOllivier Robert #ifdef HAVE_SYS_TIME_H 684ea906c41SOllivier Robert # include <sys/time.h> 685ea906c41SOllivier Robert #endif 686ea906c41SOllivier Robert #ifdef HAVE_SYS_PPSCLOCK_H 687ea906c41SOllivier Robert # include <sys/ppsclock.h> 6882b15cb3dSCy Schubert #endif 6892b15cb3dSCy Schubert ]], 6902b15cb3dSCy Schubert [[ 691ea906c41SOllivier Robert extern struct ppsclockev *pce; 6922b15cb3dSCy Schubert return pce->serial; 6932b15cb3dSCy Schubert ]] 6942b15cb3dSCy Schubert )], 6952b15cb3dSCy Schubert [ntp_cv_struct_ppsclockev=yes], 6962b15cb3dSCy Schubert [ntp_cv_struct_ppsclockev=no] 6972b15cb3dSCy Schubert )] 698ea906c41SOllivier Robert) 6992b15cb3dSCy Schubertcase "$ntp_cv_struct_ppsclockev" in 7002b15cb3dSCy Schubert yes) 7012b15cb3dSCy Schubert AC_DEFINE([HAVE_STRUCT_PPSCLOCKEV], [1], 7022b15cb3dSCy Schubert [Does a system header define struct ppsclockev?]) 703ea906c41SOllivier Robertesac 704ea906c41SOllivier Robert 705ea906c41SOllivier Robertcase "$ac_cv_header_machine_soundcard_h$ac_cv_header_sys_soundcard_h" in 706ea906c41SOllivier Robert *yes*) 7072b15cb3dSCy Schubert AC_CACHE_CHECK( 7082b15cb3dSCy Schubert [for struct snd_size], 7092b15cb3dSCy Schubert [ntp_cv_struct_snd_size], 7102b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 7112b15cb3dSCy Schubert [AC_LANG_PROGRAM( 7122b15cb3dSCy Schubert [[ 713ea906c41SOllivier Robert #ifdef HAVE_MACHINE_SOUNDCARD_H 714ea906c41SOllivier Robert # include <machine/soundcard.h> 715ea906c41SOllivier Robert #endif 716ea906c41SOllivier Robert #ifdef HAVE_SYS_SOUNDCARD_H 717ea906c41SOllivier Robert # include <sys/soundcard.h> 718ea906c41SOllivier Robert #endif 7192b15cb3dSCy Schubert ]], 7202b15cb3dSCy Schubert [[ 7212b15cb3dSCy Schubert extern struct snd_size *ss; 7222b15cb3dSCy Schubert return ss->rec_size; 7232b15cb3dSCy Schubert ]] 7242b15cb3dSCy Schubert )], 7252b15cb3dSCy Schubert [ntp_cv_struct_snd_size=yes], 7262b15cb3dSCy Schubert [ntp_cv_struct_snd_size=no] 7272b15cb3dSCy Schubert )] 7282b15cb3dSCy Schubert ) 7292b15cb3dSCy Schubert case "$ntp_cv_struct_snd_size" in 7302b15cb3dSCy Schubert yes) 7312b15cb3dSCy Schubert AC_DEFINE([HAVE_STRUCT_SND_SIZE], [1], 7322b15cb3dSCy Schubert [Do we have struct snd_size?]) 7332b15cb3dSCy Schubert esac 7342b15cb3dSCy Schubertesac 735ea906c41SOllivier Robert 7362b15cb3dSCy SchubertAC_CACHE_CHECK( 7372b15cb3dSCy Schubert [struct clockinfo for hz], 7382b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz], 7392b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 7402b15cb3dSCy Schubert [AC_LANG_PROGRAM( 7412b15cb3dSCy Schubert [[ 742ea906c41SOllivier Robert #include <sys/time.h> 7432b15cb3dSCy Schubert ]], 7442b15cb3dSCy Schubert [[ 7452b15cb3dSCy Schubert extern struct clockinfo *pc; 7462b15cb3dSCy Schubert return pc->hz; 7472b15cb3dSCy Schubert ]] 7482b15cb3dSCy Schubert )], 7492b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz=yes], 7502b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz=no] 7512b15cb3dSCy Schubert )] 7522b15cb3dSCy Schubert) 7532b15cb3dSCy Schubertcase "$ntp_cv_struct_clockinfo_has_hz" in 7542b15cb3dSCy Schubert yes) 7552b15cb3dSCy Schubert AC_DEFINE([HAVE_HZ_IN_STRUCT_CLOCKINFO], [1], [Obvious]) 7562b15cb3dSCy Schubertesac 757ea906c41SOllivier Robert 7582b15cb3dSCy SchubertAC_CACHE_CHECK( 7592b15cb3dSCy Schubert [struct clockinfo for tickadj], 7602b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz], 7612b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 7622b15cb3dSCy Schubert [AC_LANG_PROGRAM( 7632b15cb3dSCy Schubert [[ 7642b15cb3dSCy Schubert #include <sys/time.h> 7652b15cb3dSCy Schubert ]], 7662b15cb3dSCy Schubert [[ 7672b15cb3dSCy Schubert extern struct clockinfo *pc; 7682b15cb3dSCy Schubert return pc->tickadj; 7692b15cb3dSCy Schubert ]] 7702b15cb3dSCy Schubert )], 7712b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz=yes], 7722b15cb3dSCy Schubert [ntp_cv_struct_clockinfo_has_hz=no] 7732b15cb3dSCy Schubert )] 7742b15cb3dSCy Schubert) 7752b15cb3dSCy Schubertcase "$ntp_cv_struct_clockinfo_has_hz" in 7762b15cb3dSCy Schubert yes) 7772b15cb3dSCy Schubert AC_DEFINE([HAVE_TICKADJ_IN_STRUCT_CLOCKINFO], [1], [Obvious]) 7782b15cb3dSCy Schubertesac 7792b15cb3dSCy Schubert 7802b15cb3dSCy Schubertcase "$ntp_cv_struct_ntptimeval" in 7812b15cb3dSCy Schubert yes) 7822b15cb3dSCy Schubert AC_CHECK_MEMBERS( 7832b15cb3dSCy Schubert [struct ntptimeval.time.tv_nsec], 7842b15cb3dSCy Schubert [], 7852b15cb3dSCy Schubert [], 7862b15cb3dSCy Schubert [ 7872b15cb3dSCy Schubert #ifdef HAVE_SYS_TIME_H 788ea906c41SOllivier Robert # include <sys/time.h> 789ea906c41SOllivier Robert #else 790ea906c41SOllivier Robert # ifdef HAVE_TIME_H 791ea906c41SOllivier Robert # include <time.h> 792ea906c41SOllivier Robert # endif 793ea906c41SOllivier Robert #endif 794ea906c41SOllivier Robert #ifdef HAVE_SYS_TIMEX_H 795ea906c41SOllivier Robert # include <sys/timex.h> 796ea906c41SOllivier Robert #else 797ea906c41SOllivier Robert # ifdef HAVE_TIMEX_H 798ea906c41SOllivier Robert # include <timex.h> 799ea906c41SOllivier Robert # endif 8002b15cb3dSCy Schubert #endif 8012b15cb3dSCy Schubert ] 8022b15cb3dSCy Schubert ) 803eb6d21b4SOllivier Robertesac 804eb6d21b4SOllivier Robert 8052b15cb3dSCy Schubert#### 806ea906c41SOllivier Robert 8072b15cb3dSCy SchubertAC_CHECK_FUNCS([arc4random_buf]) 808ea906c41SOllivier Robert 8092b15cb3dSCy Schubert#### 8102b15cb3dSCy Schubert 8112b15cb3dSCy Schubertsaved_LIBS="$LIBS" 8122b15cb3dSCy SchubertLIBS="$LIBS $LDADD_LIBNTP" 8132b15cb3dSCy SchubertAC_CHECK_FUNCS([daemon]) 8142b15cb3dSCy Schubert# XXX if we keep everything in LIBS and also keep separate lists, this simplifies. 8152b15cb3dSCy SchubertLIBS="$saved_LIBS" 8162b15cb3dSCy SchubertAS_UNSET([saved_LIBS]) 8172b15cb3dSCy Schubert 8182b15cb3dSCy SchubertAC_CHECK_FUNCS( 8192b15cb3dSCy Schubert [finite], 8202b15cb3dSCy Schubert [], 8212b15cb3dSCy Schubert [AC_CHECK_FUNCS( 8222b15cb3dSCy Schubert [isfinite], 8232b15cb3dSCy Schubert [], 8242b15cb3dSCy Schubert [ 8252b15cb3dSCy Schubert AC_MSG_CHECKING([for isfinite with <math.h>]) 826ea906c41SOllivier Robert _libs=$LIBS 8272b15cb3dSCy Schubert # XXX 828ea906c41SOllivier Robert LIBS="$LIBS -lm" 8292b15cb3dSCy Schubert AC_LINK_IFELSE( 8302b15cb3dSCy Schubert [AC_LANG_PROGRAM( 8312b15cb3dSCy Schubert [[ 8322b15cb3dSCy Schubert #include <math.h> 8332b15cb3dSCy Schubert ]], 8342b15cb3dSCy Schubert [[ 8352b15cb3dSCy Schubert float f = 0.0; 8362b15cb3dSCy Schubert isfinite(f); 8372b15cb3dSCy Schubert ]] 8382b15cb3dSCy Schubert )], 8392b15cb3dSCy Schubert [ans=yes], 8402b15cb3dSCy Schubert [ans=no] 8412b15cb3dSCy Schubert ) 8422b15cb3dSCy Schubert LIBS=$_libs 8432b15cb3dSCy Schubert AC_MSG_RESULT([$ans]) 8442b15cb3dSCy Schubert case "$ans" in 845ea906c41SOllivier Robert yes) 8462b15cb3dSCy Schubert AC_DEFINE([HAVE_ISFINITE], [1]) 8472b15cb3dSCy Schubert esac 8482b15cb3dSCy Schubert ] 8492b15cb3dSCy Schubert )] 8502b15cb3dSCy Schubert) 8512b15cb3dSCy Schubert 852a466cc55SCy SchubertAC_CHECK_FUNCS([fnmatch getbootfile getuid getrusage nanosleep strsignal ]dnl 853a466cc55SCy Schubert [strsignal closefrom getdtablesize]) 854a466cc55SCy Schubert 8552b15cb3dSCy Schubert 8562b15cb3dSCy Schubert# kvm_open() is only used by tickadj. Also see above. 8572b15cb3dSCy Schubertcase "$ac_cv_header_kvm_h" in 8582b15cb3dSCy Schubert yes) 8592b15cb3dSCy Schubert AC_CHECK_FUNCS([kvm_open]) 860ea906c41SOllivier Robert ;; 861ea906c41SOllivier Robertesac 862ea906c41SOllivier Robert 863ea906c41SOllivier Robertcase "$host" in 864ea906c41SOllivier Robert *-*-sco3.2v5.0.*) 8652b15cb3dSCy Schubert # Just stubs. Sigh. 866ea906c41SOllivier Robert ;; 8672b15cb3dSCy Schubert *) AC_CHECK_FUNCS([mkstemp]) 868ea906c41SOllivier Robert ;; 869ea906c41SOllivier Robertesac 8702b15cb3dSCy SchubertAC_CHECK_FUNCS([mktime]) 871ea906c41SOllivier Robertcase "$host" in 8722b15cb3dSCy Schubert *-*-aix[[4-9]]*) 8732b15cb3dSCy Schubert # XXX only verified thru AIX6. 8742b15cb3dSCy Schubert # Just a stub. Sigh. 875ea906c41SOllivier Robert ;; 876ea906c41SOllivier Robert *-*-irix[[45]]*) 8772b15cb3dSCy Schubert # Just a stub in "old" Irix. Sigh. 878ea906c41SOllivier Robert ;; 8792b15cb3dSCy Schubert# In the belief that the fix for bug 1223 fixes mlockall() under linux... 8802b15cb3dSCy Schubert# *-*-*linux*) 8812b15cb3dSCy Schubert# # there, but more trouble than it is worth for now (resolver problems) 8822b15cb3dSCy Schubert# ;; 883ea906c41SOllivier Robert *-*-qnx*) 8842b15cb3dSCy Schubert # Apparently there but not working in QNX. Sigh? 885ea906c41SOllivier Robert ;; 886ea906c41SOllivier Robert *-*-sco3.2v5.0.*) 8872b15cb3dSCy Schubert # Just a stub. Sigh. 888ea906c41SOllivier Robert ;; 889ea906c41SOllivier Robert alpha*-dec-osf4*|alpha*-dec-osf5*) 890ea906c41SOllivier Robert # mlockall is there, as a #define calling memlk via <sys/mman.h> 891ea906c41SOllivier Robert # Not easy to test for - cheat. 8922b15cb3dSCy Schubert AC_CHECK_FUNCS([memlk], [ac_cv_func_mlockall=yes]) 8932b15cb3dSCy Schubert AC_CHECK_FUNCS([mlockall]) 894ea906c41SOllivier Robert ;; 8952b15cb3dSCy Schubert *) AC_CHECK_FUNCS([mlockall]) 896ea906c41SOllivier Robert ;; 897ea906c41SOllivier Robertesac 8982b15cb3dSCy SchubertAC_CHECK_FUNCS([nice plock pututline pututxline readlink rtprio]) 899a466cc55SCy SchubertNTP_FUNC_REALPATH 900ea906c41SOllivier Robertcase "$host" in 9012b15cb3dSCy Schubert *-*-aix[[4-9]]*) 9022b15cb3dSCy Schubert # XXX only verified thru AIX6. 9032b15cb3dSCy Schubert # Just a stub in AIX 4. Sigh. 904ea906c41SOllivier Robert ;; 905ea906c41SOllivier Robert *-*-solaris2.5*) 9062b15cb3dSCy Schubert # Just stubs in solaris2.5. Sigh. 907ea906c41SOllivier Robert ;; 9082b15cb3dSCy Schubert *) AC_CHECK_FUNCS([sched_setscheduler]) 909ea906c41SOllivier Robert ;; 910ea906c41SOllivier Robertesac 9112b15cb3dSCy SchubertAC_CHECK_FUNCS([setlinebuf setpgid setpriority setsid setvbuf]) 912767173ceSCy SchubertAC_CHECK_FUNCS([strdup strnlen memchr strerror setrlimit strchr]) 913ea906c41SOllivier Robertcase "$host" in 9142b15cb3dSCy Schubert *-*-aix[[4-9]]*) 9152b15cb3dSCy Schubert # XXX only verified thru AIX6. 9162b15cb3dSCy Schubert # Just stubs. Sigh. 917ea906c41SOllivier Robert ;; 918ea906c41SOllivier Robert *-*-netbsd1*) 9192b15cb3dSCy Schubert # Just stubs. Sigh. 920ea906c41SOllivier Robert ;; 921ea906c41SOllivier Robert *-*-netbsdelf1*) 9222b15cb3dSCy Schubert # Just stubs. Sigh. 923ea906c41SOllivier Robert ;; 924ea906c41SOllivier Robert *-*-openbsd*) 9252b15cb3dSCy Schubert # Just stubs. Sigh. 926ea906c41SOllivier Robert ;; 9272b15cb3dSCy Schubert *) 9282b15cb3dSCy Schubert AC_CHECK_FUNCS([timer_create]) 929ea906c41SOllivier Robert ;; 930ea906c41SOllivier Robertesac 9312b15cb3dSCy Schubert 9322b15cb3dSCy SchubertNTP_RLIMIT_ITEMS 9332b15cb3dSCy Schubert 9342b15cb3dSCy Schubert# some OSes prefer _exit() in forked children to exit() 9352b15cb3dSCy SchubertAC_CHECK_FUNCS([_exit]) 9362b15cb3dSCy Schubertntp_worker_child_exit=exit 9372b15cb3dSCy Schubertcase "$ac_cv_func__exit::$host_os" in 9382b15cb3dSCy Schubert yes::netbsd*) 9392b15cb3dSCy Schubert ntp_worker_child_exit=_exit 9402b15cb3dSCy Schubert ;; 9412b15cb3dSCy Schubert yes::openbsd*) 9422b15cb3dSCy Schubert ntp_worker_child_exit=_exit 9432b15cb3dSCy Schubert ;; 9442b15cb3dSCy Schubertesac 9452b15cb3dSCy SchubertAC_DEFINE_UNQUOTED([WORKER_CHILD_EXIT], [$ntp_worker_child_exit], 9462b15cb3dSCy Schubert [routine worker child proc uses to exit.]) 9472b15cb3dSCy Schubert 9482b15cb3dSCy SchubertAC_CHECK_FUNCS([umask uname updwtmp updwtmpx]) 949ea906c41SOllivier Robert 950ea906c41SOllivier Robert### 951ea906c41SOllivier Robert 952eb6d21b4SOllivier Robert# http://bugs.ntp.org/737 953ea906c41SOllivier Robertcase "$ac_cv_func_recvmsg" in 954ea906c41SOllivier Robert yes) 9552b15cb3dSCy Schubert AC_CACHE_CHECK( 9562b15cb3dSCy Schubert [if we need extra help to define struct iovec], 9572b15cb3dSCy Schubert [ntp_cv_struct_iovec_help], 9582b15cb3dSCy Schubert [ 9592b15cb3dSCy Schubert compiled=no 9602b15cb3dSCy Schubert for ntp_cv_struct_iovec_help in '0' '1'; do 9612b15cb3dSCy Schubert AC_COMPILE_IFELSE( 9622b15cb3dSCy Schubert [AC_LANG_PROGRAM( 9632b15cb3dSCy Schubert [[ 9642b15cb3dSCy Schubert #ifdef HAVE_SYS_TYPES_H 965ea906c41SOllivier Robert # include <sys/types.h> 966ea906c41SOllivier Robert #endif 967ea906c41SOllivier Robert #ifdef HAVE_SYS_SOCKET_H 968ea906c41SOllivier Robert # include <sys/socket.h> 969ea906c41SOllivier Robert #endif 9702b15cb3dSCy Schubert #if $ntp_cv_struct_iovec_help 971ea906c41SOllivier Robert # include <sys/uio.h> 972ea906c41SOllivier Robert #endif 9732b15cb3dSCy Schubert ]], 9742b15cb3dSCy Schubert [[ 9752b15cb3dSCy Schubert void foo(void) { 976ea906c41SOllivier Robert ssize_t x; 977ea906c41SOllivier Robert int s = 0; 978ea906c41SOllivier Robert struct iovec iov; 979ea906c41SOllivier Robert struct msghdr mh; 980ea906c41SOllivier Robert int flags = 0; 981ea906c41SOllivier Robert 982ea906c41SOllivier Robert mh.msg_iov = &iov; 983ea906c41SOllivier Robert x = recvmsg(s, &mh, flags); 9842b15cb3dSCy Schubert } 9852b15cb3dSCy Schubert ]] 9862b15cb3dSCy Schubert )], 9872b15cb3dSCy Schubert [compiled=yes ; break 1], 9882b15cb3dSCy Schubert [] 9892b15cb3dSCy Schubert ) 990ea906c41SOllivier Robert done 9912b15cb3dSCy Schubert case "$compiled" in 9922b15cb3dSCy Schubert no) 9932b15cb3dSCy Schubert ntp_cv_struct_iovec_help=0 994ea906c41SOllivier Robert esac 9952b15cb3dSCy Schubert AS_UNSET([compiled]) 9962b15cb3dSCy Schubert ] 9972b15cb3dSCy Schubert ) 9982b15cb3dSCy Schubert case "$ntp_cv_struct_iovec_help" in 9992b15cb3dSCy Schubert 1) 10002b15cb3dSCy Schubert AC_DEFINE([HAVE_SYS_UIO_H], [1], 10012b15cb3dSCy Schubert [Use sys/uio.h for struct iovec help]) 10022b15cb3dSCy Schubert esac 1003ea906c41SOllivier Robertesac 1004ea906c41SOllivier Robert 10052b15cb3dSCy SchubertAC_CACHE_CHECK( 10062b15cb3dSCy Schubert [number of arguments taken by setpgrp()], 10072b15cb3dSCy Schubert [ntp_cv_func_setpgrp_nargs], 10082b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 10092b15cb3dSCy Schubert [AC_LANG_PROGRAM( 10102b15cb3dSCy Schubert [[ 1011ea906c41SOllivier Robert #ifdef HAVE_SYS_TYPES_H 1012ea906c41SOllivier Robert # include <sys/types.h> 1013ea906c41SOllivier Robert #endif 1014ea906c41SOllivier Robert #ifdef HAVE_UNISTD_H 1015ea906c41SOllivier Robert # include <unistd.h> 1016ea906c41SOllivier Robert #endif 10172b15cb3dSCy Schubert ]], 10182b15cb3dSCy Schubert [[ 10192b15cb3dSCy Schubert setpgrp(0, 0); 10202b15cb3dSCy Schubert ]] 10212b15cb3dSCy Schubert )], 10222b15cb3dSCy Schubert [ntp_cv_func_setpgrp_nargs=2], 10232b15cb3dSCy Schubert [ntp_cv_func_setpgrp_nargs=0] 10242b15cb3dSCy Schubert )] 10252b15cb3dSCy Schubert) 10262b15cb3dSCy Schubertcase "$ntp_cv_func_setpgrp_nargs" in 10272b15cb3dSCy Schubert 0) 10282b15cb3dSCy Schubert AC_DEFINE([HAVE_SETPGRP_0], [1], 10292b15cb3dSCy Schubert [define if setpgrp takes 0 arguments]) 1030ea906c41SOllivier Robertesac 1031ea906c41SOllivier Robert 10322b15cb3dSCy SchubertAC_CACHE_CHECK( 10332b15cb3dSCy Schubert [if we need to declare 'errno'], 10342b15cb3dSCy Schubert [ntp_cv_decl_errno], 10352b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 10362b15cb3dSCy Schubert [AC_LANG_PROGRAM( 10372b15cb3dSCy Schubert [[ 10382b15cb3dSCy Schubert #ifdef HAVE_ERRNO_H 1039ea906c41SOllivier Robert # include <errno.h> 10402b15cb3dSCy Schubert #endif 10412b15cb3dSCy Schubert ]], 10422b15cb3dSCy Schubert [[ 10432b15cb3dSCy Schubert errno = 0; 10442b15cb3dSCy Schubert ]] 10452b15cb3dSCy Schubert )], 10462b15cb3dSCy Schubert [ntp_cv_decl_errno=no], 10472b15cb3dSCy Schubert [ntp_cv_decl_errno=yes] 10482b15cb3dSCy Schubert )] 10492b15cb3dSCy Schubert) 10502b15cb3dSCy Schubertcase "$ntp_cv_decl_errno" in 10512b15cb3dSCy Schubert yes) 10522b15cb3dSCy Schubert AC_DEFINE([DECL_ERRNO], [1], [Declare errno?]) 1053ea906c41SOllivier Robertesac 1054ea906c41SOllivier Robert 1055ea906c41SOllivier Robertdnl (prr) aix 4.3 defines h_errno as (*(int *)h_errno_which()) for 1056ea906c41SOllivier Robertdnl MT purposes. This makes the line "extern int h_errno" choke 1057ea906c41SOllivier Robertdnl the compiler. Hopefully adding !defined(h_errno) fixes this 1058ea906c41SOllivier Robertdnl without breaking any other platforms. 1059ea906c41SOllivier Robertdnl 10602b15cb3dSCy SchubertAC_CACHE_CHECK( 10612b15cb3dSCy Schubert [if we may declare 'h_errno'], 10622b15cb3dSCy Schubert [ntp_cv_decl_h_errno], 10632b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 10642b15cb3dSCy Schubert [AC_LANG_PROGRAM( 10652b15cb3dSCy Schubert [[ 10662b15cb3dSCy Schubert #include <sys/types.h> 1067ea906c41SOllivier Robert #ifdef HAVE_NETINET_IN_H 1068ea906c41SOllivier Robert # include <netinet/in.h> 1069ea906c41SOllivier Robert #endif 1070ea906c41SOllivier Robert #ifdef HAVE_ARPA_NAMESER_H 1071ea906c41SOllivier Robert # include <arpa/nameser.h> 1072ea906c41SOllivier Robert #endif 1073ea906c41SOllivier Robert #ifdef HAVE_NETDB_H 1074ea906c41SOllivier Robert # include <netdb.h> 1075ea906c41SOllivier Robert #endif 1076ea906c41SOllivier Robert #ifdef HAVE_RESOLV_H 1077ea906c41SOllivier Robert # include <resolv.h> 10782b15cb3dSCy Schubert #endif 10792b15cb3dSCy Schubert ]], 10802b15cb3dSCy Schubert [[ 10812b15cb3dSCy Schubert extern int h_errno; 10822b15cb3dSCy Schubert ]] 10832b15cb3dSCy Schubert )], 10842b15cb3dSCy Schubert [ntp_cv_decl_h_errno=yes], 10852b15cb3dSCy Schubert [ntp_cv_decl_h_errno=no] 10862b15cb3dSCy Schubert )] 10872b15cb3dSCy Schubert) 10882b15cb3dSCy Schubertcase "$ntp_cv_decl_h_errno" in 10892b15cb3dSCy Schubert yes) 10902b15cb3dSCy Schubert AC_DEFINE([DECL_H_ERRNO], [1], [Declare h_errno?]) 1091ea906c41SOllivier Robertesac 1092ea906c41SOllivier Robert 10932b15cb3dSCy SchubertAC_CACHE_CHECK( 10942b15cb3dSCy Schubert [if declaring 'syscall()' is ok], 10952b15cb3dSCy Schubert [ntp_cv_decl_syscall], 10962b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 10972b15cb3dSCy Schubert [AC_LANG_PROGRAM( 10982b15cb3dSCy Schubert [[ 1099ea906c41SOllivier Robert #ifdef HAVE_SYS_TYPES_H 1100ea906c41SOllivier Robert # include <sys/types.h> 1101ea906c41SOllivier Robert #endif 1102ea906c41SOllivier Robert #ifdef HAVE_UNISTD_H 1103ea906c41SOllivier Robert # include <unistd.h> 1104ea906c41SOllivier Robert #endif 11052b15cb3dSCy Schubert ]], 11062b15cb3dSCy Schubert [[ 11072b15cb3dSCy Schubert extern int syscall (int, ...); 11082b15cb3dSCy Schubert ]] 1109a466cc55SCy Schubert )], 11102b15cb3dSCy Schubert [ntp_cv_decl_syscall=yes], 11112b15cb3dSCy Schubert [ntp_cv_decl_syscall=no] 11122b15cb3dSCy Schubert )] 11132b15cb3dSCy Schubert) 11142b15cb3dSCy Schubertcase "$ntp_cv_decl_syscall" in 11152b15cb3dSCy Schubert yes) 11162b15cb3dSCy Schubert AC_DEFINE([DECL_SYSCALL], [1], [Declare syscall()?]) 1117ea906c41SOllivier Robertesac 1118ea906c41SOllivier Robert 1119ea906c41SOllivier Robertcase "$host" in 1120ea906c41SOllivier Robert *-*-aix4.3.*) 11212b15cb3dSCy Schubert AC_DEFINE([DECL_HSTRERROR_0], [1], [Declaration style]) # Needed for XLC under AIX 4.3.2 1122ea906c41SOllivier Robert ;; 1123ea906c41SOllivier Robert *-*-mpeix*) 11242b15cb3dSCy Schubert AC_DEFINE([DECL_ADJTIME_0], [1], [Declaration style]) 11252b15cb3dSCy Schubert AC_DEFINE([DECL_INET_NTOA_0], [1], [Declaration style]) 11262b15cb3dSCy Schubert AC_DEFINE([DECL_MKTEMP_0], [1], [Declaration style]) 11272b15cb3dSCy Schubert AC_DEFINE([DECL_SELECT_0], [1], [Declaration style]) 11282b15cb3dSCy Schubert AC_DEFINE([DECL_SETITIMER_0], [1], [Declaration style]) 11292b15cb3dSCy Schubert AC_DEFINE([DECL_SYSLOG_0], [1], [Declaration style]) 11302b15cb3dSCy Schubert AC_DEFINE([DECL_TIMEOFDAY_0], [1], [Declaration style]) 1131ea906c41SOllivier Robert ;; 1132ea906c41SOllivier Robert *-*-osf[[45]]*) 11332b15cb3dSCy Schubert AC_DEFINE([DECL_PLOCK_0], [1], [Declaration style]) 11342b15cb3dSCy Schubert AC_DEFINE([DECL_STIME_1], [1], [Declaration style]) 1135ea906c41SOllivier Robert ;; 1136ea906c41SOllivier Robert *-*-qnx*) 11372b15cb3dSCy Schubert AC_DEFINE([DECL_ADJTIME_0], [1], [Declaration style]) 1138ea906c41SOllivier Robert ;; 1139ea906c41SOllivier Robert *-*-riscos4*) 11402b15cb3dSCy Schubert AC_DEFINE([DECL_ADJTIME_0], [1], [Declaration style]) 11412b15cb3dSCy Schubert AC_DEFINE([DECL_BZERO_0], [1], [Declaration style]) 11422b15cb3dSCy Schubert AC_DEFINE([DECL_IOCTL_0], [1], [Declaration style]) 11432b15cb3dSCy Schubert AC_DEFINE([DECL_IPC_0], [1], [Declaration style]) 11442b15cb3dSCy Schubert AC_DEFINE([DECL_MEMMOVE_0], [1], [Declaration style]) 11452b15cb3dSCy Schubert AC_DEFINE([DECL_MKTEMP_0], [1], [Declaration style]) 11462b15cb3dSCy Schubert AC_DEFINE([DECL_RENAME_0], [1], [Declaration style]) 11472b15cb3dSCy Schubert AC_DEFINE([DECL_SELECT_0], [1], [Declaration style]) 11482b15cb3dSCy Schubert AC_DEFINE([DECL_SETITIMER_0], [1], [Declaration style]) 11492b15cb3dSCy Schubert AC_DEFINE([DECL_SETPRIORITY_0], [1], [Declaration style]) 11502b15cb3dSCy Schubert AC_DEFINE([DECL_STDIO_0], [1], [Declaration style]) 11512b15cb3dSCy Schubert AC_DEFINE([DECL_STRTOL_0], [1], [Declaration style]) 11522b15cb3dSCy Schubert AC_DEFINE([DECL_SYSLOG_0], [1], [Declaration style]) 11532b15cb3dSCy Schubert AC_DEFINE([DECL_TIME_0], [1], [Declaration style]) 11542b15cb3dSCy Schubert AC_DEFINE([DECL_TIMEOFDAY_0], [1], [Declaration style]) 11552b15cb3dSCy Schubert AC_DEFINE([DECL_TOLOWER_0], [1], [Declaration style]) 1156ea906c41SOllivier Robert ;; 1157ea906c41SOllivier Robert *-*-solaris2*) 11582b15cb3dSCy Schubert AC_DEFINE([DECL_MKSTEMP_0], [1], [Declaration style]) 11592b15cb3dSCy Schubert AC_DEFINE([DECL_SETPRIORITY_1], [1], [Declaration style]) 1160ea906c41SOllivier Robert case "$host" in 1161ea906c41SOllivier Robert *-*-solaris2.4) 11622b15cb3dSCy Schubert AC_DEFINE([DECL_TIMEOFDAY_0], [1], [Declaration style]) 1163ea906c41SOllivier Robert ;; 1164ea906c41SOllivier Robert esac 1165ea906c41SOllivier Robert ;; 1166ea906c41SOllivier Robert *-*-sunos4*) 11672b15cb3dSCy Schubert AC_DEFINE([DECL_ADJTIME_0], [1], [Declaration style]) 11682b15cb3dSCy Schubert AC_DEFINE([DECL_BCOPY_0], [1], [Declaration style]) 11692b15cb3dSCy Schubert AC_DEFINE([DECL_BZERO_0], [1], [Declaration style]) 11702b15cb3dSCy Schubert AC_DEFINE([DECL_IOCTL_0], [1], [Declaration style]) 11712b15cb3dSCy Schubert AC_DEFINE([DECL_IPC_0], [1], [Declaration style]) 11722b15cb3dSCy Schubert AC_DEFINE([DECL_MEMMOVE_0], [1], [Declaration style]) 11732b15cb3dSCy Schubert AC_DEFINE([DECL_MKTEMP_0], [1], [Declaration style]) 11742b15cb3dSCy Schubert AC_DEFINE([DECL_MKSTEMP_0], [1], [Declaration style]) 11752b15cb3dSCy Schubert AC_DEFINE([DECL_RENAME_0], [1], [Declaration style]) 11762b15cb3dSCy Schubert AC_DEFINE([DECL_SELECT_0], [1], [Declaration style]) 11772b15cb3dSCy Schubert AC_DEFINE([DECL_SETITIMER_0], [1], [Declaration style]) 11782b15cb3dSCy Schubert AC_DEFINE([DECL_SETPRIORITY_0], [1], [Declaration style]) 11792b15cb3dSCy Schubert AC_DEFINE([DECL_SIGVEC_0], [1], [Declaration style]) 1180ea906c41SOllivier Robert case "`basename $ac_cv_prog_CC`" in 1181ea906c41SOllivier Robert acc*) ;; 11822b15cb3dSCy Schubert *) AC_DEFINE([DECL_STDIO_0], [1], [Declaration style]) 1183ea906c41SOllivier Robert ;; 1184ea906c41SOllivier Robert esac 11852b15cb3dSCy Schubert AC_DEFINE([DECL_STRTOL_0], [1], [Declaration style]) 11862b15cb3dSCy Schubert AC_DEFINE([DECL_SYSLOG_0], [1], [Declaration style]) 11872b15cb3dSCy Schubert AC_DEFINE([DECL_TIME_0], [1], [Declaration style]) 11882b15cb3dSCy Schubert AC_DEFINE([DECL_TIMEOFDAY_0], [1], [Declaration style]) 11892b15cb3dSCy Schubert AC_DEFINE([DECL_TOLOWER_0], [1], [Declaration style]) 11902b15cb3dSCy Schubert AC_DEFINE([DECL_TOUPPER_0], [1], [Declaration style]) 11912b15cb3dSCy Schubert AC_DEFINE([DECL_STRERROR_0], [1], [Declaration style]) 1192ea906c41SOllivier Robert ;; 1193ea906c41SOllivier Robert *-*-ultrix4*) 11942b15cb3dSCy Schubert AC_DEFINE([DECL_ADJTIME_0], [1], [Declaration style]) 11952b15cb3dSCy Schubert AC_DEFINE([DECL_BZERO_0], [1], [Declaration style]) 11962b15cb3dSCy Schubert AC_DEFINE([DECL_CFSETISPEED_0], [1], [Declaration style]) 11972b15cb3dSCy Schubert AC_DEFINE([DECL_IOCTL_0], [1], [Declaration style]) 11982b15cb3dSCy Schubert AC_DEFINE([DECL_IPC_0], [1], [Declaration style]) 11992b15cb3dSCy Schubert AC_DEFINE([DECL_MKTEMP_0], [1], [Declaration style]) 12002b15cb3dSCy Schubert AC_DEFINE([DECL_NLIST_0], [1], [Declaration style]) 12012b15cb3dSCy Schubert AC_DEFINE([DECL_PLOCK_0], [1], [Declaration style]) 12022b15cb3dSCy Schubert AC_DEFINE([DECL_SELECT_0], [1], [Declaration style]) 12032b15cb3dSCy Schubert AC_DEFINE([DECL_SETITIMER_0], [1], [Declaration style]) 12042b15cb3dSCy Schubert AC_DEFINE([DECL_SETPRIORITY_0], [1], [Declaration style]) 12052b15cb3dSCy Schubert AC_DEFINE([DECL_STIME_0], [1], [Declaration style]) 12062b15cb3dSCy Schubert AC_DEFINE([DECL_SYSLOG_0], [1], [Declaration style]) 12072b15cb3dSCy Schubert AC_DEFINE([DECL_TIMEOFDAY_0], [1], [Declaration style]) 1208ea906c41SOllivier Robert ;; 1209ea906c41SOllivier Robertesac 1210ea906c41SOllivier Robert 1211ea906c41SOllivier Robertcase "$host" in 1212ea906c41SOllivier Robert *-*-sco3.2*) 12132b15cb3dSCy Schubert AC_DEFINE([TERMIOS_NEEDS__SVID3], [1], 12142b15cb3dSCy Schubert [Do we need to #define _SVID3 when we #include <termios.h>?]) 1215ea906c41SOllivier Robert ;; 1216ea906c41SOllivier Robertesac 1217ea906c41SOllivier Robert 1218ea906c41SOllivier Robertcase "$host" in 1219ea906c41SOllivier Robert *-*-hpux[[567]]*) 12202b15cb3dSCy Schubert AC_DEFINE([NEED_RCVBUF_SLOP], [1], 12212b15cb3dSCy Schubert [Do we need extra room for SO_RCVBUF? (HPUX < 8)]) 1222ea906c41SOllivier Robertesac 1223ea906c41SOllivier Robert 12242b15cb3dSCy Schubertdnl Using AC_CACHE_CHECK to honor preset ntp_cv_var_open_bcast_socket 12252b15cb3dSCy SchubertAC_CACHE_CHECK( 12262b15cb3dSCy Schubert [if we will open the broadcast socket], 12272b15cb3dSCy Schubert [ntp_cv_var_open_bcast_socket], 12282b15cb3dSCy Schubert [ 12292b15cb3dSCy Schubert ans=yes 1230ea906c41SOllivier Robert case "$host" in 1231ea906c41SOllivier Robert *-*-domainos) 1232ea906c41SOllivier Robert ans=no 1233ea906c41SOllivier Robert esac 12342b15cb3dSCy Schubert ntp_cv_var_open_bcast_socket=$ans 12352b15cb3dSCy Schubert ] 12362b15cb3dSCy Schubert) 12372b15cb3dSCy Schubertcase "$ntp_cv_var_open_bcast_socket" in 12382b15cb3dSCy Schubert yes) 12392b15cb3dSCy Schubert AC_DEFINE([OPEN_BCAST_SOCKET], [1], 12402b15cb3dSCy Schubert [Should we open the broadcast socket?]) 1241ea906c41SOllivier Robertesac 1242ea906c41SOllivier Robert 1243ea906c41SOllivier Robertcase "$host" in 1244ea906c41SOllivier Robert *-*-hpux*) 12452b15cb3dSCy Schubert AC_DEFINE([NEED_HPUX_FINDCONFIG], [1], 12462b15cb3dSCy Schubert [Do we want the HPUX FindConfig()?]) 1247ea906c41SOllivier Robertesac 1248ea906c41SOllivier Robert 12492b15cb3dSCy Schubertdnl using AC_CACHE_CHECK to honor preset $ntp_cv_arg_setpgrp_negpid 12502b15cb3dSCy SchubertAC_CACHE_CHECK( 12512b15cb3dSCy Schubert [if process groups are set with -pid], 12522b15cb3dSCy Schubert [ntp_cv_arg_setpgrp_negpid], 12532b15cb3dSCy Schubert [ 12542b15cb3dSCy Schubert case "$host" in 1255ea906c41SOllivier Robert *-*-hpux[[567]]*) 1256ea906c41SOllivier Robert ans=no 1257ea906c41SOllivier Robert ;; 1258ea906c41SOllivier Robert *-*-hpux*) 1259ea906c41SOllivier Robert ans=yes 1260ea906c41SOllivier Robert ;; 1261eb6d21b4SOllivier Robert *-*-*linux*) 1262ea906c41SOllivier Robert ans=yes 1263ea906c41SOllivier Robert ;; 1264ea906c41SOllivier Robert *-*-sunos3*) 1265ea906c41SOllivier Robert ans=yes 1266ea906c41SOllivier Robert ;; 1267ea906c41SOllivier Robert *-*-ultrix2*) 1268ea906c41SOllivier Robert ans=yes 1269ea906c41SOllivier Robert ;; 1270ea906c41SOllivier Robert *) 1271ea906c41SOllivier Robert ans=no 1272ea906c41SOllivier Robert ;; 1273ea906c41SOllivier Robert esac 12742b15cb3dSCy Schubert ntp_cv_arg_setpgrp_negpid=$ans 12752b15cb3dSCy Schubert ] 12762b15cb3dSCy Schubert) 12772b15cb3dSCy Schubertcase "$ntp_cv_arg_setpgrp_negpid" in 12782b15cb3dSCy Schubert yes) 12792b15cb3dSCy Schubert AC_DEFINE([UDP_BACKWARDS_SETOWN], [1], 12802b15cb3dSCy Schubert [Do we set process groups with -pid?]) 1281ea906c41SOllivier Robertesac 1282ea906c41SOllivier Robert 12832b15cb3dSCy SchubertAC_CACHE_CHECK( 12842b15cb3dSCy Schubert [if we need a ctty for F_SETOWN], 12852b15cb3dSCy Schubert [ntp_cv_func_ctty_for_f_setown], 12862b15cb3dSCy Schubert [ 12872b15cb3dSCy Schubert case "$host" in 12882b15cb3dSCy Schubert *-*-bsdi[[23]]*) 1289ea906c41SOllivier Robert ans=yes 1290ea906c41SOllivier Robert ;; 1291ea906c41SOllivier Robert *-*-freebsd*) 1292ea906c41SOllivier Robert ans=yes 1293ea906c41SOllivier Robert ;; 12942b15cb3dSCy Schubert # NetBSD versions prior to 3.99.8 require a CTTY for F_SETOWN, 12952b15cb3dSCy Schubert # while later versions will fail a ioctl(TIOCSCTTY, 0) call in 12962b15cb3dSCy Schubert # some cases and so should not have USE_FSETOWNCTTY. "netbsd" 12972b15cb3dSCy Schubert # in $host may be followed by "aout", "ecoff", or "elf". 12982b15cb3dSCy Schubert *-*-netbsd*[[a-z]]3.[[0-8]]*|*-*-netbsd*[[a-z]][[0-2]].*|*-*-netbsd*[[a-z]]3.99.[[0-7]]) 12992b15cb3dSCy Schubert ans=yes 13002b15cb3dSCy Schubert ;; 13012b15cb3dSCy Schubert *-*-netbsd3.[[0-8]]*|*-*-netbsd[[0-2]].*|*-*-netbsd3.99.[[0-7]]) 1302ea906c41SOllivier Robert ans=yes 1303ea906c41SOllivier Robert ;; 1304ea906c41SOllivier Robert *-*-openbsd*) 1305ea906c41SOllivier Robert ans=yes 1306ea906c41SOllivier Robert ;; 1307ea906c41SOllivier Robert *-*-osf*) 1308ea906c41SOllivier Robert ans=yes 1309ea906c41SOllivier Robert ;; 1310eb6d21b4SOllivier Robert *-*-darwin*) 1311eb6d21b4SOllivier Robert ans=yes 1312eb6d21b4SOllivier Robert ;; 13132b15cb3dSCy Schubert *) 13142b15cb3dSCy Schubert ans=no 1315ea906c41SOllivier Robert ;; 1316ea906c41SOllivier Robert esac 13172b15cb3dSCy Schubert ntp_cv_func_ctty_for_f_setown=$ans 13182b15cb3dSCy Schubert ] 13192b15cb3dSCy Schubert) 13202b15cb3dSCy Schubertcase "$ntp_cv_func_ctty_for_f_setown" in 13212b15cb3dSCy Schubert yes) 13222b15cb3dSCy Schubert AC_DEFINE([USE_FSETOWNCTTY], [1], [Must we have a CTTY for fsetown?]) 1323ea906c41SOllivier Robertesac 1324ea906c41SOllivier Robert 13252b15cb3dSCy SchubertAC_CACHE_CHECK( 13262b15cb3dSCy Schubert [if the OS clears cached routes when more specifics become available], 13272b15cb3dSCy Schubert [ntp_cv_os_routeupdates], 13282b15cb3dSCy Schubert [ 13292b15cb3dSCy Schubert case "$host" in 1330ea906c41SOllivier Robert *-*-netbsd*) 1331ea906c41SOllivier Robert ans=yes 1332ea906c41SOllivier Robert ;; 1333ea906c41SOllivier Robert *) 13342b15cb3dSCy Schubert ans=no 1335ea906c41SOllivier Robert ;; 1336ea906c41SOllivier Robert esac 13372b15cb3dSCy Schubert ntp_cv_os_routeupdates=$ans 13382b15cb3dSCy Schubert ] 13392b15cb3dSCy Schubert) 13402b15cb3dSCy Schubertcase "$ntp_cv_os_routeupdates" in 13412b15cb3dSCy Schubert yes) 13422b15cb3dSCy Schubert AC_DEFINE([OS_MISSES_SPECIFIC_ROUTE_UPDATES], [1], 13432b15cb3dSCy Schubert [need to recreate sockets on changed routing?]) 1344ea906c41SOllivier Robertesac 1345ea906c41SOllivier Robert 13462b15cb3dSCy SchubertAC_CACHE_CHECK( 13472b15cb3dSCy Schubert [if the wildcard socket needs REUSEADDR to bind other addresses], 13482b15cb3dSCy Schubert [ntp_cv_os_wildcardreuse], 13492b15cb3dSCy Schubert [ 13502b15cb3dSCy Schubert case "$host" in 13512b15cb3dSCy Schubert *-*-*linux*) 1352ea906c41SOllivier Robert ans=yes 1353ea906c41SOllivier Robert ;; 1354ea906c41SOllivier Robert *) ans=no 1355ea906c41SOllivier Robert ;; 1356ea906c41SOllivier Robert esac 13572b15cb3dSCy Schubert ntp_cv_os_wildcardreuse=$ans 13582b15cb3dSCy Schubert ] 13592b15cb3dSCy Schubert) 13602b15cb3dSCy Schubertcase "$ntp_cv_os_wildcardreuse" in 1361ea906c41SOllivier Robert yes) 13622b15cb3dSCy Schubert AC_DEFINE([OS_NEEDS_REUSEADDR_FOR_IFADDRBIND], [1], 13632b15cb3dSCy Schubert [wildcard socket needs REUSEADDR to bind interface addresses]) 1364ea906c41SOllivier Robertesac 1365ea906c41SOllivier Robert 1366ea906c41SOllivier Robertcase "$host" in 1367ea906c41SOllivier Robert *-*-aix*) 13682b15cb3dSCy Schubert AC_DEFINE([NLIST_EXTRA_INDIRECTION], [1], 13692b15cb3dSCy Schubert [Might nlist() values require an extra level of indirection (AIX)?]) 1370ea906c41SOllivier Robertesac 1371ea906c41SOllivier Robert 13722b15cb3dSCy SchubertAC_CACHE_CHECK( 13732b15cb3dSCy Schubert [for a minimum recommended value of tickadj], 13742b15cb3dSCy Schubert [ntp_cv_var_min_rec_tickadj], 13752b15cb3dSCy Schubert [ 13762b15cb3dSCy Schubert ans=no 1377ea906c41SOllivier Robert case "$host" in 1378ea906c41SOllivier Robert *-*-aix*) 1379ea906c41SOllivier Robert ans=40 1380ea906c41SOllivier Robert ;; 1381ea906c41SOllivier Robert esac 13822b15cb3dSCy Schubert ntp_cv_var_min_rec_tickadj=$ans 13832b15cb3dSCy Schubert ] 13842b15cb3dSCy Schubert) 13852b15cb3dSCy Schubertcase "$ntp_cv_var_min_rec_tickadj" in 13862b15cb3dSCy Schubert ''|no) 13872b15cb3dSCy Schubert ;; 13882b15cb3dSCy Schubert *) 13892b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([MIN_REC_TICKADJ], [$ntp_cv_var_min_rec_tickadj], 13902b15cb3dSCy Schubert [Should we recommend a minimum value for tickadj?]) 1391ea906c41SOllivier Robertesac 1392ea906c41SOllivier Robert 13932b15cb3dSCy SchubertAC_CACHE_CHECK( 13942b15cb3dSCy Schubert [if the TTY code permits PARENB and IGNPAR], 13952b15cb3dSCy Schubert [ntp_cv_no_parenb_ignpar], 13962b15cb3dSCy Schubert [ 13972b15cb3dSCy Schubert ans=no 1398ea906c41SOllivier Robert case "$host" in 1399eb6d21b4SOllivier Robert i?86-*-*linux*) 1400ea906c41SOllivier Robert ans=yes 1401ea906c41SOllivier Robert ;; 1402ea906c41SOllivier Robert mips-sgi-irix*) 1403ea906c41SOllivier Robert ans=yes 1404ea906c41SOllivier Robert ;; 1405ea906c41SOllivier Robert i?86-*-freebsd[[123]].*) 1406ea906c41SOllivier Robert ;; 1407ea906c41SOllivier Robert i?86-*-freebsd*) 1408ea906c41SOllivier Robert ans=yes 1409ea906c41SOllivier Robert ;; 1410ea906c41SOllivier Robert *-*-unicosmp*) 1411ea906c41SOllivier Robert ans=yes 1412ea906c41SOllivier Robert ;; 1413ea906c41SOllivier Robert esac 14142b15cb3dSCy Schubert ntp_cv_no_parenb_ignpar=$ans 14152b15cb3dSCy Schubert ] 14162b15cb3dSCy Schubert) 14172b15cb3dSCy Schubertcase "$ntp_cv_no_parenb_ignpar" in 14182b15cb3dSCy Schubert yes) 14192b15cb3dSCy Schubert AC_DEFINE([NO_PARENB_IGNPAR], [1], 14202b15cb3dSCy Schubert [Is there a problem using PARENB and IGNPAR?]) 1421ea906c41SOllivier Robertesac 1422ea906c41SOllivier Robert 14232b15cb3dSCy SchubertAC_MSG_CHECKING([if we're including processing time debugging code]) 1424eb6d21b4SOllivier RobertAC_ARG_ENABLE( 14252b15cb3dSCy Schubert [debug-timing], 14262b15cb3dSCy Schubert [AS_HELP_STRING( 14272b15cb3dSCy Schubert [--enable-debug-timing], 14282b15cb3dSCy Schubert [- include processing time debugging code (costs performance)] 14292b15cb3dSCy Schubert )], 14302b15cb3dSCy Schubert [ntp_ok=$enableval], 14312b15cb3dSCy Schubert [ntp_ok=no] 14322b15cb3dSCy Schubert) 14332b15cb3dSCy Schubertcase "$ntp_ok" in 14342b15cb3dSCy Schubert yes) 14352b15cb3dSCy Schubert AC_DEFINE([DEBUG_TIMING], [1], [Enable processing time debugging?]) 14362b15cb3dSCy Schubertesac 14372b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 14382b15cb3dSCy Schubert 14392b15cb3dSCy SchubertAC_MSG_CHECKING([for a the number of minutes in a DST adjustment]) 14402b15cb3dSCy SchubertAC_ARG_ENABLE( 14412b15cb3dSCy Schubert [dst-minutes], 14422b15cb3dSCy Schubert [AS_HELP_STRING( 1443eb6d21b4SOllivier Robert [--enable-dst-minutes], 14442b15cb3dSCy Schubert [=60 minutes per DST adjustment]) dnl @<:@ is [, @:>@ is ] 14452b15cb3dSCy Schubert ], 1446eb6d21b4SOllivier Robert [ans=$enableval], 1447eb6d21b4SOllivier Robert [ans=60] 1448eb6d21b4SOllivier Robert) 14492b15cb3dSCy SchubertAC_DEFINE_UNQUOTED([DSTMINUTES], [$ans], 14502b15cb3dSCy Schubert [The number of minutes in a DST adjustment]) 1451eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 1452ea906c41SOllivier Robert 14532b15cb3dSCy SchubertAC_MSG_CHECKING([if ntpd will retry permanent DNS failures]) 1454eb6d21b4SOllivier RobertAC_ARG_ENABLE( 1455eb6d21b4SOllivier Robert [ignore-dns-errors], 14562b15cb3dSCy Schubert [AS_HELP_STRING( 1457eb6d21b4SOllivier Robert [--enable-ignore-dns-errors], 1458eb6d21b4SOllivier Robert [- retry DNS queries on any error] 14592b15cb3dSCy Schubert )], 1460eb6d21b4SOllivier Robert [ans=$enableval], 1461eb6d21b4SOllivier Robert [ans=no] 1462eb6d21b4SOllivier Robert) 1463eb6d21b4SOllivier Robertcase "$ans" in 1464eb6d21b4SOllivier Robert yes) 14652b15cb3dSCy Schubert AC_DEFINE([IGNORE_DNS_ERRORS], [1], 14662b15cb3dSCy Schubert [Retry queries on _any_ DNS error?]) 1467eb6d21b4SOllivier Robertesac 1468eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 1469eb6d21b4SOllivier Robert 14702b15cb3dSCy SchubertAC_CACHE_CHECK( 14712b15cb3dSCy Schubert [availability of ntp_{adj,get}time()], 14722b15cb3dSCy Schubert [ntp_cv_var_ntp_syscalls], 14732b15cb3dSCy Schubert [ 14742b15cb3dSCy Schubert ntp_cv_var_ntp_syscalls=no 1475ea906c41SOllivier Robert case "$ac_cv_func_ntp_adjtime$ac_cv_func_ntp_gettime$ac_cv_func___adjtimex" in 1476ea906c41SOllivier Robert yesyes*) 14772b15cb3dSCy Schubert ntp_cv_var_ntp_syscalls=libc 1478ea906c41SOllivier Robert ;; 1479ea906c41SOllivier Robert *yes) 14802b15cb3dSCy Schubert ntp_cv_var_ntp_syscalls=inline 1481ea906c41SOllivier Robert ;; 1482ea906c41SOllivier Robert *) 14832b15cb3dSCy Schubert AC_PREPROC_IFELSE( 1484a25439b6SCy Schubert [AC_LANG_SOURCE( 14852b15cb3dSCy Schubert [ 14862b15cb3dSCy Schubert #include <sys/syscall.h> 14872b15cb3dSCy Schubert #if !defined(SYS_ntp_gettime) || !defined(SYS_ntp_adjtime) 14882b15cb3dSCy Schubert # error 1489ea906c41SOllivier Robert #endif 1490a25439b6SCy Schubert ])], 14912b15cb3dSCy Schubert [ntp_cv_var_ntp_syscalls=kernel] 14922b15cb3dSCy Schubert ) 1493ea906c41SOllivier Robert ;; 14942b15cb3dSCy Schubert esac 14952b15cb3dSCy Schubert ] 14962b15cb3dSCy Schubert) 14972b15cb3dSCy Schubertcase "$ntp_cv_var_ntp_syscalls" in 14982b15cb3dSCy Schubert libc) 14992b15cb3dSCy Schubert AC_DEFINE([NTP_SYSCALLS_LIBC], [1], 15002b15cb3dSCy Schubert [Do we have ntp_{adj,get}time in libc?]) 1501ea906c41SOllivier Robert ;; 15022b15cb3dSCy Schubert kernel) 15032b15cb3dSCy Schubert AC_DEFINE([NTP_SYSCALLS_STD], [1], 15042b15cb3dSCy Schubert [Do we have ntp_{adj,get}time in the kernel?]) 1505ea906c41SOllivier Robert ;; 1506ea906c41SOllivier Robertesac 1507ea906c41SOllivier Robert 15082b15cb3dSCy SchubertAC_CACHE_CHECK( 15092b15cb3dSCy Schubert [if sys/timex.h has STA_FLL], 15102b15cb3dSCy Schubert [ntp_cv_var_sta_fll], 15112b15cb3dSCy Schubert [AC_PREPROC_IFELSE( 1512a25439b6SCy Schubert [AC_LANG_SOURCE( 15132b15cb3dSCy Schubert [ 15142b15cb3dSCy Schubert #include <sys/timex.h> 15152b15cb3dSCy Schubert #ifndef STA_FLL 15162b15cb3dSCy Schubert # error 15172b15cb3dSCy Schubert #endif 1518a25439b6SCy Schubert ])], 15192b15cb3dSCy Schubert [ntp_cv_var_sta_fll=yes], 15202b15cb3dSCy Schubert [ntp_cv_var_sta_fll=no] 15212b15cb3dSCy Schubert )] 15222b15cb3dSCy Schubert) 15232b15cb3dSCy Schubert 15242b15cb3dSCy SchubertAC_CACHE_CHECK( 15252b15cb3dSCy Schubert [if we have kernel PLL support], 15262b15cb3dSCy Schubert [ntp_cv_var_kernel_pll], 15272b15cb3dSCy Schubert [dnl ntp_cv_var_ntp_syscalls is {no,libc,kernel} 15282b15cb3dSCy Schubert case "$ac_cv_header_sys_timex_h$ntp_cv_struct_ntptimeval$ntp_cv_var_sta_fll$ntp_cv_var_ntp_syscalls" in 15292b15cb3dSCy Schubert *no*) 15302b15cb3dSCy Schubert ntp_cv_var_kernel_pll=no 15312b15cb3dSCy Schubert ;; 15322b15cb3dSCy Schubert *) ntp_cv_var_kernel_pll=yes 15332b15cb3dSCy Schubert ;; 15342b15cb3dSCy Schubert esac 15352b15cb3dSCy Schubert ] 15362b15cb3dSCy Schubert) 15372b15cb3dSCy Schubertcase "$ntp_cv_var_kernel_pll" in 15382b15cb3dSCy Schubert yes) 15392b15cb3dSCy Schubert AC_DEFINE([KERNEL_PLL], [1], 15402b15cb3dSCy Schubert [Does the kernel support precision time discipline?]) 15412b15cb3dSCy Schubertesac 15422b15cb3dSCy Schubert 15432b15cb3dSCy SchubertAC_CACHE_CHECK( 15442b15cb3dSCy Schubert [if SIOCGIFCONF returns buffer size in the buffer], 15452b15cb3dSCy Schubert [ntp_cv_size_returned_in_buffer], 15462b15cb3dSCy Schubert [ 15472b15cb3dSCy Schubert ans=no 1548ea906c41SOllivier Robert case "$host" in 1549ea906c41SOllivier Robert *-fujitsu-uxp*) 1550ea906c41SOllivier Robert ans=yes 1551ea906c41SOllivier Robert ;; 1552ea906c41SOllivier Robert *-ncr-sysv4*) 1553ea906c41SOllivier Robert ans=yes 1554ea906c41SOllivier Robert ;; 1555ea906c41SOllivier Robert *-univel-sysv*) 1556ea906c41SOllivier Robert ans=yes 1557ea906c41SOllivier Robert ;; 1558ea906c41SOllivier Robert esac 15592b15cb3dSCy Schubert ntp_cv_size_returned_in_buffer=$ans 15602b15cb3dSCy Schubert ] 15612b15cb3dSCy Schubert) 15622b15cb3dSCy Schubertcase "$ntp_cv_size_returned_in_buffer" in 15632b15cb3dSCy Schubert yes) 15642b15cb3dSCy Schubert AC_DEFINE([SIZE_RETURNED_IN_BUFFER], [1], 15652b15cb3dSCy Schubert [Does SIOCGIFCONF return size in the buffer?]) 1566ea906c41SOllivier Robertesac 1567ea906c41SOllivier Robert 1568ea906c41SOllivier Robert# Check for ioctls TIOCGPPSEV 15692b15cb3dSCy SchubertAC_MSG_CHECKING([for TTY PPS ioctl TIOCGPPSEV]) 15702b15cb3dSCy Schubertcase "$ac_cv_header_termios_h" in 15712b15cb3dSCy Schubert yes) 15722b15cb3dSCy Schubert AC_PREPROC_IFELSE( 1573a25439b6SCy Schubert [AC_LANG_SOURCE([ 15742b15cb3dSCy Schubert #include <termios.h> 15752b15cb3dSCy Schubert #ifndef TIOCGPPSEV 15762b15cb3dSCy Schubert # error 1577ea906c41SOllivier Robert #endif 1578a25439b6SCy Schubert ])], 15792b15cb3dSCy Schubert [ntp_ok=yes], 15802b15cb3dSCy Schubert [ntp_ok=no] 15812b15cb3dSCy Schubert ) 15822b15cb3dSCy Schubert ;; 15832b15cb3dSCy Schubert *) 1584ea906c41SOllivier Robert ntp_ok=no 15852b15cb3dSCy Schubert ;; 15862b15cb3dSCy Schubertesac 15872b15cb3dSCy Schubertcase "$ntp_ok" in 15882b15cb3dSCy Schubert yes) 15892b15cb3dSCy Schubert AC_DEFINE([HAVE_TIOCGPPSEV], [1], 15902b15cb3dSCy Schubert [Do we have the TIOCGPPSEV ioctl (Solaris)?]) 15912b15cb3dSCy Schubertesac 15922b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1593ea906c41SOllivier Robert 1594ea906c41SOllivier Robert# Check for ioctls TIOCSPPS 15952b15cb3dSCy SchubertAC_MSG_CHECKING([for TTY PPS ioctl TIOCSPPS]) 15962b15cb3dSCy Schubertcase "$ac_cv_header_termios_h" in 15972b15cb3dSCy Schubert yes) 15982b15cb3dSCy Schubert AC_PREPROC_IFELSE( 1599a25439b6SCy Schubert [AC_LANG_SOURCE([ 16002b15cb3dSCy Schubert #include <termios.h> 16012b15cb3dSCy Schubert #ifndef TIOCSPPS 16022b15cb3dSCy Schubert # error 1603ea906c41SOllivier Robert #endif 1604a25439b6SCy Schubert ])], 16052b15cb3dSCy Schubert [ntp_ok=yes], 16062b15cb3dSCy Schubert [ntp_ok=no] 16072b15cb3dSCy Schubert ) 16082b15cb3dSCy Schubert ;; 16092b15cb3dSCy Schubert *) 1610ea906c41SOllivier Robert ntp_ok=no 16112b15cb3dSCy Schubert ;; 16122b15cb3dSCy Schubertesac 16132b15cb3dSCy Schubertcase "$ntp_ok" in 16142b15cb3dSCy Schubert yes) 16152b15cb3dSCy Schubert AC_DEFINE([HAVE_TIOCSPPS], [1], 16162b15cb3dSCy Schubert [Do we have the TIOCSPPS ioctl (Solaris)?]) 16172b15cb3dSCy Schubertesac 16182b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1619ea906c41SOllivier Robert 1620ea906c41SOllivier Robert# Check for ioctls CIOGETEV 16212b15cb3dSCy SchubertAC_MSG_CHECKING([for TTY PPS ioctl CIOGETEV]) 16222b15cb3dSCy Schubertcase "$ac_cv_header_sys_ppsclock_h" in 16232b15cb3dSCy Schubert yes) 16242b15cb3dSCy Schubert AC_PREPROC_IFELSE( 1625a25439b6SCy Schubert [AC_LANG_SOURCE([ 16262b15cb3dSCy Schubert #include <sys/ppsclock.h> 16272b15cb3dSCy Schubert #ifndef CIOGETEV 16282b15cb3dSCy Schubert # error 1629ea906c41SOllivier Robert #endif 1630a25439b6SCy Schubert ])], 16312b15cb3dSCy Schubert [ntp_ok=yes], 16322b15cb3dSCy Schubert [ntp_ok=no] 16332b15cb3dSCy Schubert ) 16342b15cb3dSCy Schubert ;; 16352b15cb3dSCy Schubert *) 1636ea906c41SOllivier Robert ntp_ok=no 16372b15cb3dSCy Schubert ;; 16382b15cb3dSCy Schubertesac 16392b15cb3dSCy Schubertcase "$ntp_ok" in 16402b15cb3dSCy Schubert yes) 16412b15cb3dSCy Schubert AC_DEFINE([HAVE_CIOGETEV], [1], 16422b15cb3dSCy Schubert [Do we have the CIOGETEV ioctl (SunOS, Linux)?]) 16432b15cb3dSCy Schubertesac 16442b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1645ea906c41SOllivier Robert 1646ea906c41SOllivier Robert# ATOM/PPSAPI stuff. 1647ea906c41SOllivier Robert 16482b15cb3dSCy Schubertntp_atom_ok=yes 1649ea906c41SOllivier Robert 1650ea906c41SOllivier Robert# Check for header timepps.h, if found then we have PPS API (Draft RFC) stuff. 1651ea906c41SOllivier Robert 1652ea906c41SOllivier Robert# The PPSAPI headers need "inline" ($ac_cv_c_inline='inline') 1653ea906c41SOllivier Robert# The PPSAPI needs struct timespec. 1654ea906c41SOllivier Robert# The PPSAPI also needs a timepps header. 1655ea906c41SOllivier Robert 16562b15cb3dSCy Schubertcase "$ac_cv_c_inline$ntp_cv_struct_timespec" in 1657ea906c41SOllivier Robert inlineyes) 1658ea906c41SOllivier Robert case "$ac_cv_header_timepps_h$ac_cv_header_sys_timepps_h$host_os" in 1659ea906c41SOllivier Robert *yes* | *sunos* | *solaris* | *sco* | *netbsd* ) 1660ea906c41SOllivier Robert AC_DEFINE(HAVE_PPSAPI, 1, [Do we have the PPS API per the Draft RFC?]) 16612b15cb3dSCy Schubert ntp_jupiter_ok=yes 16622b15cb3dSCy Schubert ntp_oncore_ok=yes 16632b15cb3dSCy Schubert ntp_parse_ok=yes 16642b15cb3dSCy Schubert ntp_ripe_ncc_ok=yes 1665ea906c41SOllivier Robert ;; 1666ea906c41SOllivier Robert esac 1667ea906c41SOllivier Robert ;; 1668ea906c41SOllivier Robertesac 1669ea906c41SOllivier Robert 1670ea906c41SOllivier Robert# Check for ioctls TIOCGSERIAL, TIOCSSERIAL, ASYNC_PPS_CD_POS, ASYNC_PPS_CD_NEG 16712b15cb3dSCy SchubertAC_CHECK_HEADER([linux/serial.h]) 1672ea906c41SOllivier Robertcase "$ac_cv_header_sys_ppsclock_h$ac_cv_header_linux_serial_h" in 1673ea906c41SOllivier Robert yesyes) 16742b15cb3dSCy Schubert AC_MSG_CHECKING([ioctl TIOCGSERIAL, TIOCSSERIAL, ASYNC_PPS_CD_POS, ASYNC_PPS_CD_NEG]) 16752b15cb3dSCy Schubert AC_PREPROC_IFELSE( 1676a25439b6SCy Schubert [AC_LANG_SOURCE([ 16772b15cb3dSCy Schubert #include <sys/time.h> 1678ea906c41SOllivier Robert typedef int u_int; 1679ea906c41SOllivier Robert #include <sys/ppsclock.h> 1680ea906c41SOllivier Robert #include <linux/serial.h> 1681ea906c41SOllivier Robert 16822b15cb3dSCy Schubert #ifndef TIOCGSERIAL 16832b15cb3dSCy Schubert # error 1684ea906c41SOllivier Robert #endif 16852b15cb3dSCy Schubert #ifndef TIOCSSERIAL 16862b15cb3dSCy Schubert # error 1687ea906c41SOllivier Robert #endif 16882b15cb3dSCy Schubert #ifndef ASYNC_PPS_CD_POS 16892b15cb3dSCy Schubert # error 1690ea906c41SOllivier Robert #endif 16912b15cb3dSCy Schubert #ifndef ASYNC_PPS_CD_NEG 16922b15cb3dSCy Schubert # error 1693ea906c41SOllivier Robert #endif 16942b15cb3dSCy Schubert #ifndef CIOGETEV 16952b15cb3dSCy Schubert # error 1696ea906c41SOllivier Robert #endif 1697a25439b6SCy Schubert ])], 16982b15cb3dSCy Schubert [ntp_ok=yes], 16992b15cb3dSCy Schubert [ntp_ok=no] 17002b15cb3dSCy Schubert ) 17012b15cb3dSCy Schubert AC_MSG_RESULT([$ntp_ok]) 1702ea906c41SOllivier Robert ;; 1703ea906c41SOllivier Robert *) 1704ea906c41SOllivier Robert ntp_ok=no 1705ea906c41SOllivier Robert ;; 1706ea906c41SOllivier Robertesac 17072b15cb3dSCy Schubertcase "$ntp_ok" in 17082b15cb3dSCy Schubert yes) 17092b15cb3dSCy Schubert AC_DEFINE([HAVE_TIO_SERIAL_STUFF], 1, 17102b15cb3dSCy Schubert [Do we have the TIO serial stuff?]) 17112b15cb3dSCy Schubertesac 1712ea906c41SOllivier Robert 1713ea906c41SOllivier Robert# Check for SHMEM_STATUS support 1714eb6d21b4SOllivier RobertAC_MSG_CHECKING([SHMEM_STATUS support]) 1715ea906c41SOllivier Robertcase "$ac_cv_header_sys_mman_h" in 17162b15cb3dSCy Schubert yes) 17172b15cb3dSCy Schubert ntp_ok=yes 17182b15cb3dSCy Schubert ;; 17192b15cb3dSCy Schubert *) 17202b15cb3dSCy Schubert ntp_ok=no 17212b15cb3dSCy Schubert ;; 1722ea906c41SOllivier Robertesac 17232b15cb3dSCy Schubertcase "$ntp_ok" in 17242b15cb3dSCy Schubert yes) 17252b15cb3dSCy Schubert AC_DEFINE([ONCORE_SHMEM_STATUS], [1], 17262b15cb3dSCy Schubert [Do we have support for SHMEM_STATUS?]) 17272b15cb3dSCy Schubertesac 17282b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1729ea906c41SOllivier Robert 1730ea906c41SOllivier Robertntp_refclock=no 1731ea906c41SOllivier Robert 1732ea906c41SOllivier Robert# HPUX only, and by explicit request 1733eb6d21b4SOllivier RobertAC_MSG_CHECKING([Datum/Bancomm bc635/VME interface]) 17342b15cb3dSCy SchubertAC_ARG_ENABLE( 17352b15cb3dSCy Schubert [BANCOMM], 17362b15cb3dSCy Schubert [AS_HELP_STRING( 17372b15cb3dSCy Schubert [--enable-BANCOMM], 17382b15cb3dSCy Schubert [- Datum/Bancomm bc635/VME interface] 17392b15cb3dSCy Schubert )], 17402b15cb3dSCy Schubert [ntp_ok=$enableval], 17412b15cb3dSCy Schubert [ntp_ok=no] 17422b15cb3dSCy Schubert) 17432b15cb3dSCy Schubertcase "$ntp_ok" in 17442b15cb3dSCy Schubert yes) 1745ea906c41SOllivier Robert ntp_refclock=yes 17462b15cb3dSCy Schubert AC_DEFINE([CLOCK_BANC], [1], [Datum/Bancomm bc635/VME interface?]) 1747052d159aSCy Schubert AC_SEARCH_LIBS([bcStartPci], [bcsdk], , , []) 17482b15cb3dSCy Schubert ;; 17492b15cb3dSCy Schubertesac 17502b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1751ea906c41SOllivier Robertcase "$ntp_ok$host" in 1752ea906c41SOllivier Robert yes*-*-hpux*) ;; 1753eb6d21b4SOllivier Robert yes*) AC_MSG_WARN([*** But the expected answer is... no ***]) ;; 1754ea906c41SOllivier Robertesac 1755ea906c41SOllivier Robert 1756ea906c41SOllivier Robert#HPUX only, and only by explicit request 1757eb6d21b4SOllivier RobertAC_MSG_CHECKING([TrueTime GPS receiver/VME interface]) 17582b15cb3dSCy SchubertAC_ARG_ENABLE( 17592b15cb3dSCy Schubert [GPSVME], 17602b15cb3dSCy Schubert [AS_HELP_STRING( 17612b15cb3dSCy Schubert [--enable-GPSVME], 17622b15cb3dSCy Schubert [- TrueTime GPS receiver/VME interface] 17632b15cb3dSCy Schubert )], 17642b15cb3dSCy Schubert [ntp_ok=$enableval], 17652b15cb3dSCy Schubert [ntp_ok=no] 17662b15cb3dSCy Schubert) 17672b15cb3dSCy Schubertcase "$ntp_ok" in 17682b15cb3dSCy Schubert yes) 1769ea906c41SOllivier Robert ntp_refclock=yes 17702b15cb3dSCy Schubert AC_DEFINE([CLOCK_GPSVME], 1, [TrueTime GPS receiver/VME interface?]) 17712b15cb3dSCy Schubert ;; 17722b15cb3dSCy Schubertesac 17732b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1774ea906c41SOllivier Robertcase "$ntp_ok$host" in 1775ea906c41SOllivier Robert yes*-*-hpux*) ;; 1776eb6d21b4SOllivier Robert yes*) AC_MSG_WARN([*** But the expected answer is... no ***]) ;; 1777ea906c41SOllivier Robertesac 1778ea906c41SOllivier Robert 1779eb6d21b4SOllivier RobertAC_MSG_CHECKING([for PCL720 clock support]) 1780ea906c41SOllivier Robertcase "$ac_cv_header_machine_inline_h$ac_cv_header_sys_pcl720_h$ac_cv_header_sys_i8253_h" in 1781ea906c41SOllivier Robert yesyesyes) 17822b15cb3dSCy Schubert AC_DEFINE([CLOCK_PPS720], 1, [PCL 720 clock support]) 1783ea906c41SOllivier Robert ans=yes 1784ea906c41SOllivier Robert ;; 1785ea906c41SOllivier Robert *) 1786ea906c41SOllivier Robert ans=no 1787ea906c41SOllivier Robert ;; 1788ea906c41SOllivier Robertesac 1789eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 1790ea906c41SOllivier Robert 1791eb6d21b4SOllivier RobertAC_MSG_CHECKING([for default inclusion of all suitable non-PARSE clocks]) 17922b15cb3dSCy SchubertAC_ARG_ENABLE( 17932b15cb3dSCy Schubert [all-clocks], 17942b15cb3dSCy Schubert [AS_HELP_STRING( 17952b15cb3dSCy Schubert [--enable-all-clocks], 17962b15cb3dSCy Schubert [+ include all suitable non-PARSE clocks:] 17972b15cb3dSCy Schubert )], 17982b15cb3dSCy Schubert [ntp_eac=$enableval], 17992b15cb3dSCy Schubert [ntp_eac=yes] 18002b15cb3dSCy Schubert) 18012b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_eac]) 1802ea906c41SOllivier Robert 18032b15cb3dSCy Schubert# HMS: Should we also require ntp_parse_ok? 1804eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we have support for PARSE clocks]) 18052b15cb3dSCy Schubertcase "$ntp_atom_ok$ac_cv_header_termio_h$ac_cv_header_termios_h" in 1806ea906c41SOllivier Robert yes*yes*) 1807ea906c41SOllivier Robert ntp_canparse=yes 1808ea906c41SOllivier Robert ;; 1809ea906c41SOllivier Robert *) ntp_canparse=no 1810ea906c41SOllivier Robert ;; 1811ea906c41SOllivier Robertesac 18122b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_canparse]) 1813ea906c41SOllivier Robert 1814ea906c41SOllivier RobertAC_MSG_CHECKING([if we have support for audio clocks]) 1815ea906c41SOllivier Robertcase "$ac_cv_header_sun_audioio_h$ac_cv_header_sys_audioio_h$ac_cv_header_machine_soundcard_h$ac_cv_header_sys_soundcard_h" in 1816ea906c41SOllivier Robert *yes*) 1817ea906c41SOllivier Robert ntp_canaudio=yes 18182b15cb3dSCy Schubert AC_DEFINE([HAVE_AUDIO], [], [Do we have audio support?]) 1819ea906c41SOllivier Robert ;; 1820ea906c41SOllivier Robert *) ntp_canaudio=no ;; 1821ea906c41SOllivier Robertesac 18222b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_canaudio]) 1823ea906c41SOllivier Robert 1824ea906c41SOllivier RobertAC_MSG_CHECKING([if we have support for the SHM refclock interface]) 1825ea906c41SOllivier Robertcase "$ac_cv_header_sys_ipc_h$ac_cv_header_sys_shm_h" in 1826ea906c41SOllivier Robert yesyes) 1827ea906c41SOllivier Robert ntp_canshm=yes 1828ea906c41SOllivier Robert ;; 1829ea906c41SOllivier Robert *) ntp_canshm=no ;; 1830ea906c41SOllivier Robertesac 18312b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_canshm]) 1832ea906c41SOllivier Robert 18332b15cb3dSCy Schubert# Test for termios TIOCMBIS modem control (ACTS, Heath, Palisade) 18342b15cb3dSCy SchubertAC_CACHE_CHECK( 18352b15cb3dSCy Schubert [for termios modem control], 18362b15cb3dSCy Schubert [ntp_cv_modem_control], 18372b15cb3dSCy Schubert [AC_COMPILE_IFELSE( 18382b15cb3dSCy Schubert [AC_LANG_PROGRAM( 18392b15cb3dSCy Schubert [[ 18402b15cb3dSCy Schubert #ifdef HAVE_UNISTD_H 18412b15cb3dSCy Schubert # include <unistd.h> 18422b15cb3dSCy Schubert #endif 18432b15cb3dSCy Schubert #ifdef HAVE_TERMIOS_H 18442b15cb3dSCy Schubert # include <termios.h> 18452b15cb3dSCy Schubert #endif 1846ea906c41SOllivier Robert #ifdef HAVE_SYS_IOCTL_H 1847ea906c41SOllivier Robert # include <sys/ioctl.h> 1848ea906c41SOllivier Robert #endif 18492b15cb3dSCy Schubert ]], 18502b15cb3dSCy Schubert [[ 18512b15cb3dSCy Schubert int dtr = TIOCM_DTR; 18522b15cb3dSCy Schubert 18532b15cb3dSCy Schubert ioctl(1, TIOCMBIS, (char *)&dtr); 18542b15cb3dSCy Schubert ]] 18552b15cb3dSCy Schubert )], 18562b15cb3dSCy Schubert [ntp_cv_modem_control=yes], 18572b15cb3dSCy Schubert [ntp_cv_modem_control=no] 18582b15cb3dSCy Schubert )] 18592b15cb3dSCy Schubert) 18602b15cb3dSCy Schubertcase "$ntp_eac::$ntp_cv_modem_control" in 18612b15cb3dSCy Schubert yes::yes) 18622b15cb3dSCy Schubert ntp_enable_all_modem_control_clocks=yes 18632b15cb3dSCy Schubert ;; 18642b15cb3dSCy Schubert *) 18652b15cb3dSCy Schubert ntp_enable_all_modem_control_clocks=no 18662b15cb3dSCy Schubert ;; 18672b15cb3dSCy Schubertesac 18682b15cb3dSCy Schubert 18692b15cb3dSCy Schubert# Requires modem control 18702b15cb3dSCy SchubertAC_MSG_CHECKING([ACTS modem service]) 18712b15cb3dSCy SchubertAC_ARG_ENABLE( 18722b15cb3dSCy Schubert [ACTS], 18732b15cb3dSCy Schubert [AS_HELP_STRING( 18742b15cb3dSCy Schubert [--enable-ACTS], 18752b15cb3dSCy Schubert [s ACTS modem service] 18762b15cb3dSCy Schubert )], 18772b15cb3dSCy Schubert [ntp_ok=$enableval], 18782b15cb3dSCy Schubert [ntp_ok=$ntp_enable_all_modem_control_clocks] 18792b15cb3dSCy Schubert) 18802b15cb3dSCy Schubertcase "$ntp_ok" in 18812b15cb3dSCy Schubert yes) 1882ea906c41SOllivier Robert ntp_refclock=yes 18832b15cb3dSCy Schubert AC_DEFINE([CLOCK_ACTS], [1], [ACTS modem service]) 18842b15cb3dSCy Schubert ;; 18852b15cb3dSCy Schubertesac 18862b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1887ea906c41SOllivier Robert 1888eb6d21b4SOllivier RobertAC_MSG_CHECKING([Arbiter 1088A/B GPS receiver]) 18892b15cb3dSCy SchubertAC_ARG_ENABLE( 18902b15cb3dSCy Schubert [ARBITER], 18912b15cb3dSCy Schubert [AS_HELP_STRING( 18922b15cb3dSCy Schubert [--enable-ARBITER], 18932b15cb3dSCy Schubert [+ Arbiter 1088A/B GPS receiver] 18942b15cb3dSCy Schubert )], 18952b15cb3dSCy Schubert [ntp_ok=$enableval], 18962b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 18972b15cb3dSCy Schubert) 18982b15cb3dSCy Schubertcase "$ntp_ok" in 18992b15cb3dSCy Schubert yes) 1900ea906c41SOllivier Robert ntp_refclock=yes 19012b15cb3dSCy Schubert AC_DEFINE([CLOCK_ARBITER], [1], [Arbiter 1088A/B GPS receiver]) 19022b15cb3dSCy Schubert ;; 19032b15cb3dSCy Schubertesac 19042b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1905ea906c41SOllivier Robert 1906eb6d21b4SOllivier RobertAC_MSG_CHECKING([Arcron MSF receiver]) 19072b15cb3dSCy SchubertAC_ARG_ENABLE( 19082b15cb3dSCy Schubert [ARCRON_MSF], 19092b15cb3dSCy Schubert [AS_HELP_STRING( 19102b15cb3dSCy Schubert [--enable-ARCRON-MSF], 19112b15cb3dSCy Schubert [+ Arcron MSF receiver] 19122b15cb3dSCy Schubert )], 19132b15cb3dSCy Schubert [ntp_ok=$enableval], 19142b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 19152b15cb3dSCy Schubert) 19162b15cb3dSCy Schubertcase "$ntp_ok" in 19172b15cb3dSCy Schubert yes) 1918ea906c41SOllivier Robert ntp_refclock=yes 19192b15cb3dSCy Schubert AC_DEFINE([CLOCK_ARCRON_MSF], [1], [ARCRON support?]) 19202b15cb3dSCy Schubert ;; 19212b15cb3dSCy Schubertesac 19222b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1923ea906c41SOllivier Robert 1924eb6d21b4SOllivier RobertAC_MSG_CHECKING([Austron 2200A/2201A GPS receiver]) 19252b15cb3dSCy SchubertAC_ARG_ENABLE( 19262b15cb3dSCy Schubert [AS2201], 19272b15cb3dSCy Schubert [AS_HELP_STRING( 19282b15cb3dSCy Schubert [--enable-AS2201], 19292b15cb3dSCy Schubert [+ Austron 2200A/2201A GPS receiver] 19302b15cb3dSCy Schubert )], 19312b15cb3dSCy Schubert [ntp_ok=$enableval], 19322b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 19332b15cb3dSCy Schubert) 19342b15cb3dSCy Schubertcase "$ntp_ok" in 19352b15cb3dSCy Schubert yes) 1936ea906c41SOllivier Robert ntp_refclock=yes 19372b15cb3dSCy Schubert AC_DEFINE([CLOCK_AS2201], [1], [Austron 2200A/2201A GPS receiver?]) 19382b15cb3dSCy Schubert ;; 19392b15cb3dSCy Schubertesac 19402b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1941ea906c41SOllivier Robert 1942eb6d21b4SOllivier RobertAC_MSG_CHECKING([ATOM PPS interface]) 19432b15cb3dSCy SchubertAC_ARG_ENABLE( 19442b15cb3dSCy Schubert [ATOM], 19452b15cb3dSCy Schubert [AS_HELP_STRING( 19462b15cb3dSCy Schubert [--enable-ATOM], 19472b15cb3dSCy Schubert [s ATOM PPS interface] 19482b15cb3dSCy Schubert )], 19492b15cb3dSCy Schubert [ntp_ok=$enableval], 19502b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 19512b15cb3dSCy Schubert) 19522b15cb3dSCy Schubertcase "$ntp_atom_ok" in 1953ea906c41SOllivier Robert no) ntp_ok=no ;; 1954ea906c41SOllivier Robertesac 19552b15cb3dSCy Schubertcase "$ntp_ok" in 19562b15cb3dSCy Schubert yes) 1957ea906c41SOllivier Robert ntp_refclock=yes 19582b15cb3dSCy Schubert AC_DEFINE([CLOCK_ATOM], [1], [PPS interface?]) 19592b15cb3dSCy Schubert ;; 19602b15cb3dSCy Schubertesac 19612b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1962ea906c41SOllivier Robert 1963eb6d21b4SOllivier RobertAC_MSG_CHECKING([Chrono-log K-series WWVB receiver]) 19642b15cb3dSCy SchubertAC_ARG_ENABLE( 19652b15cb3dSCy Schubert [CHRONOLOG], 19662b15cb3dSCy Schubert [AS_HELP_STRING( 19672b15cb3dSCy Schubert [--enable-CHRONOLOG], 19682b15cb3dSCy Schubert [+ Chrono-log K-series WWVB receiver] 19692b15cb3dSCy Schubert )], 19702b15cb3dSCy Schubert [ntp_ok=$enableval], 19712b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 19722b15cb3dSCy Schubert) 19732b15cb3dSCy Schubertcase "$ntp_ok" in 19742b15cb3dSCy Schubert yes) 1975ea906c41SOllivier Robert ntp_refclock=yes 19762b15cb3dSCy Schubert AC_DEFINE([CLOCK_CHRONOLOG], [1], [Chronolog K-series WWVB receiver?]) 19772b15cb3dSCy Schubert ;; 19782b15cb3dSCy Schubertesac 19792b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 1980ea906c41SOllivier Robert 1981eb6d21b4SOllivier RobertAC_MSG_CHECKING([CHU modem/decoder]) 19822b15cb3dSCy SchubertAC_ARG_ENABLE( 19832b15cb3dSCy Schubert [CHU], 19842b15cb3dSCy Schubert [AS_HELP_STRING( 19852b15cb3dSCy Schubert [--enable-CHU], 19862b15cb3dSCy Schubert [+ CHU modem/decoder] 19872b15cb3dSCy Schubert )], 19882b15cb3dSCy Schubert [ntp_ok=$enableval], 19892b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 19902b15cb3dSCy Schubert) 19912b15cb3dSCy Schubertcase "$ntp_ok" in 19922b15cb3dSCy Schubert yes) 1993ea906c41SOllivier Robert ntp_refclock=yes 19942b15cb3dSCy Schubert AC_DEFINE([CLOCK_CHU], [1], [CHU modem/decoder]) 19952b15cb3dSCy Schubert ;; 19962b15cb3dSCy Schubertesac 19972b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 19982b15cb3dSCy Schubertntp_refclock_chu=$ntp_ok 1999ea906c41SOllivier Robert 2000eb6d21b4SOllivier RobertAC_MSG_CHECKING([CHU audio/decoder]) 20012b15cb3dSCy SchubertAC_ARG_ENABLE( 20022b15cb3dSCy Schubert [AUDIO-CHU], 20032b15cb3dSCy Schubert [AS_HELP_STRING( 20042b15cb3dSCy Schubert [--enable-AUDIO-CHU], 20052b15cb3dSCy Schubert [s CHU audio/decoder] 20062b15cb3dSCy Schubert )], 2007ea906c41SOllivier Robert [ntp_ok=$enableval], 20082b15cb3dSCy Schubert [ 20092b15cb3dSCy Schubert case "$ntp_eac$ntp_refclock_chu$ntp_canaudio" in 2010ea906c41SOllivier Robert *no*) ntp_ok=no ;; 2011ea906c41SOllivier Robert *) ntp_ok=yes ;; 20122b15cb3dSCy Schubert esac 20132b15cb3dSCy Schubert ] 20142b15cb3dSCy Schubert) 20152b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2016ea906c41SOllivier Robert# We used to check for sunos/solaris target... 20172b15cb3dSCy Schubertcase "$ntp_ok$ntp_refclock_chu$ntp_canaudio" in 20182b15cb3dSCy Schubert yes*no*) AC_MSG_WARN([*** But the expected answer is...no ***]) 2019ea906c41SOllivier Robertesac 2020ea906c41SOllivier Robert 2021ea906c41SOllivier Robert# Not under HP-UX 2022eb6d21b4SOllivier RobertAC_MSG_CHECKING([Datum Programmable Time System]) 20232b15cb3dSCy SchubertAC_ARG_ENABLE( 20242b15cb3dSCy Schubert [DATUM], 20252b15cb3dSCy Schubert [AS_HELP_STRING( 20262b15cb3dSCy Schubert [--enable-DATUM], 20272b15cb3dSCy Schubert [s Datum Programmable Time System] 20282b15cb3dSCy Schubert )], 2029ea906c41SOllivier Robert [ntp_ok=$enableval], 20302b15cb3dSCy Schubert [ 20312b15cb3dSCy Schubert case "$ac_cv_header_termios_h" in 2032ea906c41SOllivier Robert yes) 2033ea906c41SOllivier Robert ntp_ok=$ntp_eac 2034ea906c41SOllivier Robert ;; 2035ea906c41SOllivier Robert *) ntp_ok=no 2036ea906c41SOllivier Robert ;; 20372b15cb3dSCy Schubert esac 20382b15cb3dSCy Schubert ] 20392b15cb3dSCy Schubert) 20402b15cb3dSCy Schubertcase "$ntp_ok" in 20412b15cb3dSCy Schubert yes) 2042ea906c41SOllivier Robert ntp_refclock=yes 20432b15cb3dSCy Schubert AC_DEFINE([CLOCK_DATUM], [1], [Datum Programmable Time System?]) 20442b15cb3dSCy Schubert ;; 20452b15cb3dSCy Schubertesac 20462b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2047ea906c41SOllivier Robert 2048eb6d21b4SOllivier RobertAC_MSG_CHECKING([Dumb generic hh:mm:ss local clock]) 20492b15cb3dSCy SchubertAC_ARG_ENABLE( 20502b15cb3dSCy Schubert [DUMBCLOCK], 20512b15cb3dSCy Schubert [AS_HELP_STRING( 20522b15cb3dSCy Schubert [--enable-DUMBCLOCK], 20532b15cb3dSCy Schubert [+ Dumb generic hh:mm:ss local clock] 20542b15cb3dSCy Schubert )], 20552b15cb3dSCy Schubert [ntp_ok=$enableval], 20562b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 20572b15cb3dSCy Schubert) 20582b15cb3dSCy Schubertcase "$ntp_ok" in 20592b15cb3dSCy Schubert yes) 2060ea906c41SOllivier Robert ntp_refclock=yes 20612b15cb3dSCy Schubert AC_DEFINE([CLOCK_DUMBCLOCK], [1], [Dumb generic hh:mm:ss local clock?]) 20622b15cb3dSCy Schubert ;; 20632b15cb3dSCy Schubertesac 20642b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2065ea906c41SOllivier Robert 2066eb6d21b4SOllivier RobertAC_MSG_CHECKING([Forum Graphic GPS]) 20672b15cb3dSCy SchubertAC_ARG_ENABLE( 20682b15cb3dSCy Schubert [FG], 20692b15cb3dSCy Schubert [AS_HELP_STRING( 20702b15cb3dSCy Schubert [--enable-FG], 20712b15cb3dSCy Schubert [+ Forum Graphic GPS] 20722b15cb3dSCy Schubert )], 20732b15cb3dSCy Schubert [ntp_ok=$enableval], 20742b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 20752b15cb3dSCy Schubert) 20762b15cb3dSCy Schubertcase "$ntp_ok" in 20772b15cb3dSCy Schubert yes) 2078ea906c41SOllivier Robert ntp_refclock=yes 20792b15cb3dSCy Schubert AC_DEFINE([CLOCK_FG], [1], [Forum Graphic GPS datating station driver?]) 20802b15cb3dSCy Schubert ;; 20812b15cb3dSCy Schubertesac 20822b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2083ea906c41SOllivier Robert 2084ea906c41SOllivier Robert# Requires modem control 2085eb6d21b4SOllivier RobertAC_MSG_CHECKING([Heath GC-1000 WWV/WWVH receiver]) 20862b15cb3dSCy SchubertAC_ARG_ENABLE( 20872b15cb3dSCy Schubert [HEATH], 20882b15cb3dSCy Schubert [AS_HELP_STRING( 20892b15cb3dSCy Schubert [--enable-HEATH], 20902b15cb3dSCy Schubert [s Heath GC-1000 WWV/WWVH receiver] 20912b15cb3dSCy Schubert )], 2092ea906c41SOllivier Robert [ntp_ok=$enableval], 20932b15cb3dSCy Schubert [ntp_ok=$ntp_enable_all_modem_control_clocks] 20942b15cb3dSCy Schubert) 20952b15cb3dSCy Schubertcase "$ntp_ok" in 20962b15cb3dSCy Schubert yes) 2097ea906c41SOllivier Robert ntp_refclock=yes 20982b15cb3dSCy Schubert AC_DEFINE([CLOCK_HEATH], [1], [Heath GC-1000 WWV/WWVH receiver?]) 20992b15cb3dSCy Schubert ;; 21002b15cb3dSCy Schubertesac 21012b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2102ea906c41SOllivier Robert 2103eb6d21b4SOllivier RobertAC_MSG_CHECKING([for hopf serial clock device]) 21042b15cb3dSCy SchubertAC_ARG_ENABLE( 21052b15cb3dSCy Schubert [HOPFSERIAL], 21062b15cb3dSCy Schubert [AS_HELP_STRING( 21072b15cb3dSCy Schubert [--enable-HOPFSERIAL], 21082b15cb3dSCy Schubert [+ hopf serial clock device] 21092b15cb3dSCy Schubert )], 21102b15cb3dSCy Schubert [ntp_ok=$enableval], 21112b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 21122b15cb3dSCy Schubert) 21132b15cb3dSCy Schubertcase "$ntp_ok" in 21142b15cb3dSCy Schubert yes) 2115ea906c41SOllivier Robert ntp_refclock=yes 21162b15cb3dSCy Schubert AC_DEFINE([CLOCK_HOPF_SERIAL], [1], [HOPF serial clock device?]) 21172b15cb3dSCy Schubert ;; 21182b15cb3dSCy Schubertesac 21192b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2120ea906c41SOllivier Robert 2121eb6d21b4SOllivier RobertAC_MSG_CHECKING([for hopf PCI clock 6039]) 21222b15cb3dSCy SchubertAC_ARG_ENABLE( 21232b15cb3dSCy Schubert [HOPFPCI], 21242b15cb3dSCy Schubert [AS_HELP_STRING( 21252b15cb3dSCy Schubert [--enable-HOPFPCI], 21262b15cb3dSCy Schubert [+ hopf 6039 PCI board] 21272b15cb3dSCy Schubert )], 21282b15cb3dSCy Schubert [ntp_ok=$enableval], 21292b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 21302b15cb3dSCy Schubert) 21312b15cb3dSCy Schubertcase "$ntp_ok" in 21322b15cb3dSCy Schubert yes) 2133ea906c41SOllivier Robert ntp_refclock=yes 21342b15cb3dSCy Schubert AC_DEFINE([CLOCK_HOPF_PCI], [1], [HOPF PCI clock device?]) 21352b15cb3dSCy Schubert ;; 21362b15cb3dSCy Schubertesac 21372b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2138ea906c41SOllivier Robert 2139eb6d21b4SOllivier RobertAC_MSG_CHECKING([HP 58503A GPS receiver]) 21402b15cb3dSCy SchubertAC_ARG_ENABLE( 21412b15cb3dSCy Schubert [HPGPS], 21422b15cb3dSCy Schubert [AS_HELP_STRING( 21432b15cb3dSCy Schubert [--enable-HPGPS], 21442b15cb3dSCy Schubert [+ HP 58503A GPS receiver] 21452b15cb3dSCy Schubert )], 21462b15cb3dSCy Schubert [ntp_ok=$enableval], 21472b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 21482b15cb3dSCy Schubert) 21492b15cb3dSCy Schubertcase "$ntp_ok" in 21502b15cb3dSCy Schubert yes) 2151ea906c41SOllivier Robert ntp_refclock=yes 21522b15cb3dSCy Schubert AC_DEFINE([CLOCK_HPGPS], 1, [HP 58503A GPS receiver?]) 21532b15cb3dSCy Schubert ;; 21542b15cb3dSCy Schubertesac 21552b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2156ea906c41SOllivier Robert 2157eb6d21b4SOllivier RobertAC_MSG_CHECKING([IRIG audio decoder]) 21582b15cb3dSCy SchubertAC_ARG_ENABLE( 21592b15cb3dSCy Schubert [IRIG], 21602b15cb3dSCy Schubert [AS_HELP_STRING( 21612b15cb3dSCy Schubert [--enable-IRIG], 21622b15cb3dSCy Schubert [s IRIG audio decoder] 21632b15cb3dSCy Schubert )], 2164ea906c41SOllivier Robert [ntp_ok=$enableval], 21652b15cb3dSCy Schubert [ 21662b15cb3dSCy Schubert case "$ntp_eac$ntp_canaudio" in 2167ea906c41SOllivier Robert *no*) ntp_ok=no ;; 2168ea906c41SOllivier Robert *) ntp_ok=yes ;; 21692b15cb3dSCy Schubert esac 21702b15cb3dSCy Schubert ] 21712b15cb3dSCy Schubert) 21722b15cb3dSCy Schubertcase "$ntp_ok" in 21732b15cb3dSCy Schubert yes) 2174ea906c41SOllivier Robert ntp_refclock=yes 21752b15cb3dSCy Schubert AC_DEFINE([CLOCK_IRIG], [1], [IRIG audio decoder?]) 21762b15cb3dSCy Schubert ;; 21772b15cb3dSCy Schubertesac 21782b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2179ea906c41SOllivier Robertcase "$ntp_ok$ntp_canaudio" in 21802b15cb3dSCy Schubert yesno) AC_MSG_WARN([*** But the expected answer is... no ***]) 2181ea906c41SOllivier Robertesac 2182ea906c41SOllivier Robert 2183eb6d21b4SOllivier RobertAC_MSG_CHECKING([for JJY receiver]) 21842b15cb3dSCy SchubertAC_ARG_ENABLE( 21852b15cb3dSCy Schubert [JJY], 21862b15cb3dSCy Schubert [AS_HELP_STRING( 21872b15cb3dSCy Schubert [--enable-JJY], 21882b15cb3dSCy Schubert [+ JJY receiver] 21892b15cb3dSCy Schubert )], 21902b15cb3dSCy Schubert [ntp_ok=$enableval], 21912b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 21922b15cb3dSCy Schubert) 21932b15cb3dSCy Schubertcase "$ntp_ok" in 21942b15cb3dSCy Schubert yes) 2195ea906c41SOllivier Robert ntp_refclock=yes 21962b15cb3dSCy Schubert AC_DEFINE([CLOCK_JJY], [1], [JJY receiver?]) 21972b15cb3dSCy Schubert ;; 21982b15cb3dSCy Schubertesac 21992b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2200ea906c41SOllivier Robert 2201eb6d21b4SOllivier RobertAC_MSG_CHECKING([Rockwell Jupiter GPS receiver]) 22022b15cb3dSCy SchubertAC_ARG_ENABLE( 22032b15cb3dSCy Schubert [JUPITER], 22042b15cb3dSCy Schubert [AS_HELP_STRING( 22052b15cb3dSCy Schubert [--enable-JUPITER], 22062b15cb3dSCy Schubert [s Rockwell Jupiter GPS receiver] 22072b15cb3dSCy Schubert )], 2208ea906c41SOllivier Robert [ntp_ok=$enableval], [ntp_ok=$ntp_eac]) 22092b15cb3dSCy Schubertcase "$ntp_jupiter_ok" in 2210ea906c41SOllivier Robert no) ntp_ok=no ;; 2211ea906c41SOllivier Robertesac 22122b15cb3dSCy Schubertcase "$ntp_ok" in 22132b15cb3dSCy Schubert yes) 2214ea906c41SOllivier Robert ntp_refclock=yes 22152b15cb3dSCy Schubert AC_DEFINE([CLOCK_JUPITER], [1], [Rockwell Jupiter GPS clock?]) 22162b15cb3dSCy Schubert ;; 22172b15cb3dSCy Schubertesac 22182b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2219ea906c41SOllivier Robert 2220eb6d21b4SOllivier RobertAC_MSG_CHECKING([Leitch CSD 5300 Master Clock System Driver]) 22212b15cb3dSCy SchubertAC_ARG_ENABLE( 22222b15cb3dSCy Schubert [LEITCH], 22232b15cb3dSCy Schubert [AS_HELP_STRING( 22242b15cb3dSCy Schubert [--enable-LEITCH], 22252b15cb3dSCy Schubert [+ Leitch CSD 5300 Master Clock System Driver] 22262b15cb3dSCy Schubert )], 22272b15cb3dSCy Schubert [ntp_ok=$enableval], 22282b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 22292b15cb3dSCy Schubert) 22302b15cb3dSCy Schubertcase "$ntp_ok" in 22312b15cb3dSCy Schubert yes) 2232ea906c41SOllivier Robert ntp_refclock=yes 22332b15cb3dSCy Schubert AC_DEFINE([CLOCK_LEITCH], [1], 22342b15cb3dSCy Schubert [Leitch CSD 5300 Master Clock System Driver?]) 22352b15cb3dSCy Schubert ;; 22362b15cb3dSCy Schubertesac 22372b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2238ea906c41SOllivier Robert 2239eb6d21b4SOllivier RobertAC_MSG_CHECKING([local clock reference]) 22402b15cb3dSCy SchubertAC_ARG_ENABLE( 22412b15cb3dSCy Schubert [LOCAL-CLOCK], 22422b15cb3dSCy Schubert [AS_HELP_STRING( 22432b15cb3dSCy Schubert [--enable-LOCAL-CLOCK], 22442b15cb3dSCy Schubert [+ local clock reference] 22452b15cb3dSCy Schubert )], 22462b15cb3dSCy Schubert [ntp_ok=$enableval], 22472b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 22482b15cb3dSCy Schubert) 22492b15cb3dSCy Schubertcase "$ntp_ok" in 22502b15cb3dSCy Schubert yes) 2251ea906c41SOllivier Robert ntp_refclock=yes 22522b15cb3dSCy Schubert AC_DEFINE([CLOCK_LOCAL], [1], [local clock reference?]) 22532b15cb3dSCy Schubert ;; 22542b15cb3dSCy Schubertesac 22552b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2256ea906c41SOllivier Robert 2257ea906c41SOllivier Robertdnl Bug 340: longstanding unfixed bugs 22582b15cb3dSCy Schubertdnl AC_MSG_CHECKING([EES M201 MSF receiver]) 22592b15cb3dSCy Schubertdnl AC_ARG_ENABLE([MSFEES], 22602b15cb3dSCy Schubertdnl [AS_HELP_STRING([--enable-MSFEES], [+ EES M201 MSF receiver])], 2261ea906c41SOllivier Robertdnl [ntp_ok=$enableval], [ntp_ok=$ntp_eac]) 2262ea906c41SOllivier Robertdnl if test "$ntp_ok" = "yes"; then 2263ea906c41SOllivier Robertdnl ntp_refclock=yes 22642b15cb3dSCy Schubertdnl AC_DEFINE([CLOCK_MSFEES], [1], [EES M201 MSF receiver]) 2265ea906c41SOllivier Robertdnl fi 22662b15cb3dSCy Schubertdnl AC_MSG_RESULT([$ntp_ok]) 2267ea906c41SOllivier Robert 2268ea906c41SOllivier Robert# Not Ultrix 2269eb6d21b4SOllivier RobertAC_MSG_CHECKING([Magnavox MX4200 GPS receiver]) 22702b15cb3dSCy SchubertAC_ARG_ENABLE( 22712b15cb3dSCy Schubert [MX4200], 22722b15cb3dSCy Schubert [AS_HELP_STRING( 22732b15cb3dSCy Schubert [--enable-MX4200 ], 22742b15cb3dSCy Schubert [s Magnavox MX4200 GPS receiver] 22752b15cb3dSCy Schubert )], 2276ea906c41SOllivier Robert [ntp_ok=$enableval], 22772b15cb3dSCy Schubert [ 22782b15cb3dSCy Schubert case "$ac_cv_var_ppsclock" in 2279ea906c41SOllivier Robert yes) 2280ea906c41SOllivier Robert ntp_ok=$ntp_eac 2281ea906c41SOllivier Robert ;; 22822b15cb3dSCy Schubert *) 22832b15cb3dSCy Schubert ntp_ok=no 2284ea906c41SOllivier Robert ;; 22852b15cb3dSCy Schubert esac 22862b15cb3dSCy Schubert ] 22872b15cb3dSCy Schubert) 22882b15cb3dSCy Schubertcase "$ntp_ok" in 22892b15cb3dSCy Schubert yes) 2290ea906c41SOllivier Robert ntp_refclock=yes 22912b15cb3dSCy Schubert AC_DEFINE([CLOCK_MX4200], [1], [Magnavox MX4200 GPS receiver]) 22922b15cb3dSCy Schubert ;; 22932b15cb3dSCy Schubertesac 22942b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 22952b15cb3dSCy Schubertcase "$ntp_ok$host" in 22962b15cb3dSCy Schubert yes*-*-ultrix*) AC_MSG_WARN([*** But the expected answer is... no ***]) 22972b15cb3dSCy Schubertesac 2298ea906c41SOllivier Robert 22992b15cb3dSCy SchubertAC_MSG_CHECKING([for NeoClock4X receiver]) 23002b15cb3dSCy SchubertAC_ARG_ENABLE( 23012b15cb3dSCy Schubert [NEOCLOCK4X], 23022b15cb3dSCy Schubert [AS_HELP_STRING( 23032b15cb3dSCy Schubert [--enable-NEOCLOCK4X], 23042b15cb3dSCy Schubert [+ NeoClock4X DCF77 / TDF receiver] 23052b15cb3dSCy Schubert )], 23062b15cb3dSCy Schubert [ntp_ok=$enableval], 23072b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 23082b15cb3dSCy Schubert) 23092b15cb3dSCy Schubertcase "$ntp_ok" in 23102b15cb3dSCy Schubert yes) 2311ea906c41SOllivier Robert ntp_refclock=yes 23122b15cb3dSCy Schubert AC_DEFINE([CLOCK_NEOCLOCK4X], [1], [NeoClock4X]) 23132b15cb3dSCy Schubert ;; 23142b15cb3dSCy Schubertesac 23152b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2316ea906c41SOllivier Robert 23172b15cb3dSCy SchubertAC_MSG_CHECKING([NMEA GPS receiver]) 23182b15cb3dSCy SchubertAC_ARG_ENABLE( 23192b15cb3dSCy Schubert [NMEA], 23202b15cb3dSCy Schubert [AS_HELP_STRING( 23212b15cb3dSCy Schubert [--enable-NMEA], 23222b15cb3dSCy Schubert [+ NMEA GPS receiver] 23232b15cb3dSCy Schubert )], 23242b15cb3dSCy Schubert [ntp_ok=$enableval], 23252b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 23262b15cb3dSCy Schubert) 23272b15cb3dSCy Schubertcase "$ntp_ok" in 23282b15cb3dSCy Schubert yes) 2329ea906c41SOllivier Robert ntp_refclock=yes 23302b15cb3dSCy Schubert AC_DEFINE([CLOCK_NMEA], [1], [NMEA GPS receiver]) 23312b15cb3dSCy Schubert ;; 23322b15cb3dSCy Schubertesac 23332b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2334ea906c41SOllivier Robert 23352b15cb3dSCy SchubertAC_CHECK_FUNCS([strtoll]) 23362b15cb3dSCy SchubertAC_MSG_CHECKING([for GPSD JSON receiver]) 23372b15cb3dSCy SchubertAC_ARG_ENABLE( 23382b15cb3dSCy Schubert [GPSD], 23392b15cb3dSCy Schubert [AS_HELP_STRING( 23402b15cb3dSCy Schubert [--enable-GPSD], 23412b15cb3dSCy Schubert [+ GPSD JSON receiver] 23422b15cb3dSCy Schubert )], 23432b15cb3dSCy Schubert [ntp_ok=$enableval], 23442b15cb3dSCy Schubert [case "$ac_cv_func_strtoll" in 23452b15cb3dSCy Schubert yes) ntp_ok=$ntp_eac ;; 23462b15cb3dSCy Schubert *) ntp_ok="no" ;; 23472b15cb3dSCy Schubert esac] 23482b15cb3dSCy Schubert) 23492b15cb3dSCy Schubertcase "$ntp_ok" in 23502b15cb3dSCy Schubert yes) 23512b15cb3dSCy Schubert ntp_refclock=yes 23522b15cb3dSCy Schubert AC_DEFINE([CLOCK_GPSDJSON], [1], [GPSD JSON receiver]) 23532b15cb3dSCy Schubert ;; 23542b15cb3dSCy Schubertesac 23552b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 23562b15cb3dSCy Schubert 23572b15cb3dSCy SchubertAC_MSG_CHECKING([for ONCORE Motorola VP/UT Oncore GPS]) 23582b15cb3dSCy SchubertAC_ARG_ENABLE( 23592b15cb3dSCy Schubert [ONCORE], 23602b15cb3dSCy Schubert [AS_HELP_STRING( 23612b15cb3dSCy Schubert [--enable-ONCORE], 23622b15cb3dSCy Schubert [s Motorola VP/UT Oncore GPS receiver] 23632b15cb3dSCy Schubert )], 23642b15cb3dSCy Schubert [ntp_ok=$enableval], 23652b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 23662b15cb3dSCy Schubert) 23672b15cb3dSCy Schubertcase "$ntp_oncore_ok" in 2368ea906c41SOllivier Robert no) ntp_ok=no ;; 2369ea906c41SOllivier Robertesac 23702b15cb3dSCy Schubertcase "$ntp_ok" in 23712b15cb3dSCy Schubert yes) 2372ea906c41SOllivier Robert ntp_refclock=yes 23732b15cb3dSCy Schubert AC_DEFINE([CLOCK_ONCORE], 1, [Motorola UT Oncore GPS]) 23742b15cb3dSCy Schubert ;; 23752b15cb3dSCy Schubertesac 23762b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 23772b15cb3dSCy Schubert 23782b15cb3dSCy Schubert# Requires modem control 23792b15cb3dSCy SchubertAC_MSG_CHECKING([for Palisade clock]) 23802b15cb3dSCy SchubertAC_ARG_ENABLE( 23812b15cb3dSCy Schubert [PALISADE], 23822b15cb3dSCy Schubert [AS_HELP_STRING( 23832b15cb3dSCy Schubert [--enable-PALISADE], 23842b15cb3dSCy Schubert [s Palisade clock] 23852b15cb3dSCy Schubert )], 23862b15cb3dSCy Schubert [ntp_ok=$enableval], 23872b15cb3dSCy Schubert [ntp_ok=$ntp_enable_all_modem_control_clocks] 23882b15cb3dSCy Schubert) 23892b15cb3dSCy Schubertcase "$ntp_ok" in 23902b15cb3dSCy Schubert yes) 23912b15cb3dSCy Schubert ntp_refclock=yes 23922b15cb3dSCy Schubert AC_DEFINE([CLOCK_PALISADE], [1], [Palisade clock]) 23932b15cb3dSCy Schubert ;; 23942b15cb3dSCy Schubertesac 23952b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 23962b15cb3dSCy Schubert 23972b15cb3dSCy SchubertAC_MSG_CHECKING([Conrad parallel port radio clock]) 23982b15cb3dSCy SchubertAC_ARG_ENABLE( 23992b15cb3dSCy Schubert [PCF], 24002b15cb3dSCy Schubert [AS_HELP_STRING( 24012b15cb3dSCy Schubert [--enable-PCF ], 24022b15cb3dSCy Schubert [+ Conrad parallel port radio clock] 24032b15cb3dSCy Schubert )], 24042b15cb3dSCy Schubert [ntp_ok=$enableval], 24052b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 24062b15cb3dSCy Schubert) 24072b15cb3dSCy Schubertcase "$ntp_ok" in 24082b15cb3dSCy Schubert yes) 24092b15cb3dSCy Schubert ntp_refclock=yes 24102b15cb3dSCy Schubert AC_DEFINE([CLOCK_PCF], [1], [Conrad parallel port radio clock]) 24112b15cb3dSCy Schubert ;; 24122b15cb3dSCy Schubertesac 24132b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 24142b15cb3dSCy Schubert 24152b15cb3dSCy SchubertAC_MSG_CHECKING([PST/Traconex 1020 WWV/WWVH receiver]) 24162b15cb3dSCy SchubertAC_ARG_ENABLE( 24172b15cb3dSCy Schubert [PST], 24182b15cb3dSCy Schubert [AS_HELP_STRING( 24192b15cb3dSCy Schubert [--enable-PST], 24202b15cb3dSCy Schubert [+ PST/Traconex 1020 WWV/WWVH receiver] 24212b15cb3dSCy Schubert )], 24222b15cb3dSCy Schubert [ntp_ok=$enableval], 24232b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 24242b15cb3dSCy Schubert) 24252b15cb3dSCy Schubertcase "$ntp_ok" in 24262b15cb3dSCy Schubert yes) 24272b15cb3dSCy Schubert ntp_refclock=yes 24282b15cb3dSCy Schubert AC_DEFINE([CLOCK_PST], [1], [PST/Traconex 1020 WWV/WWVH receiver]) 24292b15cb3dSCy Schubert ;; 24302b15cb3dSCy Schubertesac 24312b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 24322b15cb3dSCy Schubert 24332b15cb3dSCy SchubertAC_MSG_CHECKING([RIPENCC specific Trimble driver]) 24342b15cb3dSCy SchubertAC_ARG_ENABLE( 24352b15cb3dSCy Schubert [RIPENCC], 24362b15cb3dSCy Schubert [AS_HELP_STRING( 24372b15cb3dSCy Schubert [--enable-RIPENCC], 24382b15cb3dSCy Schubert [- RIPENCC specific Trimble driver] 24392b15cb3dSCy Schubert )], 24402b15cb3dSCy Schubert [ntp_ok=$enableval], 24412b15cb3dSCy Schubert [ntp_ok=no] 24422b15cb3dSCy Schubert) 24432b15cb3dSCy Schubert# 020629: HMS: s/$ntp_eac -> -/no because of ptr += sprintf(ptr, ...) usage 24442b15cb3dSCy Schubertcase "$ntp_ripe_ncc_ok" in 24452b15cb3dSCy Schubert no) ntp_ok=no ;; 24462b15cb3dSCy Schubertesac 24472b15cb3dSCy Schubertcase "$ntp_ok" in 24482b15cb3dSCy Schubert yes) 24492b15cb3dSCy Schubert ntp_refclock=yes 24502b15cb3dSCy Schubert AC_DEFINE([CLOCK_RIPENCC], [],[RIPE NCC Trimble clock]) 24512b15cb3dSCy Schubert ;; 24522b15cb3dSCy Schubertesac 24532b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2454ea906c41SOllivier Robert 2455ea906c41SOllivier Robert# Danny Meyer says SHM compiles (with a few warnings) under Win32. 2456ea906c41SOllivier Robert# For *IX, we need sys/ipc.h and sys/shm.h. 2457eb6d21b4SOllivier RobertAC_MSG_CHECKING([for SHM clock attached thru shared memory]) 24582b15cb3dSCy SchubertAC_ARG_ENABLE( 24592b15cb3dSCy Schubert [SHM], 24602b15cb3dSCy Schubert [AS_HELP_STRING( 24612b15cb3dSCy Schubert [--enable-SHM], 24622b15cb3dSCy Schubert [s SHM clock attached thru shared memory] 24632b15cb3dSCy Schubert )], 2464ea906c41SOllivier Robert [ntp_ok=$enableval], 24652b15cb3dSCy Schubert [ 24662b15cb3dSCy Schubert case "$ntp_eac$ntp_canshm" in 2467ea906c41SOllivier Robert *no*) ntp_ok=no ;; 2468ea906c41SOllivier Robert *) ntp_ok=yes ;; 24692b15cb3dSCy Schubert esac 24702b15cb3dSCy Schubert ] 24712b15cb3dSCy Schubert) 24722b15cb3dSCy Schubertcase "$ntp_ok" in 24732b15cb3dSCy Schubert yes) 2474ea906c41SOllivier Robert ntp_refclock=yes 24752b15cb3dSCy Schubert AC_DEFINE([CLOCK_SHM], [1], [clock thru shared memory]) 24762b15cb3dSCy Schubert ;; 24772b15cb3dSCy Schubertesac 24782b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2479ea906c41SOllivier Robert 2480eb6d21b4SOllivier RobertAC_MSG_CHECKING([Spectracom 8170/Netclock/2 WWVB receiver]) 24812b15cb3dSCy SchubertAC_ARG_ENABLE( 24822b15cb3dSCy Schubert [SPECTRACOM], 24832b15cb3dSCy Schubert [AS_HELP_STRING( 24842b15cb3dSCy Schubert [--enable-SPECTRACOM], 24852b15cb3dSCy Schubert [+ Spectracom 8170/Netclock/2 WWVB receiver] 24862b15cb3dSCy Schubert )], 24872b15cb3dSCy Schubert [ntp_ok=$enableval], 24882b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 24892b15cb3dSCy Schubert) 24902b15cb3dSCy Schubertcase "$ntp_ok" in 24912b15cb3dSCy Schubert yes) 2492ea906c41SOllivier Robert ntp_refclock=yes 24932b15cb3dSCy Schubert AC_DEFINE([CLOCK_SPECTRACOM], [1], 24942b15cb3dSCy Schubert [Spectracom 8170/Netclock/2 WWVB receiver]) 24952b15cb3dSCy Schubert ;; 24962b15cb3dSCy Schubertesac 24972b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2498ea906c41SOllivier Robert 2499eb6d21b4SOllivier RobertAC_MSG_CHECKING([KSI/Odetics TPRO/S GPS receiver/IRIG interface]) 25002b15cb3dSCy SchubertAC_ARG_ENABLE( 25012b15cb3dSCy Schubert [TPRO], 25022b15cb3dSCy Schubert [AS_HELP_STRING( 25032b15cb3dSCy Schubert [--enable-TPRO], 25042b15cb3dSCy Schubert [s KSI/Odetics TPRO/S GPS receiver/IRIG interface] 25052b15cb3dSCy Schubert )], 2506ea906c41SOllivier Robert [ntp_ok=$enableval], 25072b15cb3dSCy Schubert [ 25082b15cb3dSCy Schubert case "$ac_cv_header_sys_tpro_h" in 2509ea906c41SOllivier Robert yes) 2510ea906c41SOllivier Robert ntp_ok=$ntp_eac 2511ea906c41SOllivier Robert ;; 25122b15cb3dSCy Schubert *) 25132b15cb3dSCy Schubert ntp_ok=no 2514ea906c41SOllivier Robert ;; 2515ea906c41SOllivier Robert esac 25162b15cb3dSCy Schubert ] 25172b15cb3dSCy Schubert) 25182b15cb3dSCy Schubertcase "$ntp_ok" in 25192b15cb3dSCy Schubert yes) 25202b15cb3dSCy Schubert ntp_refclock=yes 25212b15cb3dSCy Schubert AC_DEFINE([CLOCK_TPRO], [1], 25222b15cb3dSCy Schubert [KSI/Odetics TPRO/S GPS receiver/IRIG interface]) 25232b15cb3dSCy Schubert ;; 25242b15cb3dSCy Schubertesac 25252b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 25262b15cb3dSCy Schubertcase "$ntp_ok$ac_cv_header_sys_tpro" in 25272b15cb3dSCy Schubert yesno) AC_MSG_WARN([*** But the expected answer is... no ***]) 25282b15cb3dSCy Schubertesac 2529ea906c41SOllivier Robert 2530ea906c41SOllivier Robert# Not on a vax-dec-bsd 2531eb6d21b4SOllivier RobertAC_MSG_CHECKING([Kinemetrics/TrueTime receivers]) 25322b15cb3dSCy SchubertAC_ARG_ENABLE( 25332b15cb3dSCy Schubert [TRUETIME], 25342b15cb3dSCy Schubert [AS_HELP_STRING( 25352b15cb3dSCy Schubert [--enable-TRUETIME], 25362b15cb3dSCy Schubert [s Kinemetrics/TrueTime receivers] 25372b15cb3dSCy Schubert )], 2538ea906c41SOllivier Robert [ntp_ok=$enableval], 25392b15cb3dSCy Schubert [ 25402b15cb3dSCy Schubert case "$host" in 2541ea906c41SOllivier Robert vax-dec-bsd) 2542ea906c41SOllivier Robert ntp_ok=no 2543ea906c41SOllivier Robert ;; 2544ea906c41SOllivier Robert *) 2545ea906c41SOllivier Robert ntp_ok=$ntp_eac 2546ea906c41SOllivier Robert ;; 25472b15cb3dSCy Schubert esac 25482b15cb3dSCy Schubert ] 25492b15cb3dSCy Schubert) 25502b15cb3dSCy Schubertcase "$ntp_ok" in 25512b15cb3dSCy Schubert yes) 2552ea906c41SOllivier Robert ntp_refclock=yes 25532b15cb3dSCy Schubert AC_DEFINE([CLOCK_TRUETIME], [1], [Kinemetrics/TrueTime receivers]) 25542b15cb3dSCy Schubert ;; 25552b15cb3dSCy Schubertesac 25562b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2557ea906c41SOllivier Robertcase "$ntp_ok$host" in 25582b15cb3dSCy Schubert yesvax-dec-bsd) AC_MSG_WARN([*** But the expected answer is... no ***]) 2559ea906c41SOllivier Robertesac 2560ea906c41SOllivier Robert 2561eb6d21b4SOllivier RobertAC_MSG_CHECKING([TrueTime 560 IRIG-B decoder]) 25622b15cb3dSCy SchubertAC_ARG_ENABLE( 25632b15cb3dSCy Schubert [TT560], 25642b15cb3dSCy Schubert [AS_HELP_STRING( 25652b15cb3dSCy Schubert [--enable-TT560], 25662b15cb3dSCy Schubert [- TrueTime 560 IRIG-B decoder] 25672b15cb3dSCy Schubert )], 25682b15cb3dSCy Schubert [ntp_ok=$enableval], 25692b15cb3dSCy Schubert [ntp_ok=no] 25702b15cb3dSCy Schubert) 25712b15cb3dSCy Schubertcase "$ntp_ok" in 25722b15cb3dSCy Schubert yes) 2573ea906c41SOllivier Robert ntp_refclock=yes 25742b15cb3dSCy Schubert AC_DEFINE([CLOCK_TT560], [], [TrueTime 560 IRIG-B decoder?]) 25752b15cb3dSCy Schubert ;; 25762b15cb3dSCy Schubertesac 25772b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2578ea906c41SOllivier Robert 2579eb6d21b4SOllivier RobertAC_MSG_CHECKING([Ultralink M320 WWVB receiver]) 25802b15cb3dSCy SchubertAC_ARG_ENABLE( 25812b15cb3dSCy Schubert [ULINK], 25822b15cb3dSCy Schubert [AS_HELP_STRING( 25832b15cb3dSCy Schubert [--enable-ULINK], 25842b15cb3dSCy Schubert [+ Ultralink WWVB receiver] 25852b15cb3dSCy Schubert )], 25862b15cb3dSCy Schubert [ntp_ok=$enableval], 25872b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 25882b15cb3dSCy Schubert) 25892b15cb3dSCy Schubertcase "$ntp_ok" in 25902b15cb3dSCy Schubert yes) 2591ea906c41SOllivier Robert ntp_refclock=yes 25922b15cb3dSCy Schubert AC_DEFINE([CLOCK_ULINK], [1], [Ultralink M320 WWVB receiver?]) 25932b15cb3dSCy Schubert ;; 25942b15cb3dSCy Schubertesac 25952b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 25962b15cb3dSCy Schubert 25972b15cb3dSCy SchubertAC_MSG_CHECKING([Spectracom TSYNC PCI timing board]) 25982b15cb3dSCy SchubertAC_ARG_ENABLE( 25992b15cb3dSCy Schubert [TSYNCPCI], 26002b15cb3dSCy Schubert [AS_HELP_STRING( 26012b15cb3dSCy Schubert [--enable-TSYNCPCI], 26022b15cb3dSCy Schubert [s Spectracom TSYNC timing board] 26032b15cb3dSCy Schubert )], 26042b15cb3dSCy Schubert [ntp_ok=$enableval], 26052b15cb3dSCy Schubert [ 26062b15cb3dSCy Schubert case "$host" in 26072b15cb3dSCy Schubert *-*-*linux*) 26082b15cb3dSCy Schubert ntp_ok=$ntp_eac 26092b15cb3dSCy Schubert ;; 26102b15cb3dSCy Schubert *) 26112b15cb3dSCy Schubert ntp_ok=no 26122b15cb3dSCy Schubert esac 26132b15cb3dSCy Schubert ] 26142b15cb3dSCy Schubert) 26152b15cb3dSCy Schubertcase "$ntp_ok" in 26162b15cb3dSCy Schubert yes) 26172b15cb3dSCy Schubert ntp_refclock=yes 26182b15cb3dSCy Schubert AC_DEFINE([CLOCK_TSYNCPCI], [1], [Spectracom TSYNC timing board]) 26192b15cb3dSCy Schubert ;; 26202b15cb3dSCy Schubertesac 26212b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2622ea906c41SOllivier Robert 2623eb6d21b4SOllivier RobertAC_MSG_CHECKING([WWV receiver]) 26242b15cb3dSCy SchubertAC_ARG_ENABLE( 26252b15cb3dSCy Schubert [WWV], 26262b15cb3dSCy Schubert [AS_HELP_STRING( 26272b15cb3dSCy Schubert [--enable-WWV], 26282b15cb3dSCy Schubert [s WWV Audio receiver] 26292b15cb3dSCy Schubert )], 2630ea906c41SOllivier Robert [ntp_ok=$enableval], 26312b15cb3dSCy Schubert [ 26322b15cb3dSCy Schubert case "$ntp_eac$ntp_canaudio" in 2633ea906c41SOllivier Robert *no*) ntp_ok=no ;; 2634ea906c41SOllivier Robert *) ntp_ok=yes ;; 26352b15cb3dSCy Schubert esac 26362b15cb3dSCy Schubert ] 26372b15cb3dSCy Schubert) 26382b15cb3dSCy Schubertcase "$ntp_ok" in 26392b15cb3dSCy Schubert yes) 2640ea906c41SOllivier Robert ntp_refclock=yes 26412b15cb3dSCy Schubert AC_DEFINE([CLOCK_WWV], [1], [WWV audio driver]) 26422b15cb3dSCy Schubert ;; 26432b15cb3dSCy Schubertesac 26442b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2645ea906c41SOllivier Robertcase "$ntp_ok$ntp_canaudio" in 26462b15cb3dSCy Schubert yesno) AC_MSG_WARN([*** But the expected answer is... no ***]) 2647ea906c41SOllivier Robertesac 2648ea906c41SOllivier Robert 2649eb6d21b4SOllivier RobertAC_MSG_CHECKING([for Zyfer receiver]) 26502b15cb3dSCy SchubertAC_ARG_ENABLE( 26512b15cb3dSCy Schubert [ZYFER], 26522b15cb3dSCy Schubert [AS_HELP_STRING( 26532b15cb3dSCy Schubert [--enable-ZYFER], 26542b15cb3dSCy Schubert [+ Zyfer GPStarplus receiver] 26552b15cb3dSCy Schubert )], 26562b15cb3dSCy Schubert [ntp_ok=$enableval], 26572b15cb3dSCy Schubert [ntp_ok=$ntp_eac] 26582b15cb3dSCy Schubert) 26592b15cb3dSCy Schubertcase "$ntp_ok" in 26602b15cb3dSCy Schubert yes) 2661ea906c41SOllivier Robert ntp_refclock=yes 26622b15cb3dSCy Schubert AC_DEFINE([CLOCK_ZYFER], [1], [Zyfer GPStarplus]) 26632b15cb3dSCy Schubert ;; 26642b15cb3dSCy Schubertesac 26652b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2666ea906c41SOllivier Robert 2667eb6d21b4SOllivier RobertAC_MSG_CHECKING([for default inclusion of all suitable PARSE clocks]) 26682b15cb3dSCy SchubertAC_ARG_ENABLE( 26692b15cb3dSCy Schubert [parse-clocks], 26702b15cb3dSCy Schubert [AS_HELP_STRING( 26712b15cb3dSCy Schubert [--enable-parse-clocks], 26722b15cb3dSCy Schubert [- include all suitable PARSE clocks:] 26732b15cb3dSCy Schubert )], 2674ea906c41SOllivier Robert [ntp_eapc=$enableval], 26752b15cb3dSCy Schubert [ 26762b15cb3dSCy Schubert case "$ntp_eac" in 2677ea906c41SOllivier Robert yes) ntp_eapc=$ntp_canparse ;; 2678ea906c41SOllivier Robert *) ntp_eapc=no ;; 2679ea906c41SOllivier Robert esac 2680ea906c41SOllivier Robert # Delete the next line one of these days 26812b15cb3dSCy Schubert ntp_eapc=no 26822b15cb3dSCy Schubert ] 26832b15cb3dSCy Schubert) 2684ea906c41SOllivier RobertAC_MSG_RESULT($ntp_eapc) 2685ea906c41SOllivier Robert 2686ea906c41SOllivier Robertcase "$ntp_eac$ntp_eapc$ntp_canparse" in 2687ea906c41SOllivier Robert noyes*) 2688eb6d21b4SOllivier Robert AC_MSG_ERROR(["--enable-parse-clocks" requires "--enable-all-clocks".]) 2689ea906c41SOllivier Robert ;; 2690ea906c41SOllivier Robert yesyesno) 2691eb6d21b4SOllivier Robert AC_MSG_ERROR([You said "--enable-parse-clocks" but PARSE isn't supported on this platform!]) 2692ea906c41SOllivier Robert ;; 2693ea906c41SOllivier Robertesac 2694ea906c41SOllivier Robert 2695ea906c41SOllivier Robertntp_libparse=no 2696ea906c41SOllivier Robertntp_parseutil=no 2697ea906c41SOllivier Robertntp_rawdcf=no 2698ea906c41SOllivier Robert 2699eb6d21b4SOllivier RobertAC_MSG_CHECKING([Diem Computime Radio Clock]) 27002b15cb3dSCy SchubertAC_ARG_ENABLE( 27012b15cb3dSCy Schubert [COMPUTIME], 27022b15cb3dSCy Schubert [AS_HELP_STRING( 27032b15cb3dSCy Schubert [--enable-COMPUTIME], 27042b15cb3dSCy Schubert [s Diem Computime Radio Clock] 27052b15cb3dSCy Schubert )], 27062b15cb3dSCy Schubert [ntp_ok=$enableval], 27072b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 27082b15cb3dSCy Schubert) 27092b15cb3dSCy Schubertcase "$ntp_ok" in 27102b15cb3dSCy Schubert yes) 2711ea906c41SOllivier Robert ntp_libparse=yes 2712ea906c41SOllivier Robert ntp_refclock=yes 27132b15cb3dSCy Schubert AC_DEFINE([CLOCK_COMPUTIME], [1], [Diems Computime Radio Clock?]) 27142b15cb3dSCy Schubert ;; 27152b15cb3dSCy Schubertesac 27162b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2717ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2718ea906c41SOllivier Robert yesno) 2719eb6d21b4SOllivier Robert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 2720ea906c41SOllivier Robertesac 2721ea906c41SOllivier Robert 2722eb6d21b4SOllivier RobertAC_MSG_CHECKING([ELV/DCF7000 clock]) 27232b15cb3dSCy SchubertAC_ARG_ENABLE( 27242b15cb3dSCy Schubert [DCF7000], 27252b15cb3dSCy Schubert [AS_HELP_STRING( 27262b15cb3dSCy Schubert [--enable-DCF7000], 27272b15cb3dSCy Schubert [s ELV/DCF7000 clock] 27282b15cb3dSCy Schubert )], 27292b15cb3dSCy Schubert [ntp_ok=$enableval], 27302b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 27312b15cb3dSCy Schubert) 27322b15cb3dSCy Schubertcase "$ntp_ok" in 27332b15cb3dSCy Schubert yes) 2734ea906c41SOllivier Robert ntp_libparse=yes 2735ea906c41SOllivier Robert ntp_refclock=yes 27362b15cb3dSCy Schubert AC_DEFINE([CLOCK_DCF7000], [1], [ELV/DCF7000 clock?]) 27372b15cb3dSCy Schubert ;; 27382b15cb3dSCy Schubertesac 27392b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2740ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2741ea906c41SOllivier Robert yesno) 2742eb6d21b4SOllivier Robert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 2743ea906c41SOllivier Robertesac 2744ea906c41SOllivier Robert 2745eb6d21b4SOllivier RobertAC_MSG_CHECKING([HOPF 6021 clock]) 27462b15cb3dSCy SchubertAC_ARG_ENABLE( 27472b15cb3dSCy Schubert [HOPF6021], 27482b15cb3dSCy Schubert [AS_HELP_STRING( 27492b15cb3dSCy Schubert [--enable-HOPF6021], 27502b15cb3dSCy Schubert [s HOPF 6021 clock] 27512b15cb3dSCy Schubert )], 27522b15cb3dSCy Schubert [ntp_ok=$enableval], 27532b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 27542b15cb3dSCy Schubert) 27552b15cb3dSCy Schubertcase "$ntp_ok" in 27562b15cb3dSCy Schubert yes) 2757ea906c41SOllivier Robert ntp_libparse=yes 2758ea906c41SOllivier Robert ntp_refclock=yes 27592b15cb3dSCy Schubert AC_DEFINE([CLOCK_HOPF6021], [1], [HOPF 6021 clock?]) 27602b15cb3dSCy Schubert ;; 27612b15cb3dSCy Schubertesac 27622b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2763ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2764ea906c41SOllivier Robert yesno) 2765eb6d21b4SOllivier Robert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 2766ea906c41SOllivier Robertesac 2767ea906c41SOllivier Robert 2768eb6d21b4SOllivier RobertAC_MSG_CHECKING([Meinberg clocks]) 27692b15cb3dSCy SchubertAC_ARG_ENABLE( 27702b15cb3dSCy Schubert [MEINBERG], 27712b15cb3dSCy Schubert [AS_HELP_STRING( 27722b15cb3dSCy Schubert [--enable-MEINBERG], 27732b15cb3dSCy Schubert [s Meinberg clocks] 27742b15cb3dSCy Schubert )], 27752b15cb3dSCy Schubert [ntp_ok=$enableval], 27762b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 27772b15cb3dSCy Schubert) 27782b15cb3dSCy Schubertcase "$ntp_ok" in 27792b15cb3dSCy Schubert yes) 2780ea906c41SOllivier Robert ntp_libparse=yes 2781ea906c41SOllivier Robert ntp_refclock=yes 27822b15cb3dSCy Schubert AC_DEFINE([CLOCK_MEINBERG], [1], [Meinberg clocks]) 27832b15cb3dSCy Schubert ;; 27842b15cb3dSCy Schubertesac 27852b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2786ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2787ea906c41SOllivier Robert yesno) 2788eb6d21b4SOllivier Robert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 2789ea906c41SOllivier Robertesac 2790ea906c41SOllivier Robert 2791eb6d21b4SOllivier RobertAC_MSG_CHECKING([DCF77 raw time code]) 27922b15cb3dSCy SchubertAC_ARG_ENABLE( 27932b15cb3dSCy Schubert [RAWDCF], 27942b15cb3dSCy Schubert [AS_HELP_STRING( 27952b15cb3dSCy Schubert [--enable-RAWDCF], 27962b15cb3dSCy Schubert [s DCF77 raw time code] 27972b15cb3dSCy Schubert )], 27982b15cb3dSCy Schubert [ntp_ok=$enableval], 27992b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 28002b15cb3dSCy Schubert) 28012b15cb3dSCy Schubertcase "$ntp_ok" in 28022b15cb3dSCy Schubert yes) 2803ea906c41SOllivier Robert ntp_libparse=yes 2804ea906c41SOllivier Robert ntp_parseutil=yes 2805ea906c41SOllivier Robert ntp_refclock=yes 2806ea906c41SOllivier Robert ntp_rawdcf=yes 28072b15cb3dSCy Schubert AC_DEFINE([CLOCK_RAWDCF], [1], [DCF77 raw time code]) 28082b15cb3dSCy Schubert ;; 28092b15cb3dSCy Schubertesac 28102b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2811ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2812ea906c41SOllivier Robert yesno) 28132b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 2814ea906c41SOllivier Robertesac 2815ea906c41SOllivier Robert 2816ea906c41SOllivier Robertcase "$ntp_rawdcf" in 2817ea906c41SOllivier Robert yes) 2818eb6d21b4SOllivier Robert AC_CACHE_CHECK([if we must enable parity for RAWDCF], 28192b15cb3dSCy Schubert [ntp_cv_rawdcf_parity], 28202b15cb3dSCy Schubert [ 28212b15cb3dSCy Schubert ans=no 2822ea906c41SOllivier Robert case "$host" in 2823eb6d21b4SOllivier Robert *-*-*linux*) 2824ea906c41SOllivier Robert ans=yes 2825ea906c41SOllivier Robert ;; 2826ea906c41SOllivier Robert esac 28272b15cb3dSCy Schubert ntp_cv_rawdcf_parity=$ans 28282b15cb3dSCy Schubert ] 28292b15cb3dSCy Schubert ) 28302b15cb3dSCy Schubert case "$ntp_cv_rawdcf_parity" in 28312b15cb3dSCy Schubert yes) 28322b15cb3dSCy Schubert AC_DEFINE([RAWDCF_NO_IGNPAR], [1], 28332b15cb3dSCy Schubert [Should we not IGNPAR (Linux)?]) ;; 2834ea906c41SOllivier Robert esac 2835ea906c41SOllivier Robertesac 2836ea906c41SOllivier Robert 2837eb6d21b4SOllivier RobertAC_MSG_CHECKING([RCC 8000 clock]) 28382b15cb3dSCy SchubertAC_ARG_ENABLE( 28392b15cb3dSCy Schubert [RCC8000], 28402b15cb3dSCy Schubert [AS_HELP_STRING( 28412b15cb3dSCy Schubert [--enable-RCC8000], 28422b15cb3dSCy Schubert [s RCC 8000 clock] 28432b15cb3dSCy Schubert )], 28442b15cb3dSCy Schubert [ntp_ok=$enableval], 28452b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 28462b15cb3dSCy Schubert) 28472b15cb3dSCy Schubertcase "$ntp_ok" in 28482b15cb3dSCy Schubert yes) 2849ea906c41SOllivier Robert ntp_libparse=yes 2850ea906c41SOllivier Robert ntp_refclock=yes 28512b15cb3dSCy Schubert AC_DEFINE([CLOCK_RCC8000], [1], [RCC 8000 clock]) 2852ea906c41SOllivier Robert ;; 2853ea906c41SOllivier Robertesac 28542b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 2855ea906c41SOllivier Robertcase "$ntp_ok$ntp_canparse" in 2856ea906c41SOllivier Robert yesno) 2857eb6d21b4SOllivier Robert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 28582b15cb3dSCy Schubertesac 28592b15cb3dSCy Schubert 28602b15cb3dSCy SchubertAC_MSG_CHECKING([Schmid DCF77 clock]) 28612b15cb3dSCy SchubertAC_ARG_ENABLE( 28622b15cb3dSCy Schubert [SCHMID], 28632b15cb3dSCy Schubert [AS_HELP_STRING( 28642b15cb3dSCy Schubert [--enable-SCHMID ], 28652b15cb3dSCy Schubert [s Schmid DCF77 clock] 28662b15cb3dSCy Schubert )], 28672b15cb3dSCy Schubert [ntp_ok=$enableval], 28682b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 28692b15cb3dSCy Schubert) 28702b15cb3dSCy Schubertcase "$ntp_ok" in 28712b15cb3dSCy Schubert yes) 28722b15cb3dSCy Schubert ntp_libparse=yes 28732b15cb3dSCy Schubert ntp_refclock=yes 28742b15cb3dSCy Schubert AC_DEFINE([CLOCK_SCHMID], [1], [Schmid DCF77 clock]) 2875ea906c41SOllivier Robert ;; 2876ea906c41SOllivier Robertesac 28772b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 28782b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 28792b15cb3dSCy Schubert yesno) 28802b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 28812b15cb3dSCy Schubertesac 28822b15cb3dSCy Schubert 28832b15cb3dSCy SchubertAC_MSG_CHECKING([Trimble GPS receiver/TAIP protocol]) 28842b15cb3dSCy SchubertAC_ARG_ENABLE( 28852b15cb3dSCy Schubert [TRIMTAIP], 28862b15cb3dSCy Schubert [AS_HELP_STRING( 28872b15cb3dSCy Schubert [--enable-TRIMTAIP], 28882b15cb3dSCy Schubert [s Trimble GPS receiver/TAIP protocol] 28892b15cb3dSCy Schubert )], 28902b15cb3dSCy Schubert [ntp_ok=$enableval], 28912b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 28922b15cb3dSCy Schubert) 28932b15cb3dSCy Schubertcase "$ntp_ok" in 28942b15cb3dSCy Schubert yes) 28952b15cb3dSCy Schubert ntp_libparse=yes 28962b15cb3dSCy Schubert ntp_refclock=yes 28972b15cb3dSCy Schubert AC_DEFINE([CLOCK_TRIMTAIP], [1], 28982b15cb3dSCy Schubert [Trimble GPS receiver/TAIP protocol]) 28992b15cb3dSCy Schubert ;; 29002b15cb3dSCy Schubertesac 29012b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 29022b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 29032b15cb3dSCy Schubert yesno) 29042b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 29052b15cb3dSCy Schubertesac 29062b15cb3dSCy Schubert 29072b15cb3dSCy SchubertAC_MSG_CHECKING([Trimble GPS receiver/TSIP protocol]) 29082b15cb3dSCy SchubertAC_ARG_ENABLE( 29092b15cb3dSCy Schubert [TRIMTSIP], 29102b15cb3dSCy Schubert [AS_HELP_STRING( 29112b15cb3dSCy Schubert [--enable-TRIMTSIP], 29122b15cb3dSCy Schubert [s Trimble GPS receiver/TSIP protocol] 29132b15cb3dSCy Schubert )], 29142b15cb3dSCy Schubert [ntp_ok=$enableval], 29152b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 29162b15cb3dSCy Schubert) 29172b15cb3dSCy Schubertcase "$ntp_ok" in 29182b15cb3dSCy Schubert yes) 29192b15cb3dSCy Schubert ntp_libparse=yes 29202b15cb3dSCy Schubert ntp_refclock=yes 29212b15cb3dSCy Schubert AC_DEFINE([CLOCK_TRIMTSIP], [1], 29222b15cb3dSCy Schubert [Trimble GPS receiver/TSIP protocol]) 29232b15cb3dSCy Schubert ;; 29242b15cb3dSCy Schubertesac 29252b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 29262b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 29272b15cb3dSCy Schubert yesno) 29282b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 29292b15cb3dSCy Schubertesac 29302b15cb3dSCy Schubert 29312b15cb3dSCy SchubertAC_MSG_CHECKING([WHARTON 400A Series clock]) 29322b15cb3dSCy SchubertAC_ARG_ENABLE( 29332b15cb3dSCy Schubert [WHARTON], 29342b15cb3dSCy Schubert [AS_HELP_STRING( 29352b15cb3dSCy Schubert [--enable-WHARTON], 29362b15cb3dSCy Schubert [s WHARTON 400A Series clock] 29372b15cb3dSCy Schubert )], 29382b15cb3dSCy Schubert [ntp_ok=$enableval], 29392b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 29402b15cb3dSCy Schubert) 29412b15cb3dSCy Schubertcase "$ntp_ok" in 29422b15cb3dSCy Schubert yes) 29432b15cb3dSCy Schubert ntp_libparse=yes 29442b15cb3dSCy Schubert ntp_refclock=yes 29452b15cb3dSCy Schubert AC_DEFINE([CLOCK_WHARTON_400A], [1], [WHARTON 400A Series clock]) 29462b15cb3dSCy Schubert ;; 29472b15cb3dSCy Schubertesac 29482b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 29492b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 29502b15cb3dSCy Schubert yesno) 29512b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 29522b15cb3dSCy Schubertesac 29532b15cb3dSCy Schubert 29542b15cb3dSCy SchubertAC_MSG_CHECKING([VARITEXT clock]) 29552b15cb3dSCy SchubertAC_ARG_ENABLE( 29562b15cb3dSCy Schubert [VARITEXT], 29572b15cb3dSCy Schubert [AS_HELP_STRING( 29582b15cb3dSCy Schubert [--enable-VARITEXT], 29592b15cb3dSCy Schubert [s VARITEXT clock] 29602b15cb3dSCy Schubert )], 29612b15cb3dSCy Schubert [ntp_ok=$enableval], 29622b15cb3dSCy Schubert [ntp_ok=$ntp_eapc] 29632b15cb3dSCy Schubert) 29642b15cb3dSCy Schubertcase "$ntp_ok" in 29652b15cb3dSCy Schubert yes) 29662b15cb3dSCy Schubert ntp_libparse=yes 29672b15cb3dSCy Schubert ntp_refclock=yes 29682b15cb3dSCy Schubert AC_DEFINE([CLOCK_VARITEXT], [1], [VARITEXT clock]) 29692b15cb3dSCy Schubert ;; 29702b15cb3dSCy Schubertesac 29712b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 29722b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 29732b15cb3dSCy Schubert yesno) 29742b15cb3dSCy Schubert AC_MSG_ERROR([That's a parse clock and this system doesn't support it!]) 29752b15cb3dSCy Schubertesac 29762b15cb3dSCy Schubert 29772b15cb3dSCy SchubertAC_MSG_CHECKING(SEL240X clock) 29782b15cb3dSCy SchubertAC_ARG_ENABLE(SEL240X, 29792b15cb3dSCy Schubert AC_HELP_STRING([--enable-SEL240X], [s SEL240X clock]), 29802b15cb3dSCy Schubert [ntp_ok=$enableval], [ntp_ok=$ntp_eapc]) 29812b15cb3dSCy Schubertif test "$ntp_ok" = "yes"; then 29822b15cb3dSCy Schubert ntp_libparse=yes 29832b15cb3dSCy Schubert ntp_refclock=yes 29842b15cb3dSCy Schubert AC_DEFINE(CLOCK_SEL240X, 1, [SEL240X protocol]) 29852b15cb3dSCy Schubertfi 29862b15cb3dSCy SchubertAC_MSG_RESULT($ntp_ok) 29872b15cb3dSCy Schubertcase "$ntp_ok$ntp_canparse" in 29882b15cb3dSCy Schubert yesno) 29892b15cb3dSCy Schubert AC_MSG_ERROR(That's a parse clock and this system doesn't support it!) 29902b15cb3dSCy Schubert ;; 29912b15cb3dSCy Schubertesac 29922b15cb3dSCy Schubert 29932b15cb3dSCy SchubertAC_SUBST([LIBPARSE]) 29942b15cb3dSCy SchubertAC_SUBST([MAKE_LIBPARSE]) 29952b15cb3dSCy SchubertAC_SUBST([MAKE_LIBPARSE_KERNEL]) 29962b15cb3dSCy SchubertAC_SUBST([MAKE_CHECK_Y2K]) 29972b15cb3dSCy Schubert 2998eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we need to make and use the parse libraries]) 2999ea906c41SOllivier Robertans=no 3000ea906c41SOllivier Robertcase "$ntp_libparse" in 3001ea906c41SOllivier Robert yes) 3002ea906c41SOllivier Robert ans=yes 30032b15cb3dSCy Schubert AC_DEFINE([CLOCK_PARSE], [1], [PARSE driver interface]) 3004ea906c41SOllivier Robert LIBPARSE=../libparse/libparse.a 3005ea906c41SOllivier Robert MAKE_LIBPARSE=libparse.a 3006ea906c41SOllivier Robert # HMS: check_y2k trips the 34 year problem now... 3007ea906c41SOllivier Robert false && MAKE_CHECK_Y2K=check_y2k 3008ea906c41SOllivier Robertesac 3009eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3010ea906c41SOllivier Robert 3011*f5f40dd6SCy Schubert# if we have crypto, by default Autokey is enabled 30122b15cb3dSCy SchubertAC_ARG_ENABLE( 30132b15cb3dSCy Schubert [autokey], 30142b15cb3dSCy Schubert AS_HELP_STRING( 30152b15cb3dSCy Schubert [--enable-autokey], 30162b15cb3dSCy Schubert [+ support NTP Autokey protocol] 30172b15cb3dSCy Schubert ), 30182b15cb3dSCy Schubert [ntp_autokey=$enableval], 30192b15cb3dSCy Schubert [ntp_autokey=$ntp_openssl] 30202b15cb3dSCy Schubert) 30212b15cb3dSCy Schubertcase "$ntp_autokey" in 30222b15cb3dSCy Schubert no) 3023ea906c41SOllivier Robert ;; 3024ea906c41SOllivier Robert *) 30252b15cb3dSCy Schubert case "$ntp_openssl" in 3026ea906c41SOllivier Robert no) 3027*f5f40dd6SCy Schubert AC_MSG_WARN([Disabling Autokey, crypto unavailable.]) 30282b15cb3dSCy Schubert ntp_autokey=no 3029ea906c41SOllivier Robert ;; 3030ea906c41SOllivier Robert *) 30312b15cb3dSCy Schubert AC_DEFINE([AUTOKEY], [1], [Support NTP Autokey protocol?]) 30322b15cb3dSCy Schubert ntp_autokey=yes 3033ea906c41SOllivier Robert ;; 3034ea906c41SOllivier Robert esac 30352b15cb3dSCy Schubert ;; 30362b15cb3dSCy Schubertesac 3037*f5f40dd6SCy SchubertAC_MSG_CHECKING([if NTP Autokey protocol will be supported]) 30382b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_autokey]) 3039ea906c41SOllivier Robert 30402b15cb3dSCy SchubertAC_SUBST([MAKE_CHECK_LAYOUT]) 3041eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we want to run check-layout]) 3042ea906c41SOllivier Robertcase "$cross_compiling$PATH_PERL" in 3043ea906c41SOllivier Robert no/*) 3044ea906c41SOllivier Robert MAKE_CHECK_LAYOUT=check-layout 3045ea906c41SOllivier Robert ans=yes 3046ea906c41SOllivier Robert ;; 3047ea906c41SOllivier Robert *) 3048ea906c41SOllivier Robert ans=no 3049ea906c41SOllivier Robert ;; 3050ea906c41SOllivier Robertesac 3051eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3052ea906c41SOllivier Robert 30532b15cb3dSCy SchubertAC_SUBST([TESTDCF]) 30542b15cb3dSCy SchubertAC_SUBST([DCFD]) 3055eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we can make dcf parse utilities]) 3056ea906c41SOllivier Robertans=no 30572b15cb3dSCy Schubertcase "$ntp_parseutil" in 30582b15cb3dSCy Schubert yes) 3059ea906c41SOllivier Robert case "$host" in 3060eb6d21b4SOllivier Robert *-*-sunos4*|*-*-solaris2*|*-*-*linux*|*-*-netbsd*) 3061ea906c41SOllivier Robert ans="dcfd testdcf" 3062ea906c41SOllivier Robert DCFD=dcfd 3063ea906c41SOllivier Robert TESTDCF=testdcf 30642b15cb3dSCy Schubert esac 3065ea906c41SOllivier Robert ;; 3066ea906c41SOllivier Robertesac 3067eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3068ea906c41SOllivier Robert 30692b15cb3dSCy SchubertAC_SUBST([MAKE_PARSEKMODULE]) 3070eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we can build kernel streams modules for parse]) 3071ea906c41SOllivier Robertans=no 3072ea906c41SOllivier Robertcase "$ntp_parseutil$ac_cv_header_sys_stropts_h" in 3073ea906c41SOllivier Robert yesyes) 3074ea906c41SOllivier Robert case "$host" in 3075ea906c41SOllivier Robert sparc-*-sunos4*) 30762b15cb3dSCy Schubert case "$ntp_cv_var_kernel_pll" in 3077ea906c41SOllivier Robert yes) 30782b15cb3dSCy Schubert AC_DEFINE([PPS_SYNC], [1], [PARSE kernel PLL PPS support]) 3079ea906c41SOllivier Robert ;; 3080ea906c41SOllivier Robert esac 3081ea906c41SOllivier Robert ans=parsestreams 3082ea906c41SOllivier Robert MAKE_PARSEKMODULE=parsestreams.loadable_module.o 3083ea906c41SOllivier Robert ;; 3084ea906c41SOllivier Robert sparc-*-solaris2*) 3085ea906c41SOllivier Robert ans=parsesolaris 3086ea906c41SOllivier Robert MAKE_PARSEKMODULE=parse 30872b15cb3dSCy Schubert AC_CHECK_HEADERS([strings.h]) 3088ea906c41SOllivier Robert ;; 3089ea906c41SOllivier Robert esac 3090ea906c41SOllivier Robert ;; 3091ea906c41SOllivier Robertesac 3092eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3093ea906c41SOllivier Robert 3094eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we need basic refclock support]) 30952b15cb3dSCy Schubertcase "$ntp_refclock" in 30962b15cb3dSCy Schubert yes) 30972b15cb3dSCy Schubert AC_DEFINE([REFCLOCK], [1], [Basic refclock support?]) 30982b15cb3dSCy Schubert ;; 30992b15cb3dSCy Schubertesac 3100ea906c41SOllivier RobertAC_MSG_RESULT($ntp_refclock) 3101ea906c41SOllivier Robert 31022b15cb3dSCy Schubertdnl Things that can be made in clockstuff 31032b15cb3dSCy SchubertAC_SUBST([PROPDELAY], [propdelay]) 31042b15cb3dSCy SchubertAC_SUBST([CHUTEST]) dnl needs work to compile 3105ea906c41SOllivier Robert 31062b15cb3dSCy SchubertAC_SUBST([MAKE_ADJTIMED]) 31072b15cb3dSCy SchubertAC_MSG_CHECKING([if we want HP-UX adjtimed support]) 3108ea906c41SOllivier Robertcase "$host" in 3109ea906c41SOllivier Robert *-*-hpux[[56789]]*) 3110ea906c41SOllivier Robert ans=yes 3111ea906c41SOllivier Robert ;; 3112ea906c41SOllivier Robert *) ans=no 3113ea906c41SOllivier Robert ;; 3114ea906c41SOllivier Robertesac 31152b15cb3dSCy Schubertcase "$ans" in 31162b15cb3dSCy Schubert yes) 3117ea906c41SOllivier Robert MAKE_ADJTIMED=adjtimed 31182b15cb3dSCy Schubert AC_DEFINE([NEED_HPUX_ADJTIME], [1], 31192b15cb3dSCy Schubert [Do we need HPUX adjtime() library support?]) 31202b15cb3dSCy Schubert ;; 31212b15cb3dSCy Schubert *) ADJTIMED_DB= 31222b15cb3dSCy Schubert ADJTIMED_DL= 31232b15cb3dSCy Schubert ADJTIMED_DS= 31242b15cb3dSCy Schubert ADJTIMED_MS= 31252b15cb3dSCy Schubert ;; 31262b15cb3dSCy Schubertesac 3127eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3128ea906c41SOllivier Robert 3129eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we want QNX adjtime support]) 3130ea906c41SOllivier Robertcase "$host" in 3131ea906c41SOllivier Robert *-*-qnx*) 3132ea906c41SOllivier Robert ans=yes 3133ea906c41SOllivier Robert ;; 3134ea906c41SOllivier Robert *) ans=no 3135ea906c41SOllivier Robert ;; 3136ea906c41SOllivier Robertesac 31372b15cb3dSCy Schubertcase "$ans" in 31382b15cb3dSCy Schubert yes) 31392b15cb3dSCy Schubert AC_DEFINE([NEED_QNX_ADJTIME], [1], 31402b15cb3dSCy Schubert [Do we need the qnx adjtime call?]) 31412b15cb3dSCy Schubert ;; 31422b15cb3dSCy Schubertesac 3143eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3144ea906c41SOllivier Robert 3145eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we can read kmem]) 3146eb6d21b4SOllivier Robert 3147eb6d21b4SOllivier Robert# the default is to enable it if the system has the capability 3148eb6d21b4SOllivier Robert 3149eb6d21b4SOllivier Robertcase "$ac_cv_func_nlist$ac_cv_func_K_open$ac_cv_func_kvm_open" in 3150ea906c41SOllivier Robert *yes*) 3151ea906c41SOllivier Robert ans=yes 3152ea906c41SOllivier Robert ;; 3153ea906c41SOllivier Robert *) ans=no 31542b15cb3dSCy Schubert ;; 3155ea906c41SOllivier Robertesac 3156eb6d21b4SOllivier Robert 3157ea906c41SOllivier Robertcase "$host" in 3158ea906c41SOllivier Robert *-*-domainos) # Won't be found... 3159ea906c41SOllivier Robert ans=no 3160ea906c41SOllivier Robert ;; 3161ea906c41SOllivier Robert *-*-hpux*) 3162ea906c41SOllivier Robert #ans=no 3163ea906c41SOllivier Robert ;; 3164ea906c41SOllivier Robert *-*-irix[[456]]*) 3165ea906c41SOllivier Robert ans=no 3166ea906c41SOllivier Robert ;; 3167eb6d21b4SOllivier Robert *-*-*linux*) 3168ea906c41SOllivier Robert ans=no 3169ea906c41SOllivier Robert ;; 3170ea906c41SOllivier Robert *-*-winnt3.5) 3171ea906c41SOllivier Robert ans=no 3172ea906c41SOllivier Robert ;; 3173ea906c41SOllivier Robert *-*-unicosmp*) 3174ea906c41SOllivier Robert ans=no 3175ea906c41SOllivier Robert ;; 3176ea906c41SOllivier Robertesac 3177ea906c41SOllivier Robert 3178eb6d21b4SOllivier Robert# --enable-kmem / --disable-kmem controls if present 3179eb6d21b4SOllivier RobertAC_ARG_ENABLE( 3180eb6d21b4SOllivier Robert [kmem], 31812b15cb3dSCy Schubert [AS_HELP_STRING( 3182eb6d21b4SOllivier Robert [--enable-kmem], 3183eb6d21b4SOllivier Robert [s read /dev/kmem for tick and/or tickadj] 31842b15cb3dSCy Schubert )], 3185eb6d21b4SOllivier Robert [ans=$enableval] 3186eb6d21b4SOllivier Robert) 3187eb6d21b4SOllivier Robert 3188eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3189eb6d21b4SOllivier Robert 3190eb6d21b4SOllivier Robertcase "$ans" in 3191eb6d21b4SOllivier Robert yes) 3192eb6d21b4SOllivier Robert can_kmem=yes 3193eb6d21b4SOllivier Robert ;; 3194eb6d21b4SOllivier Robert *) 3195eb6d21b4SOllivier Robert can_kmem=no 31962b15cb3dSCy Schubert AC_DEFINE([NOKMEM], [1], [Should we NOT read /dev/kmem?]) 3197ea906c41SOllivier Robertesac 3198ea906c41SOllivier Robert 3199eb6d21b4SOllivier Robert 3200eb6d21b4SOllivier RobertAC_MSG_CHECKING([if adjtime is accurate]) 3201eb6d21b4SOllivier Robert 3202eb6d21b4SOllivier Robert# target-dependent defaults 3203eb6d21b4SOllivier Robert 3204eb6d21b4SOllivier Robertcase "$host" in 3205ea906c41SOllivier Robert i386-sequent-ptx*) 3206ea906c41SOllivier Robert ans=no 3207ea906c41SOllivier Robert ;; 3208ea906c41SOllivier Robert i386-unknown-osf1*) 3209ea906c41SOllivier Robert ans=yes 3210ea906c41SOllivier Robert ;; 3211ea906c41SOllivier Robert mips-sgi-irix[[456]]*) 3212ea906c41SOllivier Robert ans=yes 3213ea906c41SOllivier Robert ;; 3214ea906c41SOllivier Robert *-fujitsu-uxp*) 3215ea906c41SOllivier Robert ans=yes 3216ea906c41SOllivier Robert ;; 32172b15cb3dSCy Schubert *-ibm-aix[[4-9]]*) 32182b15cb3dSCy Schubert # XXX only verified thru AIX6. 3219ea906c41SOllivier Robert ans=yes 3220ea906c41SOllivier Robert ;; 3221eb6d21b4SOllivier Robert *-*-*linux*) 3222ea906c41SOllivier Robert ans=yes 3223ea906c41SOllivier Robert ;; 3224ea906c41SOllivier Robert *-*-solaris2.[[01]]) 3225ea906c41SOllivier Robert ans=no 3226ea906c41SOllivier Robert ;; 3227ea906c41SOllivier Robert *-*-solaris2*) 3228ea906c41SOllivier Robert ans=yes 3229ea906c41SOllivier Robert ;; 3230ea906c41SOllivier Robert *-*-unicosmp*) 3231ea906c41SOllivier Robert ans=yes 3232ea906c41SOllivier Robert ;; 3233ea906c41SOllivier Robert *) ans=no 32342b15cb3dSCy Schubert ;; 3235ea906c41SOllivier Robertesac 3236eb6d21b4SOllivier Robert 3237eb6d21b4SOllivier Robert# --enable-accurate-adjtime / --disable-accurate-adjtime 3238eb6d21b4SOllivier Robert# override the default 32392b15cb3dSCy SchubertAC_ARG_ENABLE( 32402b15cb3dSCy Schubert [accurate-adjtime], 32412b15cb3dSCy Schubert [AS_HELP_STRING( 3242eb6d21b4SOllivier Robert [--enable-accurate-adjtime], 3243eb6d21b4SOllivier Robert [s the adjtime() call is accurate] 32442b15cb3dSCy Schubert )], 32452b15cb3dSCy Schubert [ans=$enableval] 3246eb6d21b4SOllivier Robert) 3247eb6d21b4SOllivier Robert 3248eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3249eb6d21b4SOllivier Robert 3250eb6d21b4SOllivier Robertcase "$ans" in 3251eb6d21b4SOllivier Robert yes) 32522b15cb3dSCy Schubert AC_DEFINE([ADJTIME_IS_ACCURATE], [1], [Is adjtime() accurate?]) 3253eb6d21b4SOllivier Robert adjtime_is_accurate=yes 3254eb6d21b4SOllivier Robert ;; 3255eb6d21b4SOllivier Robert *) 3256eb6d21b4SOllivier Robert adjtime_is_accurate=no 32572b15cb3dSCy Schubert ;; 3258ea906c41SOllivier Robertesac 3259ea906c41SOllivier Robert 32602b15cb3dSCy SchubertAC_CACHE_CHECK( 32612b15cb3dSCy Schubert [the name of 'tick' in the kernel], 32622b15cb3dSCy Schubert [ntp_cv_nlist_tick], 32632b15cb3dSCy Schubert [ 32642b15cb3dSCy Schubert ans=_tick 3265ea906c41SOllivier Robert case "$host" in 3266ea906c41SOllivier Robert m68*-hp-hpux*) # HP9000/300? 3267ea906c41SOllivier Robert ans=_old_tick 3268ea906c41SOllivier Robert ;; 3269ea906c41SOllivier Robert *-apple-aux[[23]]*) 3270ea906c41SOllivier Robert ans=tick 3271ea906c41SOllivier Robert ;; 3272ea906c41SOllivier Robert *-hp-hpux*) 3273ea906c41SOllivier Robert ans=old_tick 3274ea906c41SOllivier Robert ;; 32752b15cb3dSCy Schubert *-ibm-aix[[3-9]]*) 32762b15cb3dSCy Schubert # XXX only verified thru AIX6. 3277ea906c41SOllivier Robert ans=no 3278ea906c41SOllivier Robert ;; 3279ea906c41SOllivier Robert *-*-mpeix*) 3280ea906c41SOllivier Robert ans=no 3281ea906c41SOllivier Robert ;; 3282ea906c41SOllivier Robert *-*-ptx*) 3283ea906c41SOllivier Robert ans=tick 3284ea906c41SOllivier Robert ;; 3285ea906c41SOllivier Robert *-*-sco3.2v[[45]]*) 3286ea906c41SOllivier Robert ans=no 3287ea906c41SOllivier Robert ;; 3288ea906c41SOllivier Robert *-*-solaris2*) 3289ea906c41SOllivier Robert ans=nsec_per_tick 3290ea906c41SOllivier Robert ;; 3291ea906c41SOllivier Robert *-*-sysv4*) 3292ea906c41SOllivier Robert ans=tick 3293ea906c41SOllivier Robert ;; 3294ea906c41SOllivier Robert esac 32952b15cb3dSCy Schubert ntp_cv_nlist_tick=$ans 32962b15cb3dSCy Schubert ] 32972b15cb3dSCy Schubert) 32982b15cb3dSCy Schubertcase "$ntp_cv_nlist_tick" in 32992b15cb3dSCy Schubert ''|no) 33002b15cb3dSCy Schubert ;; # HMS: I think we can only get 'no' here... 33012b15cb3dSCy Schubert *) 33022b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([K_TICK_NAME], ["$ntp_cv_nlist_tick"], 33032b15cb3dSCy Schubert [What is the name of TICK in the kernel?]) 3304ea906c41SOllivier Robertesac 33052b15cb3dSCy Schubert 33062b15cb3dSCy SchubertAC_CACHE_CHECK( 33072b15cb3dSCy Schubert [for the units of 'tick'], 33082b15cb3dSCy Schubert [ntp_cv_tick_nano], 33092b15cb3dSCy Schubert [ 33102b15cb3dSCy Schubert ans=usec 3311ea906c41SOllivier Robert case "$host" in 3312ea906c41SOllivier Robert *-*-solaris2*) 3313ea906c41SOllivier Robert ans=nsec 3314ea906c41SOllivier Robert ;; 3315ea906c41SOllivier Robert esac 33162b15cb3dSCy Schubert ntp_cv_tick_nano=$ans 33172b15cb3dSCy Schubert ] 33182b15cb3dSCy Schubert) 33192b15cb3dSCy Schubertcase "$ntp_cv_tick_nano" in 3320ea906c41SOllivier Robert nsec) 33212b15cb3dSCy Schubert AC_DEFINE([TICK_NANO], [1], [Is K_TICK_NAME in nanoseconds?]) 3322ea906c41SOllivier Robertesac 33232b15cb3dSCy Schubert 33242b15cb3dSCy SchubertAC_CACHE_CHECK( 33252b15cb3dSCy Schubert [the name of 'tickadj' in the kernel], 33262b15cb3dSCy Schubert [ntp_cv_nlist_tickadj], 33272b15cb3dSCy Schubert [ 33282b15cb3dSCy Schubert ans=_tickadj 3329ea906c41SOllivier Robert case "$host" in 3330ea906c41SOllivier Robert m68*-hp-hpux*) # HP9000/300? 3331ea906c41SOllivier Robert ans=_tickadj 3332ea906c41SOllivier Robert ;; 3333ea906c41SOllivier Robert *-apple-aux[[23]]*) 3334ea906c41SOllivier Robert ans=tickadj 3335ea906c41SOllivier Robert ;; 3336ea906c41SOllivier Robert *-hp-hpux10*) 3337ea906c41SOllivier Robert ans=no 3338ea906c41SOllivier Robert ;; 3339ea906c41SOllivier Robert *-hp-hpux9*) 3340ea906c41SOllivier Robert ans=no 3341ea906c41SOllivier Robert ;; 3342ea906c41SOllivier Robert *-hp-hpux*) 3343ea906c41SOllivier Robert ans=tickadj 3344ea906c41SOllivier Robert ;; 3345ea906c41SOllivier Robert *-*-aix*) 3346ea906c41SOllivier Robert ans=tickadj 3347ea906c41SOllivier Robert ;; 3348ea906c41SOllivier Robert *-*-mpeix*) 3349ea906c41SOllivier Robert ans=no 3350ea906c41SOllivier Robert ;; 3351ea906c41SOllivier Robert *-*-ptx*) 3352ea906c41SOllivier Robert ans=tickadj 3353ea906c41SOllivier Robert ;; 3354ea906c41SOllivier Robert *-*-sco3.2v4*) 3355ea906c41SOllivier Robert ans=no 3356ea906c41SOllivier Robert ;; 3357ea906c41SOllivier Robert *-*-sco3.2v5.0*) 3358ea906c41SOllivier Robert ans=clock_drift 3359ea906c41SOllivier Robert ;; 3360ea906c41SOllivier Robert *-*-solaris2*) 3361ea906c41SOllivier Robert ans=no # hrestime_adj 3362ea906c41SOllivier Robert ;; 3363ea906c41SOllivier Robert *-*-sysv4*) 3364ea906c41SOllivier Robert ans=tickadj 3365ea906c41SOllivier Robert ;; 3366ea906c41SOllivier Robert esac 33672b15cb3dSCy Schubert ntp_cv_nlist_tickadj=$ans 33682b15cb3dSCy Schubert ] 33692b15cb3dSCy Schubert) 33702b15cb3dSCy Schubertcase "$ntp_cv_nlist_tickadj" in 33712b15cb3dSCy Schubert ''|no) 33722b15cb3dSCy Schubert ;; # HMS: I think we can only get 'no' here... 33732b15cb3dSCy Schubert *) 33742b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([K_TICKADJ_NAME], ["$ntp_cv_nlist_tickadj"], 33752b15cb3dSCy Schubert [What is the name of TICKADJ in the kernel?]) 3376ea906c41SOllivier Robertesac 33772b15cb3dSCy Schubert 33782b15cb3dSCy SchubertAC_CACHE_CHECK( 33792b15cb3dSCy Schubert [for the units of 'tickadj'], 33802b15cb3dSCy Schubert [ntp_cv_tickadj_nano], 33812b15cb3dSCy Schubert [ 33822b15cb3dSCy Schubert ans=usec 3383ea906c41SOllivier Robert case "$host" in 3384ea906c41SOllivier Robert *-*-solaris2*) 3385ea906c41SOllivier Robert ans=nsec 3386ea906c41SOllivier Robert ;; 3387ea906c41SOllivier Robert esac 33882b15cb3dSCy Schubert ntp_cv_tickadj_nano=$ans 33892b15cb3dSCy Schubert ] 33902b15cb3dSCy Schubert) 33912b15cb3dSCy Schubertcase "$ntp_cv_tickadj_nano" in 3392ea906c41SOllivier Robert nsec) 33932b15cb3dSCy Schubert AC_DEFINE([TICKADJ_NANO], [1], [Is K_TICKADJ_NAME in nanoseconds?]) 3394ea906c41SOllivier Robertesac 33952b15cb3dSCy Schubert 33962b15cb3dSCy SchubertAC_CACHE_CHECK( 33972b15cb3dSCy Schubert [half-heartedly for 'dosynctodr' in the kernel], 33982b15cb3dSCy Schubert [ntp_cv_nlist_dosynctodr], 33992b15cb3dSCy Schubert [ 34002b15cb3dSCy Schubert case "$host" in 3401ea906c41SOllivier Robert *-apple-aux[[23]]*) 3402ea906c41SOllivier Robert ans=no 3403ea906c41SOllivier Robert ;; 3404ea906c41SOllivier Robert *-sni-sysv*) 3405ea906c41SOllivier Robert ans=dosynctodr 3406ea906c41SOllivier Robert ;; 3407276da39aSCy Schubert *-stratus-vos) 3408276da39aSCy Schubert ans=no 3409276da39aSCy Schubert ;; 3410ea906c41SOllivier Robert *-*-aix*) 3411ea906c41SOllivier Robert ans=dosynctodr 3412ea906c41SOllivier Robert ;; 3413ea906c41SOllivier Robert *-*-hpux*) 3414ea906c41SOllivier Robert ans=no 3415ea906c41SOllivier Robert ;; 3416ea906c41SOllivier Robert *-*-mpeix*) 3417ea906c41SOllivier Robert ans=no 3418ea906c41SOllivier Robert ;; 3419ea906c41SOllivier Robert *-*-nextstep*) 3420ea906c41SOllivier Robert ans=_dosynctodr 3421ea906c41SOllivier Robert ;; 3422ea906c41SOllivier Robert *-*-ptx*) 3423ea906c41SOllivier Robert ans=doresettodr 3424ea906c41SOllivier Robert ;; 3425ea906c41SOllivier Robert *-*-sco3.2v4*) 3426ea906c41SOllivier Robert ans=no 3427ea906c41SOllivier Robert ;; 3428ea906c41SOllivier Robert *-*-sco3.2v5*) 3429ea906c41SOllivier Robert ans=track_rtc 3430ea906c41SOllivier Robert ;; 3431ea906c41SOllivier Robert *-*-solaris2*) 3432ea906c41SOllivier Robert ans=dosynctodr 3433ea906c41SOllivier Robert ;; 3434ea906c41SOllivier Robert *-*-sysv4*) 3435ea906c41SOllivier Robert ans=doresettodr 3436ea906c41SOllivier Robert ;; 3437ea906c41SOllivier Robert *) 3438ea906c41SOllivier Robert ans=_dosynctodr 3439ea906c41SOllivier Robert ;; 3440ea906c41SOllivier Robert esac 34412b15cb3dSCy Schubert ntp_cv_nlist_dosynctodr=$ans 34422b15cb3dSCy Schubert ] 34432b15cb3dSCy Schubert) 34442b15cb3dSCy Schubertcase "$ntp_cv_nlist_dosynctodr" in 34452b15cb3dSCy Schubert no) 34462b15cb3dSCy Schubert ;; 34472b15cb3dSCy Schubert *) 34482b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([K_DOSYNCTODR_NAME], ["$ntp_cv_nlist_dosynctodr"], 34492b15cb3dSCy Schubert [What is (probably) the name of DOSYNCTODR in the kernel?]) 3450ea906c41SOllivier Robert ;; 3451ea906c41SOllivier Robertesac 34522b15cb3dSCy Schubert 34532b15cb3dSCy SchubertAC_CACHE_CHECK( 34542b15cb3dSCy Schubert [half-heartedly for 'noprintf' in the kernel], 34552b15cb3dSCy Schubert [ntp_cv_nlist_noprintf], 34562b15cb3dSCy Schubert [ 34572b15cb3dSCy Schubert case "$host" in 3458ea906c41SOllivier Robert *-apple-aux[[23]]*) 3459ea906c41SOllivier Robert ans=no 3460ea906c41SOllivier Robert ;; 3461ea906c41SOllivier Robert *-sni-sysv*) 3462ea906c41SOllivier Robert ans=noprintf 3463ea906c41SOllivier Robert ;; 3464276da39aSCy Schubert *-stratus-vos) 3465276da39aSCy Schubert ans=no 3466276da39aSCy Schubert ;; 3467ea906c41SOllivier Robert *-*-aix*) 3468ea906c41SOllivier Robert ans=noprintf 3469ea906c41SOllivier Robert ;; 3470ea906c41SOllivier Robert *-*-hpux*) 3471ea906c41SOllivier Robert ans=no 3472ea906c41SOllivier Robert ;; 3473ea906c41SOllivier Robert *-*-mpeix*) 3474ea906c41SOllivier Robert ans=no 3475ea906c41SOllivier Robert ;; 3476ea906c41SOllivier Robert *-*-ptx*) 3477ea906c41SOllivier Robert ans=noprintf 3478ea906c41SOllivier Robert ;; 3479ea906c41SOllivier Robert *-*-nextstep*) 3480ea906c41SOllivier Robert ans=_noprintf 3481ea906c41SOllivier Robert ;; 3482ea906c41SOllivier Robert *-*-solaris2*) 3483ea906c41SOllivier Robert ans=noprintf 3484ea906c41SOllivier Robert ;; 3485ea906c41SOllivier Robert *-*-sysv4*) 3486ea906c41SOllivier Robert ans=noprintf 3487ea906c41SOllivier Robert ;; 3488ea906c41SOllivier Robert *) 3489ea906c41SOllivier Robert ans=_noprintf 3490ea906c41SOllivier Robert ;; 3491ea906c41SOllivier Robert esac 34922b15cb3dSCy Schubert ntp_cv_nlist_noprintf=$ans 34932b15cb3dSCy Schubert ] 34942b15cb3dSCy Schubert) 34952b15cb3dSCy Schubertcase "$ntp_cv_nlist_noprintf" in 34962b15cb3dSCy Schubert no) 34972b15cb3dSCy Schubert ;; 34982b15cb3dSCy Schubert *) 34992b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([K_NOPRINTF_NAME], ["$ntp_cv_nlist_noprintf"], 35002b15cb3dSCy Schubert [What is (probably) the name of NOPRINTF in the kernel?]) 3501ea906c41SOllivier Robert ;; 3502ea906c41SOllivier Robertesac 3503ea906c41SOllivier Robert 3504ea906c41SOllivier Robertdnl The tick/tickadj sections were written by Skippy, who never learned 3505ea906c41SOllivier Robertdnl that it's impolite (horridly gross) to show your guts in public. 3506ea906c41SOllivier Robert 3507ea906c41SOllivier Robertdnl tick tickadj 3508ea906c41SOllivier Robertdnl 10000 80 Unixware 3509ea906c41SOllivier Robertdnl 1000000L/hz tick/16 (Solaris,UXPV,HPUX) && ADJTIME_IS_ACCURATE 3510ea906c41SOllivier Robertdnl 10000 150 sgi IRIX 3511ea906c41SOllivier Robertdnl 1000000L/hz 1000 RS6000 && NOKMEM 3512ea906c41SOllivier Robertdnl 1000000L/hz 668 DOMAINOS && NOKMEM 3513ea906c41SOllivier Robertdnl 1000000L/hz 500/HZ other && NOKMEM 3514ea906c41SOllivier Robertdnl txc.tick 1 Linux 3515ea906c41SOllivier Robertdnl (every / 10) 50 WinNT - tickadj is roughly 500/hz 3516ea906c41SOllivier Robertdnl 1000000L/hz (nlist) (Solaris && !ADJTIME_IS_ACCURATE), 3517ea906c41SOllivier Robertdnl (RS6000 && !NOKMEM), SINIX MIPS 3518ea906c41SOllivier Robert 3519ea906c41SOllivier Robertdnl But we'll only use these "values" if we can't find anything else. 3520ea906c41SOllivier Robert 3521eb6d21b4SOllivier RobertAC_MSG_CHECKING([for a default value for 'tick']) 3522eb6d21b4SOllivier Robert 3523eb6d21b4SOllivier Robert# target-dependent default for tick 3524eb6d21b4SOllivier Robert 3525ea906c41SOllivier Robertcase "$host" in 3526eb6d21b4SOllivier Robert *-*-pc-cygwin*) 3527eb6d21b4SOllivier Robert AC_MSG_ERROR([tick needs work for cygwin]) 3528ea906c41SOllivier Robert ;; 3529ea906c41SOllivier Robert *-univel-sysv*) 3530ea906c41SOllivier Robert ans=10000 3531ea906c41SOllivier Robert ;; 3532ea906c41SOllivier Robert *-*-irix*) 3533ea906c41SOllivier Robert ans=10000 3534ea906c41SOllivier Robert ;; 3535eb6d21b4SOllivier Robert *-*-*linux*) 3536ea906c41SOllivier Robert ans=txc.tick 3537ea906c41SOllivier Robert ;; 3538ea906c41SOllivier Robert *-*-mpeix*) 3539ea906c41SOllivier Robert ans=no 3540ea906c41SOllivier Robert ;; 3541ea906c41SOllivier Robert *-*-winnt3.5) 3542ea906c41SOllivier Robert ans='(every / 10)' 3543ea906c41SOllivier Robert ;; 3544ea906c41SOllivier Robert *-*-unicosmp*) 3545ea906c41SOllivier Robert ans=10000 3546ea906c41SOllivier Robert ;; 3547ea906c41SOllivier Robert *) 3548ea906c41SOllivier Robert ans='1000000L/hz' 3549ea906c41SOllivier Robert ;; 3550ea906c41SOllivier Robertesac 3551ea906c41SOllivier Robert 3552eb6d21b4SOllivier RobertAC_ARG_ENABLE( 3553eb6d21b4SOllivier Robert [tick], 35542b15cb3dSCy Schubert [AS_HELP_STRING( 3555eb6d21b4SOllivier Robert [--enable-tick=VALUE], 3556eb6d21b4SOllivier Robert [s force a value for 'tick'] 35572b15cb3dSCy Schubert )], 3558eb6d21b4SOllivier Robert [ans=$enableval] 3559eb6d21b4SOllivier Robert) 3560eb6d21b4SOllivier Robert 3561eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3562eb6d21b4SOllivier Robert 3563eb6d21b4SOllivier Robertcase "$ans" in 35642b15cb3dSCy Schubert ''|no) 35652b15cb3dSCy Schubert ;; # HMS: I think we can only get 'no' here... 35662b15cb3dSCy Schubert *) 35672b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([PRESET_TICK], [$ans], 35682b15cb3dSCy Schubert [Preset a value for 'tick'?]) 3569eb6d21b4SOllivier Robertesac 3570eb6d21b4SOllivier Robert 3571eb6d21b4SOllivier RobertAC_MSG_CHECKING([for a default value for 'tickadj']) 3572eb6d21b4SOllivier Robert 3573eb6d21b4SOllivier Robert# target-specific default 3574eb6d21b4SOllivier Robertans='500/hz' 3575ea906c41SOllivier Robertcase "$host" in 3576ea906c41SOllivier Robert *-fujitsu-uxp*) 3577eb6d21b4SOllivier Robert case "$adjtime_is_accurate" in 3578eb6d21b4SOllivier Robert yes) 3579eb6d21b4SOllivier Robert ans='tick/16' 3580ea906c41SOllivier Robert esac 3581ea906c41SOllivier Robert ;; 3582ea906c41SOllivier Robert *-univel-sysv*) 3583ea906c41SOllivier Robert ans=80 3584ea906c41SOllivier Robert ;; 3585ea906c41SOllivier Robert *-*-aix*) 3586eb6d21b4SOllivier Robert case "$can_kmem" in 3587eb6d21b4SOllivier Robert no) 3588eb6d21b4SOllivier Robert ans=1000 35892b15cb3dSCy Schubert ;; 3590ea906c41SOllivier Robert esac 3591ea906c41SOllivier Robert ;; 3592ea906c41SOllivier Robert *-*-domainos) # Skippy: won't be found... 3593eb6d21b4SOllivier Robert case "$can_kmem" in 3594eb6d21b4SOllivier Robert no) 3595eb6d21b4SOllivier Robert ans=668 35962b15cb3dSCy Schubert ;; 3597ea906c41SOllivier Robert esac 3598ea906c41SOllivier Robert ;; 3599ea906c41SOllivier Robert *-*-hpux*) 3600eb6d21b4SOllivier Robert case "$adjtime_is_accurate" in 3601eb6d21b4SOllivier Robert yes) 3602eb6d21b4SOllivier Robert ans='tick/16' 36032b15cb3dSCy Schubert ;; 3604ea906c41SOllivier Robert esac 3605ea906c41SOllivier Robert ;; 3606ea906c41SOllivier Robert *-*-irix*) 3607ea906c41SOllivier Robert ans=150 3608ea906c41SOllivier Robert ;; 3609ea906c41SOllivier Robert *-*-mpeix*) 3610ea906c41SOllivier Robert ans=no 3611ea906c41SOllivier Robert ;; 3612ea906c41SOllivier Robert *-*-sco3.2v5.0*) 3613ea906c41SOllivier Robert ans=10000L/hz 3614ea906c41SOllivier Robert ;; 3615ea906c41SOllivier Robert *-*-winnt3.5) 3616ea906c41SOllivier Robert ans=50 3617ea906c41SOllivier Robert ;; 3618ea906c41SOllivier Robert *-*-unicosmp*) 3619ea906c41SOllivier Robert ans=150 36202b15cb3dSCy Schubert ;; 3621eb6d21b4SOllivier Robertesac 3622eb6d21b4SOllivier Robert 3623eb6d21b4SOllivier RobertAC_ARG_ENABLE( 3624eb6d21b4SOllivier Robert [tickadj], 36252b15cb3dSCy Schubert [AS_HELP_STRING( 3626eb6d21b4SOllivier Robert [--enable-tickadj=VALUE], 3627eb6d21b4SOllivier Robert [s force a value for 'tickadj'] 36282b15cb3dSCy Schubert )], 3629eb6d21b4SOllivier Robert [ans=$enableval] 3630eb6d21b4SOllivier Robert) 3631eb6d21b4SOllivier Robert 3632eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3633eb6d21b4SOllivier Robert 3634eb6d21b4SOllivier Robertdefault_tickadj=$ans 3635eb6d21b4SOllivier Robert 3636eb6d21b4SOllivier Robertcase "$default_tickadj" in 36372b15cb3dSCy Schubert ''|no) 36382b15cb3dSCy Schubert ;; # HMS: I think we can only get 'no' here... 36392b15cb3dSCy Schubert *) 36402b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([PRESET_TICKADJ], [$default_tickadj], 36412b15cb3dSCy Schubert [Preset a value for 'tickadj'?]) ;; 3642ea906c41SOllivier Robertesac 3643ea906c41SOllivier Robert 3644ea906c41SOllivier Robert# Newer versions of ReliantUNIX round adjtime() values down to 3645ea906c41SOllivier Robert# 1/100s (system tick). Sigh ... 3646ea906c41SOllivier Robert# Unfortunately, there is no easy way to know if particular release 3647ea906c41SOllivier Robert# has this "feature" or any obvious way to test for it. 3648ea906c41SOllivier Robertcase "$host" in 36492b15cb3dSCy Schubert mips-sni-sysv4*) 36502b15cb3dSCy Schubert AC_DEFINE([RELIANTUNIX_CLOCK], [1], 36512b15cb3dSCy Schubert [Do we want the ReliantUNIX clock hacks?]) 3652ea906c41SOllivier Robertesac 3653ea906c41SOllivier Robert 3654ea906c41SOllivier Robertcase "$host" in 36552b15cb3dSCy Schubert *-*-sco3.2v5*) 36562b15cb3dSCy Schubert AC_DEFINE([SCO5_CLOCK], [1], [Do we want the SCO clock hacks?]) 3657ea906c41SOllivier Robertesac 3658ea906c41SOllivier Robert 36592b15cb3dSCy Schubertntp_cv_make_tickadj=yes 3660eb6d21b4SOllivier Robertcase "$can_kmem$ac_cv_var_tick$default_tickadj" in 3661ea906c41SOllivier Robert nonono) # Don't read KMEM, no presets. Bogus. 3662eb6d21b4SOllivier Robert AC_MSG_WARN([Can't read kmem, no PRESET_TICK or PRESET_TICKADJ. No tickadj.]) 36632b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3664ea906c41SOllivier Robert ;; 3665ea906c41SOllivier Robert nono*) # Don't read KMEM, no PRESET_TICK but PRESET_TICKADJ. Bogus. 3666eb6d21b4SOllivier Robert AC_MSG_WARN([Can't read kmem but no PRESET_TICK. No tickadj.]) 36672b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3668ea906c41SOllivier Robert ;; 3669ea906c41SOllivier Robert no*no) # Don't read KMEM, PRESET_TICK but no PRESET_TICKADJ. Bogus. 3670eb6d21b4SOllivier Robert AC_MSG_WARN([Can't read kmem but no PRESET_TICKADJ. No tickadj.]) 36712b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3672ea906c41SOllivier Robert ;; 3673ea906c41SOllivier Robert no*) # Don't read KMEM, PRESET_TICK and PRESET_TICKADJ. Cool. 3674ea906c41SOllivier Robert ;; 3675ea906c41SOllivier Robert yesnono) # Read KMEM, no presets. Cool. 3676ea906c41SOllivier Robert ;; 3677ea906c41SOllivier Robert yesno*) # Read KMEM, no PRESET_TICK but PRESET_TICKADJ. Bogus. 3678eb6d21b4SOllivier Robert AC_MSG_WARN([PRESET_TICKADJ is defined but not PRESET_TICK. Please report this.]) 3679ea906c41SOllivier Robert ;; 3680ea906c41SOllivier Robert yes*no) # Read KMEM, PRESET_TICK but no PRESET_TICKADJ. Cool. 3681ea906c41SOllivier Robert ;; 3682ea906c41SOllivier Robert yes*) # READ KMEM, PRESET_TICK and PRESET_TICKADJ. 3683ea906c41SOllivier Robert ;; 3684ea906c41SOllivier Robert *) # Generally bogus. 3685eb6d21b4SOllivier Robert AC_MSG_ERROR([This shouldn't happen.]) 3686ea906c41SOllivier Robert ;; 3687ea906c41SOllivier Robertesac 3688ea906c41SOllivier Robert 3689ea906c41SOllivier RobertAC_SUBST(MAKE_NTPTIME) 3690eb6d21b4SOllivier RobertAC_CACHE_CHECK([if we want and can make the ntptime utility], ac_cv_make_ntptime, 3691ea906c41SOllivier Robert[case "$host" in 36922b15cb3dSCy Schubert *) case "$ntp_cv_struct_ntptimeval$ntp_cv_var_kernel_pll" in 3693ea906c41SOllivier Robert yesyes) 3694ea906c41SOllivier Robert ans=yes 3695ea906c41SOllivier Robert ;; 3696ea906c41SOllivier Robert *) 3697ea906c41SOllivier Robert ans=no 3698ea906c41SOllivier Robert ;; 3699ea906c41SOllivier Robert esac 3700ea906c41SOllivier Robert ;; 3701ea906c41SOllivier Robertesac 3702ea906c41SOllivier Robertac_cv_make_ntptime=$ans]) 3703ea906c41SOllivier Robertcase "$ac_cv_make_ntptime" in 3704ea906c41SOllivier Robert yes) 3705ea906c41SOllivier Robert MAKE_NTPTIME=ntptime 3706ea906c41SOllivier Robert ;; 37072b15cb3dSCy Schubert *) 37082b15cb3dSCy Schubert NTPTIME_DB= 37092b15cb3dSCy Schubert NTPTIME_DL= 37102b15cb3dSCy Schubert NTPTIME_DS= 37112b15cb3dSCy Schubert NTPTIME_MS= 37122b15cb3dSCy Schubert ;; 3713ea906c41SOllivier Robertesac 3714ea906c41SOllivier Robert 37152b15cb3dSCy SchubertAC_SUBST([MAKE_TICKADJ]) 3716ea906c41SOllivier Robertcase "$host" in 3717ea906c41SOllivier Robert mips-sni-sysv4*) 3718ea906c41SOllivier Robert # tickadj is pretty useless on newer versions of ReliantUNIX 3719ea906c41SOllivier Robert # Do not bother 37202b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3721ea906c41SOllivier Robert ;; 3722ea906c41SOllivier Robert *-*-irix*) 37232b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3724ea906c41SOllivier Robert ;; 3725ea906c41SOllivier Robert *-*-solaris2*) 3726ea906c41SOllivier Robert # DLM says tickadj is a no-no starting with solaris2.5 3727ea906c41SOllivier Robert case "$host" in 3728ea906c41SOllivier Robert *-*-solaris2.1[[0-9]]*) 37292b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3730ea906c41SOllivier Robert ;; 3731ea906c41SOllivier Robert *-*-solaris2.[[0-4]]*) ;; 37322b15cb3dSCy Schubert *) ntp_cv_make_tickadj=no ;; 3733ea906c41SOllivier Robert esac 3734ea906c41SOllivier Robert ;; 3735ea906c41SOllivier Robert *-*-unicosmp*) 37362b15cb3dSCy Schubert ntp_cv_make_tickadj=no 3737ea906c41SOllivier Robert ;; 3738ea906c41SOllivier Robertesac 3739eb6d21b4SOllivier Robert 3740eb6d21b4SOllivier Robert# 3741eb6d21b4SOllivier Robert# Despite all the above, we always make tickadj. Setting 37422b15cb3dSCy Schubert# ntp_cv_make_tickadj before AC_CACHE_CHECK will cause a false 3743eb6d21b4SOllivier Robert# report that the configuration variable was cached. It may 3744eb6d21b4SOllivier Robert# be better to simply remove the hunk above, I did not want 3745eb6d21b4SOllivier Robert# to remove it if there is hope it will be used again. 3746eb6d21b4SOllivier Robert# 37472b15cb3dSCy SchubertAS_UNSET([ntp_cv_make_tickadj]) 3748eb6d21b4SOllivier Robert 37492b15cb3dSCy SchubertAC_CACHE_CHECK( 37502b15cb3dSCy Schubert [if we want and can make the tickadj utility], 37512b15cb3dSCy Schubert [ntp_cv_make_tickadj], 37522b15cb3dSCy Schubert [ntp_cv_make_tickadj=yes] 37532b15cb3dSCy Schubert) 37542b15cb3dSCy Schubertcase "$ntp_cv_make_tickadj" in 3755ea906c41SOllivier Robert yes) 3756ea906c41SOllivier Robert MAKE_TICKADJ=tickadj 3757ea906c41SOllivier Robert ;; 37582b15cb3dSCy Schubert *) 37592b15cb3dSCy Schubert CALC_TICKADJ_DB= 37602b15cb3dSCy Schubert CALC_TICKADJ_DL= 37612b15cb3dSCy Schubert CALC_TICKADJ_DS= 37622b15cb3dSCy Schubert CALC_TICKADJ_MS= 37632b15cb3dSCy Schubert TICKADJ_DB= 37642b15cb3dSCy Schubert TICKADJ_DL= 37652b15cb3dSCy Schubert TICKADJ_DS= 37662b15cb3dSCy Schubert TICKADJ_MS= 37672b15cb3dSCy Schubert ;; 3768ea906c41SOllivier Robertesac 3769ea906c41SOllivier Robert 37702b15cb3dSCy SchubertAC_SUBST([MAKE_TIMETRIM]) 37712b15cb3dSCy SchubertAC_CACHE_CHECK( 37722b15cb3dSCy Schubert [if we want and can make the timetrim utility], 37732b15cb3dSCy Schubert [ntp_cv_make_timetrim], 37742b15cb3dSCy Schubert [ 37752b15cb3dSCy Schubert case "$host" in 3776ea906c41SOllivier Robert *-*-irix*) 37772b15cb3dSCy Schubert ntp_cv_make_timetrim=yes 3778ea906c41SOllivier Robert ;; 3779ea906c41SOllivier Robert *-*-unicosmp*) 37802b15cb3dSCy Schubert ntp_cv_make_timetrim=yes 3781ea906c41SOllivier Robert ;; 3782ea906c41SOllivier Robert *) 37832b15cb3dSCy Schubert ntp_cv_make_timetrim=no 3784ea906c41SOllivier Robert ;; 37852b15cb3dSCy Schubert esac 37862b15cb3dSCy Schubert ] 37872b15cb3dSCy Schubert) 37882b15cb3dSCy Schubertcase "$ntp_cv_make_timetrim" in 3789ea906c41SOllivier Robert yes) 3790ea906c41SOllivier Robert MAKE_TIMETRIM=timetrim 3791ea906c41SOllivier Robert ;; 37922b15cb3dSCy Schubert *) TIMETRIM_DB= 37932b15cb3dSCy Schubert TIMETRIM_DL= 37942b15cb3dSCy Schubert TIMETRIM_DS= 37952b15cb3dSCy Schubert TIMETRIM_MS= 37962b15cb3dSCy Schubert ;; 3797ea906c41SOllivier Robertesac 3798ea906c41SOllivier Robert 37992b15cb3dSCy SchubertAC_SUBST([MAKE_LIBNTPSIM]) 38002b15cb3dSCy SchubertAC_SUBST([MAKE_NTPDSIM]) 3801eb6d21b4SOllivier Robert 3802eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we want to build the NTPD simulator]) 3803eb6d21b4SOllivier RobertAC_ARG_ENABLE( 3804eb6d21b4SOllivier Robert [simulator], 38052b15cb3dSCy Schubert [AS_HELP_STRING( 3806eb6d21b4SOllivier Robert [--enable-simulator], 3807eb6d21b4SOllivier Robert [- build/install the NTPD simulator?] 38082b15cb3dSCy Schubert )], 3809eb6d21b4SOllivier Robert [ans=$enableval], 3810eb6d21b4SOllivier Robert [ans=no] 3811eb6d21b4SOllivier Robert) 3812eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3813eb6d21b4SOllivier Robertcase "$ans" in 3814ea906c41SOllivier Robert yes) 3815ea906c41SOllivier Robert MAKE_NTPDSIM=ntpdsim 3816ea906c41SOllivier Robert MAKE_LIBNTPSIM=libntpsim.a 3817ea906c41SOllivier Robert ;; 38182b15cb3dSCy Schubert *) 38192b15cb3dSCy Schubert NTPDSIM_DB= 38202b15cb3dSCy Schubert NTPDSIM_DL= 38212b15cb3dSCy Schubert NTPDSIM_DS= 38222b15cb3dSCy Schubert NTPDSIM_MS= 38232b15cb3dSCy Schubert ;; 3824ea906c41SOllivier Robertesac 3825ea906c41SOllivier Robert 3826ea906c41SOllivier Robertcase "$build" in 3827ea906c41SOllivier Robert $host) 3828ea906c41SOllivier Robert ;; 3829ea906c41SOllivier Robert *) case "$host" in 3830ea906c41SOllivier Robert *-*-vxworks*) 3831ea906c41SOllivier Robert LDFLAGS="$LDFLAGS -r" 3832ea906c41SOllivier Robert ;; 3833ea906c41SOllivier Robert esac 3834ea906c41SOllivier Robert ;; 3835ea906c41SOllivier Robertesac 3836ea906c41SOllivier Robert 38372b15cb3dSCy SchubertNTP_WITHSNTP 38382b15cb3dSCy Schubert 38392b15cb3dSCy SchubertAC_MSG_CHECKING([if we want to build ntpsnmpd]) 38402b15cb3dSCy SchubertAC_ARG_WITH( 38412b15cb3dSCy Schubert [ntpsnmpd], 38422b15cb3dSCy Schubert [AS_HELP_STRING( 38432b15cb3dSCy Schubert [--with-ntpsnmpd], 38442b15cb3dSCy Schubert [s Build ntpsnmpd MIB agent?] 38452b15cb3dSCy Schubert )], 38462b15cb3dSCy Schubert [ans=$withval], 38472b15cb3dSCy Schubert [ 38482b15cb3dSCy Schubert case "$PATH_NET_SNMP_CONFIG" in 38492b15cb3dSCy Schubert /*) ans=yes ;; 38502b15cb3dSCy Schubert *) ans=no ;; 38512b15cb3dSCy Schubert esac 38522b15cb3dSCy Schubert ] 38532b15cb3dSCy Schubert) 38542b15cb3dSCy SchubertAC_MSG_RESULT([$ans]) 38552b15cb3dSCy Schubertcase "$ans" in 38562b15cb3dSCy Schubert yes) 38572b15cb3dSCy Schubert case "$PATH_NET_SNMP_CONFIG" in 38582b15cb3dSCy Schubert /*) 38592b15cb3dSCy Schubert SNMP_LIBS=`$PATH_NET_SNMP_CONFIG --agent-libs` 3860276da39aSCy Schubert # Bug 2815. This is a bit of a hack, but it works... 3861276da39aSCy Schubert case "$ntp_cv_net_snmp_version" in 3862276da39aSCy Schubert 5.3*) SNMP_LIBS=`echo $SNMP_LIBS | $SED -e 's/-lnetsnmpagent/-lnetsnmpagent -lnetsnmpmibs/'` 3863276da39aSCy Schubert ;; 3864276da39aSCy Schubert esac 38652b15cb3dSCy Schubert AC_SUBST([SNMP_LIBS]) 38662b15cb3dSCy Schubert # HMS: we really want to separate CPPFLAGS and CFLAGS 38672b15cb3dSCy Schubert foo=`$PATH_NET_SNMP_CONFIG --cflags` 38682b15cb3dSCy Schubert SNMP_CPPFLAGS= 38692b15cb3dSCy Schubert SNMP_CFLAGS= 38702b15cb3dSCy Schubert for i in $foo; do 38712b15cb3dSCy Schubert case "$i" in 38722b15cb3dSCy Schubert -D*|-U*|-I*) 38732b15cb3dSCy Schubert SNMP_CPPFLAGS="$SNMP_CPPFLAGS $i" 38742b15cb3dSCy Schubert ;; 38752b15cb3dSCy Schubert *) SNMP_CFLAGS="$SNMP_CFLAGS $i" 38762b15cb3dSCy Schubert ;; 38772b15cb3dSCy Schubert esac 38782b15cb3dSCy Schubert done 38792b15cb3dSCy Schubert AC_SUBST([SNMP_CPPFLAGS]) 38802b15cb3dSCy Schubert AC_SUBST([SNMP_CFLAGS]) 38812b15cb3dSCy Schubert 38822b15cb3dSCy Schubert save_CFLAGS=$CFLAGS 38832b15cb3dSCy Schubert save_CPPFLAGS=$CPPFLAGS 38842b15cb3dSCy Schubert save_LIBS=$LIBS 38852b15cb3dSCy Schubert CFLAGS=$SNMP_CFLAGS 38862b15cb3dSCy Schubert CPPFLAGS=$SNMP_CPPFLAGS 38872b15cb3dSCy Schubert 38882b15cb3dSCy Schubert AC_CHECK_HEADER( 38892b15cb3dSCy Schubert [net-snmp/net-snmp-config.h], 38902b15cb3dSCy Schubert [MAKE_NTPSNMPD=ntpsnmpd], 38912b15cb3dSCy Schubert [AC_MSG_WARN([net-snmp-config present but net-snmp headers are not available!])] 38922b15cb3dSCy Schubert ) 38932b15cb3dSCy Schubert 38942b15cb3dSCy Schubert # Do this last, as we're messing up LIBS. 38952b15cb3dSCy Schubert # check -lnetsnmp for netsnmp_daemonize 38962b15cb3dSCy Schubert LIBS=`$PATH_NET_SNMP_CONFIG --libs` 38972b15cb3dSCy Schubert AC_CHECK_LIB( 38982b15cb3dSCy Schubert [netsnmp], 38992b15cb3dSCy Schubert [netsnmp_daemonize], 39002b15cb3dSCy Schubert [ans=yes], 39012b15cb3dSCy Schubert [ans=no] 39022b15cb3dSCy Schubert ) 39032b15cb3dSCy Schubert case "$ans" in 39042b15cb3dSCy Schubert no) 39052b15cb3dSCy Schubert AC_DEFINE([NEED_NETSNMP_DAEMONIZE], [1], 39062b15cb3dSCy Schubert [We need to provide netsnmp_daemonize()]) 39072b15cb3dSCy Schubert esac 39082b15cb3dSCy Schubert 39092b15cb3dSCy Schubert CFLAGS=$save_CFLAGS 39102b15cb3dSCy Schubert AS_UNSET([save_CFLAGS]) 39112b15cb3dSCy Schubert CPPFLAGS=$save_CPPFLAGS 39122b15cb3dSCy Schubert AS_UNSET([save_CPPFLAGS]) 39132b15cb3dSCy Schubert LIBS=$save_LIBS 39142b15cb3dSCy Schubert AS_UNSET([save_LIBS]) 39152b15cb3dSCy Schubert ;; 39162b15cb3dSCy Schubert *) 39172b15cb3dSCy Schubert AC_MSG_WARN([Cannot build ntpsnmpd - net-snmp-config cannot be found]) 39182b15cb3dSCy Schubert ;; 39192b15cb3dSCy Schubert esac 39202b15cb3dSCy Schubert ;; 39212b15cb3dSCy Schubertesac 39222b15cb3dSCy SchubertAC_SUBST([MAKE_NTPSNMPD]) 39232b15cb3dSCy Schubert 39242b15cb3dSCy Schubertcase "$MAKE_NTPSNMPD" in 39252b15cb3dSCy Schubert '') 39262b15cb3dSCy Schubert NTPSNMPD_DB= 39272b15cb3dSCy Schubert NTPSNMPD_DL= 39282b15cb3dSCy Schubert NTPSNMPD_DS= 39292b15cb3dSCy Schubert NTPSNMPD_MS= 39302b15cb3dSCy Schubert ;; 39312b15cb3dSCy Schubertesac 3932eb6d21b4SOllivier Robert 3933eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should always slew the time]) 3934eb6d21b4SOllivier Robert 3935eb6d21b4SOllivier Robert# target-specific defaults 3936eb6d21b4SOllivier Robert 3937eb6d21b4SOllivier Robertcase "$host" in 3938ea906c41SOllivier Robert *-apple-aux[[23]]*) 3939ea906c41SOllivier Robert ans=yes 3940ea906c41SOllivier Robert ;; 3941ea906c41SOllivier Robert *-*-bsdi[[012]]*) 3942ea906c41SOllivier Robert ans=no 3943ea906c41SOllivier Robert ;; 3944ea906c41SOllivier Robert *-*-bsdi*) 3945ea906c41SOllivier Robert ans=yes 3946ea906c41SOllivier Robert ;; 3947ea906c41SOllivier Robert *-*-openvms*) # HMS: won't be found 3948ea906c41SOllivier Robert ans=yes 3949ea906c41SOllivier Robert ;; 3950ea906c41SOllivier Robert *) ans=no 3951ea906c41SOllivier Robert ;; 3952ea906c41SOllivier Robertesac 3953eb6d21b4SOllivier Robert 3954eb6d21b4SOllivier Robert# --enable-slew-always / --disable-slew-always overrides default 3955eb6d21b4SOllivier Robert 3956eb6d21b4SOllivier RobertAC_ARG_ENABLE( 3957eb6d21b4SOllivier Robert [slew-always], 39582b15cb3dSCy Schubert [AS_HELP_STRING( 3959eb6d21b4SOllivier Robert [--enable-slew-always], 3960eb6d21b4SOllivier Robert [s always slew the time] 39612b15cb3dSCy Schubert )], 3962eb6d21b4SOllivier Robert [ans=$enableval] 3963eb6d21b4SOllivier Robert) 3964eb6d21b4SOllivier Robert 3965eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 3966eb6d21b4SOllivier Robert 3967eb6d21b4SOllivier Robertcase "$ans" in 39682b15cb3dSCy Schubert yes) 39692b15cb3dSCy Schubert AC_DEFINE([SLEWALWAYS], [1], [Slew always?]) 3970ea906c41SOllivier Robertesac 3971ea906c41SOllivier Robert 3972eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should step and slew the time]) 3973eb6d21b4SOllivier Robert 3974eb6d21b4SOllivier Robertcase "$host" in 3975ea906c41SOllivier Robert *-sni-sysv*) 3976ea906c41SOllivier Robert ans=yes 3977ea906c41SOllivier Robert ;; 3978276da39aSCy Schubert *-stratus-vos) 3979276da39aSCy Schubert ans=no 3980276da39aSCy Schubert ;; 3981ea906c41SOllivier Robert *-univel-sysv*) 3982ea906c41SOllivier Robert ans=no 3983ea906c41SOllivier Robert ;; 3984ea906c41SOllivier Robert *-*-ptx*) 3985ea906c41SOllivier Robert ans=yes 3986ea906c41SOllivier Robert ;; 3987ea906c41SOllivier Robert *-*-solaris2.1[[0-9]]*) 3988ea906c41SOllivier Robert ans=no 3989ea906c41SOllivier Robert ;; 3990ea906c41SOllivier Robert *-*-solaris2.[[012]]*) 3991ea906c41SOllivier Robert ans=yes 3992ea906c41SOllivier Robert ;; 3993ea906c41SOllivier Robert *-*-sysv4*) # HMS: Does this catch Fujitsu UXP? 3994ea906c41SOllivier Robert ans=yes 3995ea906c41SOllivier Robert ;; 3996ea906c41SOllivier Robert *) ans=no 3997ea906c41SOllivier Robert ;; 3998ea906c41SOllivier Robertesac 3999eb6d21b4SOllivier Robert 4000eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4001eb6d21b4SOllivier Robert [step-slew], 40022b15cb3dSCy Schubert [AS_HELP_STRING( 4003eb6d21b4SOllivier Robert [--enable-step-slew], 4004eb6d21b4SOllivier Robert [s step and slew the time] 40052b15cb3dSCy Schubert )], 4006eb6d21b4SOllivier Robert [ans=$enableval] 4007eb6d21b4SOllivier Robert) 4008eb6d21b4SOllivier Robert 4009eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4010eb6d21b4SOllivier Robert 4011eb6d21b4SOllivier Robertcase "$ans" in 40122b15cb3dSCy Schubert yes) 40132b15cb3dSCy Schubert AC_DEFINE([STEP_SLEW], [1], [Step, then slew the clock?]) 4014ea906c41SOllivier Robertesac 4015ea906c41SOllivier Robert 4016eb6d21b4SOllivier RobertAC_MSG_CHECKING([if ntpdate should step the time]) 4017eb6d21b4SOllivier Robert 4018eb6d21b4SOllivier Robertcase "$host" in 4019ea906c41SOllivier Robert *-apple-aux[[23]]*) 4020ea906c41SOllivier Robert ans=yes 4021ea906c41SOllivier Robert ;; 4022ea906c41SOllivier Robert *) ans=no 40232b15cb3dSCy Schubert ;; 4024ea906c41SOllivier Robertesac 4025eb6d21b4SOllivier Robert 4026eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4027eb6d21b4SOllivier Robert [ntpdate-step], 40282b15cb3dSCy Schubert [AS_HELP_STRING( 4029eb6d21b4SOllivier Robert [--enable-ntpdate-step], 4030eb6d21b4SOllivier Robert [s if ntpdate should step the time] 40312b15cb3dSCy Schubert )], 4032eb6d21b4SOllivier Robert [ans=$enableval] 4033eb6d21b4SOllivier Robert) 4034eb6d21b4SOllivier Robert 4035eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4036eb6d21b4SOllivier Robert 4037eb6d21b4SOllivier Robertcase "$ans" in 40382b15cb3dSCy Schubert yes) 40392b15cb3dSCy Schubert AC_DEFINE([FORCE_NTPDATE_STEP], [1], 40402b15cb3dSCy Schubert [force ntpdate to step the clock if !defined(STEP_SLEW) ?]) 4041ea906c41SOllivier Robertesac 4042ea906c41SOllivier Robert 4043eb6d21b4SOllivier Robert 4044eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should sync TODR clock every hour]) 4045eb6d21b4SOllivier Robert 4046eb6d21b4SOllivier Robertcase "$host" in 4047ea906c41SOllivier Robert *-*-nextstep*) 4048ea906c41SOllivier Robert ans=yes 4049ea906c41SOllivier Robert ;; 4050ea906c41SOllivier Robert *-*-openvms*) # HMS: won't be found 4051ea906c41SOllivier Robert ans=yes 4052ea906c41SOllivier Robert ;; 4053eb6d21b4SOllivier Robert *) 4054eb6d21b4SOllivier Robert ans=no 40552b15cb3dSCy Schubert ;; 4056eb6d21b4SOllivier Robertesac 4057eb6d21b4SOllivier Robert 4058eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4059eb6d21b4SOllivier Robert [hourly-todr-sync], 40602b15cb3dSCy Schubert [AS_HELP_STRING( 4061eb6d21b4SOllivier Robert [--enable-hourly-todr-sync], 4062eb6d21b4SOllivier Robert [s if we should sync TODR hourly] 40632b15cb3dSCy Schubert )], 4064eb6d21b4SOllivier Robert [ans=$enableval] 4065eb6d21b4SOllivier Robert) 4066eb6d21b4SOllivier Robert 4067eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4068eb6d21b4SOllivier Robert 4069ea906c41SOllivier Robertcase "$ac_cv_var_sync_todr" in 40702b15cb3dSCy Schubert yes) 40712b15cb3dSCy Schubert AC_DEFINE([DOSYNCTODR], [1], [synch TODR hourly?]) ;; 4072ea906c41SOllivier Robertesac 4073ea906c41SOllivier Robert 4074eb6d21b4SOllivier Robert 4075eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should avoid kernel FLL bug]) 4076eb6d21b4SOllivier Robert 4077eb6d21b4SOllivier Robertcase "$host" in 4078ea906c41SOllivier Robert *-*-solaris2.6) 4079ea906c41SOllivier Robert unamev=`uname -v` 4080ea906c41SOllivier Robert case "$unamev" in 4081ea906c41SOllivier Robert Generic_105181-*) 4082ea906c41SOllivier Robert old_IFS="$IFS" 4083ea906c41SOllivier Robert IFS="-" 4084ea906c41SOllivier Robert set $unamev 4085ea906c41SOllivier Robert IFS="$old_IFS" 4086ea906c41SOllivier Robert if test "$2" -ge 17 4087ea906c41SOllivier Robert then 4088ea906c41SOllivier Robert # Generic_105181-17 and higher 4089ea906c41SOllivier Robert ans=no 4090ea906c41SOllivier Robert else 4091ea906c41SOllivier Robert ans=yes 4092ea906c41SOllivier Robert fi 4093ea906c41SOllivier Robert ;; 4094eb6d21b4SOllivier Robert *) 4095eb6d21b4SOllivier Robert ans=yes 40962b15cb3dSCy Schubert ;; 4097ea906c41SOllivier Robert esac 4098ea906c41SOllivier Robert ;; 4099ea906c41SOllivier Robert *-*-solaris2.7) 4100ea906c41SOllivier Robert unamev=`uname -v` 4101ea906c41SOllivier Robert case "$unamev" in 4102ea906c41SOllivier Robert Generic_106541-*) 4103ea906c41SOllivier Robert old_IFS="$IFS" 4104ea906c41SOllivier Robert IFS="-" 4105ea906c41SOllivier Robert set $unamev 4106ea906c41SOllivier Robert IFS="$old_IFS" 4107ea906c41SOllivier Robert if test "$2" -ge 07 4108ea906c41SOllivier Robert then 4109ea906c41SOllivier Robert # Generic_106541-07 and higher 4110ea906c41SOllivier Robert ans=no 4111ea906c41SOllivier Robert else 4112ea906c41SOllivier Robert ans=yes 4113ea906c41SOllivier Robert fi 4114ea906c41SOllivier Robert ;; 4115eb6d21b4SOllivier Robert *) 4116eb6d21b4SOllivier Robert ans=yes 41172b15cb3dSCy Schubert ;; 4118ea906c41SOllivier Robert esac 4119ea906c41SOllivier Robert ;; 4120eb6d21b4SOllivier Robert *) 4121eb6d21b4SOllivier Robert ans=no 41222b15cb3dSCy Schubert ;; 4123ea906c41SOllivier Robertesac 4124eb6d21b4SOllivier Robert 4125eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4126eb6d21b4SOllivier Robert [kernel-fll-bug], 41272b15cb3dSCy Schubert [AS_HELP_STRING( 4128eb6d21b4SOllivier Robert [--enable-kernel-fll-bug], 4129eb6d21b4SOllivier Robert [s if we should avoid a kernel FLL bug] 41302b15cb3dSCy Schubert )], 4131eb6d21b4SOllivier Robert [ans=$enableval] 4132eb6d21b4SOllivier Robert) 4133eb6d21b4SOllivier Robert 4134eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4135eb6d21b4SOllivier Robert 4136eb6d21b4SOllivier Robertcase "$ans" in 41372b15cb3dSCy Schubert yes) 41382b15cb3dSCy Schubert AC_DEFINE([KERNEL_FLL_BUG], [1], [Does the kernel have an FLL bug?]) 41392b15cb3dSCy Schubertesac 41402b15cb3dSCy Schubert 41412b15cb3dSCy Schubert 41422b15cb3dSCy SchubertAC_MSG_CHECKING([if we want new session key behavior]) 41432b15cb3dSCy SchubertAC_ARG_ENABLE( 41442b15cb3dSCy Schubert [bug1243-fix], 41452b15cb3dSCy Schubert [AS_HELP_STRING( 41462b15cb3dSCy Schubert [--enable-bug1243-fix], 41472b15cb3dSCy Schubert [+ use unmodified autokey session keys] 41482b15cb3dSCy Schubert )], 41492b15cb3dSCy Schubert [ans=$enableval], 41502b15cb3dSCy Schubert [ans=yes] 41512b15cb3dSCy Schubert) 41522b15cb3dSCy SchubertAC_MSG_RESULT([$ans]) 41532b15cb3dSCy Schubertcase "$ans" in 41542b15cb3dSCy Schubert no) 41552b15cb3dSCy Schubert AC_DEFINE([DISABLE_BUG1243_FIX], [1], 41562b15cb3dSCy Schubert [use old autokey session key behavior?]) 4157ea906c41SOllivier Robertesac 4158ea906c41SOllivier Robert 4159eb6d21b4SOllivier Robert 41604990d495SXin LIAC_MSG_CHECKING([if we want the explicit 127.0.0.0/8 martian filter]) 41614990d495SXin LIAC_ARG_ENABLE( 41624990d495SXin LI [bug3020-fix], 41634990d495SXin LI [AS_HELP_STRING( 41644990d495SXin LI [--enable-bug3020-fix], 41654990d495SXin LI [+ Provide the explicit 127.0.0.0/8 martian filter] 41664990d495SXin LI )], 41674990d495SXin LI [ans=$enableval], 41684990d495SXin LI [ans=yes] 41694990d495SXin LI) 41704990d495SXin LIAC_MSG_RESULT([$ans]) 41714990d495SXin LIcase "$ans" in 41724990d495SXin LI yes) 41734990d495SXin LI AC_DEFINE([ENABLE_BUG3020_FIX], [1], 41744990d495SXin LI [Provide the explicit 127.0.0.0/8 martian filter?]) 41754990d495SXin LIesac 41764990d495SXin LI 41774990d495SXin LI 4178052d159aSCy SchubertAC_MSG_CHECKING([if we want correct mode7 fudgetime2 behavior]) 4179052d159aSCy SchubertAC_ARG_ENABLE( 4180052d159aSCy Schubert [bug3527-fix], 4181052d159aSCy Schubert [AS_HELP_STRING( 4182052d159aSCy Schubert [--enable-bug3527-fix], 4183052d159aSCy Schubert [+ provide correct mode7 fudgetime2 behavior] 4184052d159aSCy Schubert )], 4185052d159aSCy Schubert [ans=$enableval], 4186052d159aSCy Schubert [ans=yes] 4187052d159aSCy Schubert) 4188052d159aSCy SchubertAC_MSG_RESULT([$ans]) 4189052d159aSCy Schubertcase "$ans" in 4190052d159aSCy Schubert no) 4191052d159aSCy Schubert AC_DEFINE([DISABLE_BUG3527_FIX], [1], 4192052d159aSCy Schubert [use old autokey session key behavior?]) 4193052d159aSCy Schubertesac 4194052d159aSCy Schubert 4195052d159aSCy Schubert 4196a466cc55SCy SchubertAC_MSG_CHECKING([if we want a debug assert on an OOB KoD RATE value]) 4197a466cc55SCy SchubertAC_ARG_ENABLE( 4198a466cc55SCy Schubert [bug3767-fix], 4199a466cc55SCy Schubert [AS_HELP_STRING( 4200a466cc55SCy Schubert [--enable-bug3767-fix], 4201a466cc55SCy Schubert [+ Disable debug assertion on OOB KoD RATE value] 4202a466cc55SCy Schubert )], 4203a466cc55SCy Schubert [ans=$enableval], 4204a466cc55SCy Schubert [ans=yes] 4205a466cc55SCy Schubert) 4206a466cc55SCy SchubertAC_MSG_RESULT([$ans]) 4207a466cc55SCy Schubertcase "$ans" in 4208a466cc55SCy Schubert no) 4209a466cc55SCy Schubert AC_DEFINE([DISABLE_BUG3767_FIX], [1], 4210a466cc55SCy Schubert [Disable debug assertion on OOB KoD RATE value?]) 4211a466cc55SCy Schubertesac 4212a466cc55SCy Schubert 4213a466cc55SCy Schubert 4214eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should use the IRIG sawtooth filter]) 4215eb6d21b4SOllivier Robert 4216eb6d21b4SOllivier Robertcase "$host" in 4217ea906c41SOllivier Robert *-*-solaris2.[[89]]) 4218ea906c41SOllivier Robert ans=yes 4219ea906c41SOllivier Robert ;; 4220ea906c41SOllivier Robert *-*-solaris2.1[[0-9]]*) 4221ea906c41SOllivier Robert ans=yes 4222ea906c41SOllivier Robert ;; 4223ea906c41SOllivier Robert *) ans=no 42242b15cb3dSCy Schubert ;; 4225ea906c41SOllivier Robertesac 4226eb6d21b4SOllivier Robert 4227eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4228eb6d21b4SOllivier Robert [irig-sawtooth], 42292b15cb3dSCy Schubert [AS_HELP_STRING( 4230eb6d21b4SOllivier Robert [--enable-irig-sawtooth], 4231eb6d21b4SOllivier Robert [s if we should enable the IRIG sawtooth filter] 42322b15cb3dSCy Schubert )], 4233eb6d21b4SOllivier Robert [ans=$enableval] 4234eb6d21b4SOllivier Robert) 4235eb6d21b4SOllivier Robert 4236eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4237eb6d21b4SOllivier Robert 4238eb6d21b4SOllivier Robertcase "$ans" in 42392b15cb3dSCy Schubert yes) 42402b15cb3dSCy Schubert AC_DEFINE([IRIG_SUCKS], [1], 42412b15cb3dSCy Schubert [Should we use the IRIG sawtooth filter?]) 4242ea906c41SOllivier Robertesac 4243ea906c41SOllivier Robert 4244eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we should enable NIST lockclock scheme]) 4245eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4246eb6d21b4SOllivier Robert [nist], 42472b15cb3dSCy Schubert [AS_HELP_STRING( 4248eb6d21b4SOllivier Robert [--enable-nist], 4249eb6d21b4SOllivier Robert [- if we should enable the NIST lockclock scheme] 42502b15cb3dSCy Schubert )], 4251eb6d21b4SOllivier Robert [ans=$enableval], 4252eb6d21b4SOllivier Robert [ans=no] 4253eb6d21b4SOllivier Robert) 4254eb6d21b4SOllivier Robert 4255eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4256eb6d21b4SOllivier Robert 4257eb6d21b4SOllivier Robertcase "$ans" in 42582b15cb3dSCy Schubert yes) 42592b15cb3dSCy Schubert AC_DEFINE([LOCKCLOCK], [1], 42602b15cb3dSCy Schubert [Should we align with the NIST lockclock scheme?]) ;; 4261ea906c41SOllivier Robertesac 4262ea906c41SOllivier Robert 4263eb6d21b4SOllivier RobertAC_MSG_CHECKING([if we want support for Samba's signing daemon]) 4264eb6d21b4SOllivier RobertAC_ARG_ENABLE( 4265eb6d21b4SOllivier Robert [ntp-signd], 42662b15cb3dSCy Schubert [AS_HELP_STRING( 4267eb6d21b4SOllivier Robert [--enable-ntp-signd], 4268eb6d21b4SOllivier Robert [- Provide support for Samba's signing daemon, =/var/run/ntp_signd] 42692b15cb3dSCy Schubert )], 4270eb6d21b4SOllivier Robert [ans=$enableval], 4271eb6d21b4SOllivier Robert [ans=no] 4272eb6d21b4SOllivier Robert) 4273eb6d21b4SOllivier Robert 4274eb6d21b4SOllivier RobertAC_MSG_RESULT([$ans]) 4275eb6d21b4SOllivier Robert 4276eb6d21b4SOllivier Robertcase "$ans" in 4277eb6d21b4SOllivier Robert no) 4278eb6d21b4SOllivier Robert ntp_signd_path= 4279eb6d21b4SOllivier Robert ;; 4280eb6d21b4SOllivier Robert yes) 4281eb6d21b4SOllivier Robert ntp_signd_path=/var/run/ntp_signd 4282eb6d21b4SOllivier Robert ;; 4283eb6d21b4SOllivier Robert *) 4284eb6d21b4SOllivier Robert ntp_signd_path="$ans" 4285eb6d21b4SOllivier Robertesac 4286eb6d21b4SOllivier Robert 4287eb6d21b4SOllivier Robertcase "$ntp_signd_path" in 4288eb6d21b4SOllivier Robert '') 4289eb6d21b4SOllivier Robert ;; 4290eb6d21b4SOllivier Robert *) 42912b15cb3dSCy Schubert AC_DEFINE([HAVE_NTP_SIGND], [1], 42922b15cb3dSCy Schubert [Do we want support for Samba's signing daemon?]) 42932b15cb3dSCy Schubert AC_DEFINE_UNQUOTED([NTP_SIGND_PATH], ["$ntp_signd_path"], 42942b15cb3dSCy Schubert [Path to sign daemon rendezvous socket]) 4295eb6d21b4SOllivier Robert ;; 4296eb6d21b4SOllivier Robertesac 4297eb6d21b4SOllivier Robert 4298a466cc55SCy Schubertdnl check for 'magic pps' for Linux 4299a466cc55SCy SchubertAC_MSG_CHECKING([if we want 'magic' PPS support]) 4300a466cc55SCy SchubertAC_ARG_ENABLE( 4301a466cc55SCy Schubert [magicpps], 4302a466cc55SCy Schubert [AS_HELP_STRING( 4303a466cc55SCy Schubert [--enable-magicpps], 4304a466cc55SCy Schubert [+ try to auto-instantiate PPS devices on Linux] 4305a466cc55SCy Schubert )], 4306a466cc55SCy Schubert [ans=$enableval], 4307a466cc55SCy Schubert [ans=yes] 4308a466cc55SCy Schubert) 4309a466cc55SCy SchubertAC_MSG_RESULT([$ans]) 4310a466cc55SCy Schubertcase "$ans" in 4311a466cc55SCy Schubert yes) 4312a466cc55SCy Schubert AC_DEFINE([ENABLE_MAGICPPS], [1], 4313a466cc55SCy Schubert [auto-instantiate missing PPS devices on Linux]) 4314a466cc55SCy Schubert AC_CHECK_FUNCS([openat fdopendir fstatat]) 4315a466cc55SCy Schubert ;; 4316a466cc55SCy Schubertesac 4317a466cc55SCy Schubert 4318eb6d21b4SOllivier RobertAC_CHECK_HEADERS([libscf.h]) 43192b15cb3dSCy SchubertLSCF= 4320eb6d21b4SOllivier Robertcase "$ac_cv_header_libscf_h" in 4321eb6d21b4SOllivier Robert yes) 43222b15cb3dSCy Schubert LSCF='-lscf' 4323eb6d21b4SOllivier Robertesac 43242b15cb3dSCy SchubertAC_SUBST([LSCF]) 4325eb6d21b4SOllivier Robert 43262b15cb3dSCy SchubertNTP_IPV6 4327eb6d21b4SOllivier Robert 4328eb6d21b4SOllivier Robert 4329ea906c41SOllivier Robert# 4330ea906c41SOllivier Robert# Look for a sysctl call to get the list of network interfaces. 4331ea906c41SOllivier Robert# 4332eb6d21b4SOllivier RobertAC_CACHE_CHECK( 4333eb6d21b4SOllivier Robert [for interface list sysctl], 43342b15cb3dSCy Schubert [ntp_cv_iflist_sysctl], 43352b15cb3dSCy Schubert [AC_PREPROC_IFELSE( 4336a25439b6SCy Schubert [AC_LANG_SOURCE([ 4337ea906c41SOllivier Robert #include <sys/param.h> 4338ea906c41SOllivier Robert #include <sys/sysctl.h> 4339ea906c41SOllivier Robert #include <sys/socket.h> 43402b15cb3dSCy Schubert #ifndef NET_RT_IFLIST 43412b15cb3dSCy Schubert # error 4342ea906c41SOllivier Robert #endif 4343a25439b6SCy Schubert ])], 43442b15cb3dSCy Schubert [ntp_cv_iflist_sysctl=yes], 43452b15cb3dSCy Schubert [ntp_cv_iflist_sysctl=no] 43462b15cb3dSCy Schubert )] 4347eb6d21b4SOllivier Robert) 43482b15cb3dSCy Schubertcase "$ntp_cv_iflist_sysctl" in 4349eb6d21b4SOllivier Robert yes) 43502b15cb3dSCy Schubert AC_DEFINE([HAVE_IFLIST_SYSCTL], [1], [have iflist_sysctl?]) 4351eb6d21b4SOllivier Robertesac 4352eb6d21b4SOllivier Robert 4353ea906c41SOllivier Robert### 4354ea906c41SOllivier Robert 43552b15cb3dSCy SchubertAC_MSG_CHECKING([if we want the saveconfig mechanism]) 43562b15cb3dSCy SchubertAC_ARG_ENABLE( 43572b15cb3dSCy Schubert [saveconfig], 43582b15cb3dSCy Schubert [AS_HELP_STRING( 43592b15cb3dSCy Schubert [--enable-saveconfig], 43602b15cb3dSCy Schubert [+ saveconfig mechanism] 43612b15cb3dSCy Schubert )], 43622b15cb3dSCy Schubert [ntp_ok=$enableval], 43632b15cb3dSCy Schubert [ntp_ok=yes] 43642b15cb3dSCy Schubert) 43652b15cb3dSCy Schubertntp_saveconfig_enabled=0 43662b15cb3dSCy Schubertcase "$ntp_ok" in 43672b15cb3dSCy Schubert yes) 43682b15cb3dSCy Schubert ntp_saveconfig_enabled=1 43692b15cb3dSCy Schubert AC_DEFINE([SAVECONFIG], [1], [saveconfig mechanism]) 43702b15cb3dSCy Schubert ;; 43712b15cb3dSCy Schubertesac 43722b15cb3dSCy SchubertAM_CONDITIONAL([SAVECONFIG_ENABLED], [test x$ntp_saveconfig_enabled = x1]) 43732b15cb3dSCy SchubertAC_MSG_RESULT([$ntp_ok]) 4374ea906c41SOllivier Robert 4375276da39aSCy Schubert### 4376276da39aSCy Schubert 4377276da39aSCy SchubertAC_MSG_CHECKING([if we want the experimental leap smear code]) 4378276da39aSCy SchubertAC_ARG_ENABLE( 4379276da39aSCy Schubert [leap-smear], 4380276da39aSCy Schubert [AS_HELP_STRING( 4381276da39aSCy Schubert [--enable-leap-smear], 4382276da39aSCy Schubert [- experimental leap smear code] 4383276da39aSCy Schubert )], 4384276da39aSCy Schubert [ntp_ok=$enableval], 4385276da39aSCy Schubert [ntp_ok=no] 4386276da39aSCy Schubert) 4387276da39aSCy Schubertntp_leap_smear_enabled=0 4388276da39aSCy Schubertcase "$ntp_ok" in 4389276da39aSCy Schubert yes) 4390276da39aSCy Schubert ntp_leap_smear_enabled=1 4391276da39aSCy Schubert AC_DEFINE([LEAP_SMEAR], [1], [leap smear mechanism]) 4392276da39aSCy Schubert AC_SUBST([HAVE_LEAPSMEARINTERVAL]) 4393276da39aSCy Schubert HAVE_LEAPSMEARINTERVAL="leapsmearinterval 0" 4394276da39aSCy Schubert ;; 4395276da39aSCy Schubertesac 4396276da39aSCy SchubertAC_MSG_RESULT([$ntp_ok]) 4397276da39aSCy Schubert 43984990d495SXin LI### 43994990d495SXin LI 44004990d495SXin LIAC_MSG_CHECKING([if we want dynamic interleave support]) 44014990d495SXin LIAC_ARG_ENABLE( 44024990d495SXin LI [dynamic-interleave], 44034990d495SXin LI [AS_HELP_STRING( 44044990d495SXin LI [--enable-dynamic-interleave], 44054990d495SXin LI [- dynamic interleave support] 44064990d495SXin LI )], 44074990d495SXin LI [ntp_ok=$enableval], 44084990d495SXin LI [ntp_ok=no] 44094990d495SXin LI) 44104990d495SXin LIntp_dynamic_interleave=0 44114990d495SXin LIcase "$ntp_ok" in 44124990d495SXin LI yes) 44134990d495SXin LI ntp_dynamic_interleave=1 44144990d495SXin LI ;; 44154990d495SXin LIesac 44164990d495SXin LIAC_DEFINE_UNQUOTED([DYNAMIC_INTERLEAVE], [$ntp_dynamic_interleave], 44174990d495SXin LI [support dynamic interleave?]) 44184990d495SXin LIAC_MSG_RESULT([$ntp_ok]) 44194990d495SXin LI 4420*f5f40dd6SCy SchubertAH_BOTTOM([ 4421*f5f40dd6SCy Schubert /* 4422*f5f40dd6SCy Schubert * Macro to use in otherwise-empty source files to comply with ANSI C 4423*f5f40dd6SCy Schubert * requirement that each translation unit (source file) contain some 4424*f5f40dd6SCy Schubert * declaration. This has commonly been done by declaring an unused 4425*f5f40dd6SCy Schubert * global variable of type int or char. An extern reference to abs() 4426*f5f40dd6SCy Schubert * serves the same purpose without bloat. We once used exit() but 4427*f5f40dd6SCy Schubert * that can produce warnings on systems that declare exit() noreturn. 4428*f5f40dd6SCy Schubert */ 4429*f5f40dd6SCy Schubert #define NONEMPTY_TRANSLATION_UNIT extern int abs(int); 4430*f5f40dd6SCy Schubert]) 4431*f5f40dd6SCy Schubert 4432276da39aSCy SchubertNTP_UNITYBUILD 4433276da39aSCy Schubert 44349034852cSGleb SmirnoffNTP_PROBLEM_TESTS 44359034852cSGleb Smirnoff 44362b15cb3dSCy Schubert### 44372b15cb3dSCy Schubert 44384e1ef62aSXin LIAC_CHECK_DECLS([sigsetjmp,siglongjmp], [], [], [[#include <setjmp.h>]]) 44394e1ef62aSXin LI 44404e1ef62aSXin LI### 44414e1ef62aSXin LI 44422b15cb3dSCy SchubertAC_DEFINE_DIR([NTP_KEYSDIR], [sysconfdir], 44432b15cb3dSCy Schubert [Default location of crypto key info]) 44442b15cb3dSCy Schubert 44452b15cb3dSCy SchubertAC_CONFIG_FILES([Makefile]) 44462b15cb3dSCy SchubertAC_CONFIG_FILES([adjtimed/Makefile]) 44472b15cb3dSCy SchubertAC_CONFIG_FILES([clockstuff/Makefile]) 44482b15cb3dSCy SchubertAC_CONFIG_FILES([include/Makefile]) 44492b15cb3dSCy SchubertAC_CONFIG_FILES([include/isc/Makefile]) 44502b15cb3dSCy SchubertAC_CONFIG_FILES([kernel/Makefile]) 44512b15cb3dSCy SchubertAC_CONFIG_FILES([kernel/sys/Makefile]) 44522b15cb3dSCy SchubertAC_CONFIG_FILES([libntp/Makefile]) 44532b15cb3dSCy SchubertAC_CONFIG_FILES([libparse/Makefile]) 44542b15cb3dSCy SchubertAC_CONFIG_FILES([ntpd/Makefile]) 4455*f5f40dd6SCy SchubertAC_CONFIG_FILES([ntpd/complete.conf], [$SED -e '/^rlimit$/d' -e '/^$/d' < ntpd/complete.conf > ntpd/complete.conf.new && mv ntpd/complete.conf.new ntpd/complete.conf]) 44562b15cb3dSCy SchubertAC_CONFIG_FILES([ntpdate/Makefile]) 44572b15cb3dSCy SchubertAC_CONFIG_FILES([ntpdc/Makefile]) 44582b15cb3dSCy SchubertAC_CONFIG_FILES([ntpdc/nl.pl], [chmod +x ntpdc/nl.pl]) 44592b15cb3dSCy SchubertAC_CONFIG_FILES([ntpq/Makefile]) 44602b15cb3dSCy SchubertAC_CONFIG_FILES([ntpsnmpd/Makefile]) 44612b15cb3dSCy SchubertAC_CONFIG_FILES([parseutil/Makefile]) 44622b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/Makefile]) 4463a25439b6SCy SchubertAC_CONFIG_FILES([scripts/build/Makefile]) 4464e27abb66SXin LIAC_CONFIG_FILES([scripts/build/genAuthors], [chmod +x scripts/build/genAuthors]) 44652b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/build/mkver], [chmod +x scripts/build/mkver]) 4466a25439b6SCy SchubertAC_CONFIG_FILES([scripts/calc_tickadj/Makefile]) 4467a25439b6SCy SchubertAC_CONFIG_FILES([scripts/calc_tickadj/calc_tickadj], [chmod +x scripts/calc_tickadj/calc_tickadj]) 4468a25439b6SCy SchubertAC_CONFIG_FILES([scripts/lib/Makefile]) 44692b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/ntp-wait/Makefile]) 4470a25439b6SCy SchubertAC_CONFIG_FILES([scripts/ntp-wait/ntp-wait], [chmod +x scripts/ntp-wait/ntp-wait]) 44712b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/ntpsweep/Makefile]) 4472a25439b6SCy SchubertAC_CONFIG_FILES([scripts/ntpsweep/ntpsweep], [chmod +x scripts/ntpsweep/ntpsweep]) 44732b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/ntptrace/Makefile]) 4474a25439b6SCy SchubertAC_CONFIG_FILES([scripts/ntptrace/ntptrace], [chmod +x scripts/ntptrace/ntptrace]) 44752b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/ntpver], [chmod +x scripts/ntpver]) 44762b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/plot_summary], [chmod +x scripts/plot_summary]) 44772b15cb3dSCy SchubertAC_CONFIG_FILES([scripts/summary], [chmod +x scripts/summary]) 4478a25439b6SCy SchubertAC_CONFIG_FILES([scripts/update-leap/Makefile]) 4479276da39aSCy SchubertAC_CONFIG_FILES([scripts/update-leap/update-leap], [chmod +x scripts/update-leap/update-leap]) 44802b15cb3dSCy SchubertAC_CONFIG_FILES([tests/Makefile]) 4481276da39aSCy SchubertAC_CONFIG_FILES([tests/bug-2803/Makefile]) 44822b15cb3dSCy SchubertAC_CONFIG_FILES([tests/libntp/Makefile]) 44832b15cb3dSCy SchubertAC_CONFIG_FILES([tests/ntpd/Makefile]) 44849034852cSGleb SmirnoffAC_CONFIG_FILES([tests/ntpq/Makefile]) 4485276da39aSCy SchubertAC_CONFIG_FILES([tests/sandbox/Makefile]) 4486276da39aSCy SchubertAC_CONFIG_FILES([tests/sec-2853/Makefile]) 44872b15cb3dSCy SchubertAC_CONFIG_FILES([util/Makefile]) 44882b15cb3dSCy Schubert 44892b15cb3dSCy Schubertperllibdir="${datadir}/ntp/lib" 44902b15cb3dSCy SchubertAC_DEFINE_DIR([PERLLIBDIR], [perllibdir], [data dir]) 44912b15cb3dSCy Schubert 44922b15cb3dSCy Schubertcalc_tickadj_opts="$srcdir/scripts/calc_tickadj/calc_tickadj-opts" 44932b15cb3dSCy SchubertAC_SUBST_FILE([calc_tickadj_opts]) 44942b15cb3dSCy Schubertntp_wait_opts="$srcdir/scripts/ntp-wait/ntp-wait-opts" 44952b15cb3dSCy SchubertAC_SUBST_FILE([ntp_wait_opts]) 44962b15cb3dSCy Schubertntpsweep_opts="$srcdir/scripts/ntpsweep/ntpsweep-opts" 44972b15cb3dSCy SchubertAC_SUBST_FILE([ntpsweep_opts]) 44982b15cb3dSCy Schubertntptrace_opts="$srcdir/scripts/ntptrace/ntptrace-opts" 44992b15cb3dSCy SchubertAC_SUBST_FILE([ntptrace_opts]) 45002b15cb3dSCy Schubertsummary_opts="$srcdir/scripts/summary-opts" 45012b15cb3dSCy SchubertAC_SUBST_FILE([summary_opts]) 45022b15cb3dSCy Schubertplot_summary_opts="$srcdir/scripts/plot_summary-opts" 45032b15cb3dSCy SchubertAC_SUBST_FILE([plot_summary_opts]) 45042b15cb3dSCy Schubert 45052b15cb3dSCy SchubertAC_CONFIG_SUBDIRS([sntp]) 4506ea906c41SOllivier Robert 4507ea906c41SOllivier RobertAC_OUTPUT 4508