1dnl ###################################################################### 2dnl Specify additional compile options based on the OS and the compiler 3AC_DEFUN([NTP_OS_CFLAGS], [ 4 AC_MSG_CHECKING([additional compiler flags]) 5 # allow ntp_os_cflags to be preset to skip this stuff 6 case "${ntp_os_cflags+set}" in 7 set) 8 ;; 9 *) 10 ntp_os_cflags= 11 case "$host_os" in 12 aix[[1-3]]*) 13 ;; 14 aix4.[[0-2]]*) 15 # turn on additional headers 16 ntp_os_cflags="-D_XOPEN_EXTENDED_SOURCE" 17 ;; 18 aix5.3*) 19 # avoid circular dependencies in yp headers, and more 20 ntp_os_cflags="-DHAVE_BAD_HEADERS -D_XOPEN_EXTENDED_SOURCE" 21 ntp_os_cflags="${ntp_os_cflags} -D_USE_IRS -D_MSGQSUPPORT" 22 ;; 23 aix*) 24 # XXX Only verified thru AIX6. 25 # aix7 seems to need a different XOPEN_SOURCE_EXTENDED thing. 26 # avoid circular dependencies in yp headers 27 # _XOPEN_SOURCE=500 = X/Open 5: POSIX 1995 28 # _XOPEN_SOURCE=600 = X/Open 6: POSIX 2004 29 # _XOPEN_SOURCE=700 = X/Open 7: POSIX 2008 30 ntp_os_cflags="-DHAVE_BAD_HEADERS -D_XOPEN_SOURCE=600" 31 ntp_os_cflags="${ntp_os_cflags} -D_USE_IRS" 32 ;; 33 amigaos) 34 ntp_os_cflags="-DSYS_AMIGA" 35 ;; 36 darwin*|macosx*|rhapsody*) 37 ntp_os_cflags="-D_P1003_1B_VISIBLE" 38 ;; 39 hpux10.*) # at least for hppa2.0-hp-hpux10.20 40 case "$GCC" in 41 yes) 42 ;; 43 *) 44 # use Ansi compiler on HPUX, and some -Wp magic 45 ntp_os_cflags="-Ae -Wp,-H18816" 46 ;; 47 esac 48 ntp_os_cflags="${ntp_os_cflags} -D_HPUX_SOURCE -D__STDC_VERSION__=199901L" 49 ;; 50 hpux*) 51 case "$GCC" in 52 yes) 53 ;; 54 *) 55 # use Ansi compiler on HPUX 56 ntp_os_cflags="-Ae" 57 esac 58 ntp_os_cflags="${ntp_os_cflags} -D_HPUX_SOURCE -D__STDC_VERSION__=199901L" 59 ;; 60 irix6*) 61 case "$CC" in 62 cc) 63 # do not use 64-bit compiler 64 ntp_os_cflags="-n32 -mips3 -Wl,-woff,84" 65 esac 66 ;; 67 nextstep3) 68 ntp_os_cflags="-posix" 69 ;; 70 solaris1*|solaris2.[[0-5]]|solaris2.5.*) 71 ;; 72 sunos[[34]]*|sunos5.[[0-5]]|sunos5.5.*) 73 ;; 74 solaris2*|sunos5*) 75 # turn on 64-bit file offset interface 76 ntp_os_cflags="-D_LARGEFILE64_SOURCE" 77 ;; 78 vxworks*) 79 case "$build" in 80 $host) 81 ;; 82 *) 83 # Quick and dirty sanity check 84 case "$VX_KERNEL" in 85 '') 86 AC_MSG_ERROR([See html/build/hints/vxworks.html]) 87 esac 88 ntp_os_cflags="-DSYS_VXWORKS" 89 esac 90 ;; 91 esac 92 esac 93 case "$ntp_os_cflags" in 94 '') 95 ntp_os_cflags_msg="none needed" 96 ;; 97 *) 98 ntp_os_cflags_msg="$ntp_os_cflags" 99 esac 100 CFLAGS_NTP="$CFLAGS_NTP $ntp_os_cflags" 101 AC_MSG_RESULT([$ntp_os_cflags_msg]) 102 AS_UNSET([ntp_os_cflags_msg]) 103 ### 104 AC_MSG_CHECKING([additional linker flags]) 105 # HMS: The following might still need tweaking 106 # allow ntp_os_ldflags to be preset to skip this stuff 107 case "${ntp_os_ldflags+set}" in 108 set) 109 ;; 110 *) 111 ntp_os_ldflags= 112 case "$host_os" in 113 hpux*) 114 case "$GCC" in 115 yes) 116 ntp_os_ldflags="-Wl,+allowdups" 117 ;; 118 esac 119 ;; 120 esac 121 ;; 122 esac 123 case "$ntp_os_ldflags" in 124 '') 125 ntp_os_ldflags_msg="none needed" 126 ;; 127 *) 128 ntp_os_ldflags_msg="$ntp_os_ldflags" 129 esac 130 LDFLAGS_NTP="$LDFLAGS_NTP $ntp_os_ldflags" 131 AC_MSG_RESULT([$ntp_os_ldflags_msg]) 132 AS_UNSET([ntp_os_ldflags_msg]) 133]) 134dnl ====================================================================== 135