macos: add support for MacOS 10.14
[openafs.git] / src / cf / osconf.m4
index c40b4da..c87abde 100644 (file)
@@ -6,7 +6,7 @@ RXDEBUG="-DRXDEBUG"
 SHLIB_SUFFIX="so"
 CCOBJ="\$(CC)"
 MT_CC="\$(CC)"
-XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} ${LIB_libintl}"
+XLIBS="${LIB_AFSDB} ${LIB_libintl}"
 MT_LIBS='-lpthread ${XLIBS}'
 XCFLAGS=
 
@@ -25,40 +25,26 @@ PAM_OPTMZ=
 
 dnl standard programs
 AC_PROG_RANLIB
-AC_CHECK_PROGS(AS, as, [${am_missing_run}as])
-AC_CHECK_PROGS(AR, ar, [${am_missing_run}ar])
-AC_CHECK_PROGS(MV, mv, [${am_missing_run}mv])
-AC_CHECK_PROGS(RM, rm, [${am_missing_run}rm])
-AC_CHECK_PROGS(LD, ld, [${am_missing_run}ld])
-AC_CHECK_PROGS(CP, cp, [${am_missing_run}cp])
-AC_CHECK_PROGS(STRIP, strip, [${am_missing_run}strip])
-AC_CHECK_PROGS(LORDER, lorder, [${am_missing_run}lorder])
-AC_CHECK_PROGS(GENCAT, gencat, [${am_missing_run}gencat])
+AC_CHECK_PROGS(AS, as, [false])
+AC_CHECK_PROGS(MV, mv, [false])
+AC_CHECK_PROGS(RM, rm, [false])
+AC_CHECK_PROGS(LD, ld, [false])
+AC_CHECK_PROGS(CP, cp, [false])
+AC_CHECK_PROGS(GENCAT, gencat, [false])
+
+dnl if ar is not present, libtool.m4 (provided by libtool) sets AR to false
+dnl if strip is not present, libtool.m4 (provided by libtool) sets STRIP to :
+AS_IF([test "x$AR" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'ar'])])
+AS_IF([test "x$AS" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'as'])])
+AS_IF([test "x$MV" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'mv'])])
+AS_IF([test "x$RM" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'rm'])])
+AS_IF([test "x$LD" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'ld'])])
+AS_IF([test "x$CP" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'cp'])])
+AS_IF([test "x$GENCAT" = "xfalse"], [AC_MSG_ERROR([cannot find required command 'gencat'])])
 
 dnl TODO - need to disable STRIP if we are doing debugging in any user space code
 
 case $AFS_SYSNAME in
-       alpha_dux40)
-               CC="cc"
-               CSTATIC="-non_shared"
-               DBG="-g3"
-               MT_CFLAGS='-D_REENTRANT=1 -pthread'
-               MT_LIBS="-pthread -lpthread -lmach -lexc -lc"
-               XCFLAGS="-D_NO_PROTO -DOSF"
-               SHLIB_LINKER="${CC} -all -shared -expect_unresolved \"*\""
-               ;;
-
-       alpha_dux50 | alpha_dux51)
-               CC="cc"
-               DBG="-g3"
-               CSTATIC="-non_shared"
-               LWP_OPTMZ="-O2"
-               MT_CFLAGS='-D_REENTRANT=1 -pthread'
-               MT_LIBS="-pthread -lpthread -lmach -lexc -lc"
-               XCFLAGS="-D_NO_PROTO -DOSF"
-               SHLIB_LINKER="${CC} -all -shared -expect_unresolved \"*\""
-               ;;
-
        alpha_linux_22 | alpha_linux_24 | alpha_linux_26)
                CCOBJ="\$(CC) -fPIC"
                MT_CFLAGS='-pthread -D_REENTRANT'
@@ -69,7 +55,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -shared"
                ;;
 
-       arm_linux_24 | arm_linux26)
+       arm_linux_24 | arm_linux26 | arm64_linux26)
                CCOBJ="\$(CC) -fPIC"
                MT_CFLAGS='-pthread -D_REENTRANT'
                PAM_OPTMZ=-O2
@@ -182,7 +168,7 @@ case $AFS_SYSNAME in
                XCFLAGS="-O2 -pipe -fPIC"
                ;;
 
-       *nbsd2*|*nbsd3*|*nbsd4*|*nbsd5*|*nbsd6*)
+       *nbsd2*|*nbsd3*|*nbsd4*|*nbsd5*|*nbsd6*|*nbsd7*)
                MT_CFLAGS='-pthread -D_REENTRANT'
                PAM_OPTMZ=-O2
                PAM_CFLAGS="-pipe -fPIC"
@@ -201,7 +187,7 @@ case $AFS_SYSNAME in
                XCFLAGS="-pipe"
                ;;
 
-       ia64_linux24|ia64_linux26)
+       ia64_linux26)
                KERN_OPTMZ=-O2
                MT_CFLAGS='-pthread -D_REENTRANT'
                PAM_OPTMZ=-O2
@@ -223,7 +209,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -shared"
                ;;
 
-       ppc64_linux24 | ppc64_linux26)
+       ppc64_linux26)
                MT_CFLAGS='-pthread -D_REENTRANT'
                PAM_OPTMZ=-O2
                PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
@@ -249,7 +235,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -shared"
                ;;
 
-       i386_umlinux22 | i386_umlinux24 | i386_umlinux26)
+       i386_umlinux26)
                MT_CFLAGS='-pthread -D_REENTRANT'
                DBG=-g
                LWP_DBG=-g
@@ -275,16 +261,6 @@ case $AFS_SYSNAME in
                XCFLAGS=
                ;;
 
-       parisc_linux24)
-               KERN_OPTMZ=-O2
-               MT_CFLAGS='-pthread -D_REENTRANT'
-               PAM_OPTMZ=-O2
-               PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
-               SHLIB_CFLAGS="-fPIC"
-               SHLIB_LDFLAGS="-shared -Xlinker -x"
-               SHLIB_LINKER="${CC} -shared"
-               ;;
-
        ppc_darwin_70)
                CC="cc"
                AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
@@ -297,7 +273,7 @@ case $AFS_SYSNAME in
                EXTRA_VLIBOBJS="fstab.o"
                SHLIB_LINKER="${CC} \${ARCHFLAGS} -dynamiclib"
                SHLIB_SUFFIX="dylib"
-               XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
+               XLIBS="${LIB_AFSDB} -framework CoreFoundation"
                ;;
 
        *_darwin_80)
@@ -314,7 +290,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} \${ARCHFLAGS} -dynamiclib"
                SHLIB_SUFFIX="dylib"
                RANLIB="ranlib -c"
-               XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
+               XLIBS="${LIB_AFSDB} -framework CoreFoundation"
                ;;
 
        *_darwin_90)
@@ -331,7 +307,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} \${ARCHFLAGS} -dynamiclib"
                SHLIB_SUFFIX="dylib"
                RANLIB="ranlib -c"
-               XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
+               XLIBS="${LIB_AFSDB} -framework CoreFoundation"
                ;;
 
        arm_darwin_100)
@@ -351,10 +327,10 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -dynamiclib"
                SHLIB_SUFFIX="dylib"
                RANLIB="ranlib"
-               XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
+               XLIBS="${LIB_AFSDB} -framework CoreFoundation"
                ;;
 
-       *_darwin_100 | *_darwin_110 | *_darwin_120 )
+       *_darwin_100 | *_darwin_110 | *_darwin_120 | *_darwin_130 | *_darwin_140 | *_darwin_150 | *_darwin_160 | *_darwin_170 | *_darwin_180)
                AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
                MT_CFLAGS="-D_REENTRANT"
                MT_LIBS='${XLIBS}'
@@ -370,7 +346,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} \${ARCHFLAGS} -dynamiclib"
                SHLIB_SUFFIX="dylib"
                RANLIB="ranlib"
-               XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
+               XLIBS="${LIB_AFSDB} -framework CoreFoundation"
                ;;
 
        ppc_linux*)
@@ -422,7 +398,7 @@ case $AFS_SYSNAME in
                AIX64="yes"
                ;;
 
-       s390_linux22|s390_linux24|s390_linux26)
+       s390_linux26)
                LD="ld"
                KERN_OPTMZ=-O2
                MT_CFLAGS='-pthread -D_REENTRANT'
@@ -433,7 +409,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -shared"
                ;;
 
-       s390x_linux24|s390x_linux26)
+       s390x_linux26)
                CCOBJ="\$(CC) -fPIC"
                LD="ld"
                KERN_OPTMZ=-O2
@@ -508,24 +484,7 @@ case $AFS_SYSNAME in
                SHLIB_LINKER="${CC} -shared"
                ;;
 
-       sun4x_58|sun4x_59)
-               CC=$SOLARISCC
-               LD="/usr/ccs/bin/ld"
-               MT_CFLAGS='-mt'
-               PAM_CFLAGS="-KPIC"
-               PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
-               SHLIB_CFLAGS="-KPIC"
-               SHLIB_LDFLAGS="-G -Bsymbolic"
-               XCFLAGS64='${XCFLAGS} -xarch=v9'
-               XCFLAGS="-dy -Bdynamic"
-               XLIBELFA="-lelf"
-               XLIBKVM="-lkvm"
-               XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
-               SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
-               LWP_OPTMZ="-g"
-               ;;
-
-       sun4x_510)
+       sun4x_5*)
                CC=$SOLARISCC
                LD="/usr/ccs/bin/ld"
                MT_CFLAGS='-mt'
@@ -542,56 +501,32 @@ case $AFS_SYSNAME in
                LWP_OPTMZ="-g"
                ;;
 
-       sun4x_511)
-               CC=$SOLARISCC
-               LD="/usr/ccs/bin/ld"
-               MT_CFLAGS='-mt'
-               PAM_CFLAGS="-KPIC"
-               PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
-               SHLIB_CFLAGS="-KPIC"
-               SHLIB_LDFLAGS="-G -Bsymbolic"
-               XCFLAGS64='${XCFLAGS} -xarch=v9'
-               XCFLAGS="-dy -Bdynamic"
-               XLIBELFA="-lelf"
-               XLIBKVM="-lkvm"
-               XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
-               SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
-               LWP_OPTMZ="-g"
-               ;;
+       sunx86_5*)
+               case $AFS_SYSNAME in
+                       sunx86_58|sunx86_59)
+                               XARCHFLAGS=""
+                               ;;
+                       *)
+                               if test "x`echo "${ARCHFLAGS}" | grep m32`" != "x" ; then
+                                       CURRENTBUILDARCH=i386
+                               fi
+                               if test "x`echo "${ARCHFLAGS}" | grep m64`" != "x" ; then
+                                       CURRENTBUILDARCH=amd64
+                               fi
+                               if test "x${CURRENTBUILDARCH}" = "x" ; then
+                                       CURRENTBUILDARCH=`isainfo -k`
+                               fi
+                               if test "${CURRENTBUILDARCH}" = "amd64" ; then
+                                       XARCHFLAGS="-m64"
+                               fi
+                               ;;
+               esac
 
-       sunx86_58|sunx86_59)
-               CC=$SOLARISCC
-               LD="/usr/ccs/bin/ld"
-               MT_CFLAGS='-mt'
-               PAM_CFLAGS="-KPIC"
-               PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
-               SHLIB_CFLAGS="-KPIC"
-               SHLIB_LDFLAGS="-G -Bsymbolic"
-               XCFLAGS64='${XCFLAGS} -xarch=amd64'
-               XCFLAGS="-dy -Bdynamic"
-               XLIBELFA="-lelf"
-               XLIBKVM="-lkvm"
-               XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
-               SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
-               ;;
-
-       sunx86_510|sunx86_511)
-               if test "x`echo "${ARCHFLAGS}" | grep m32`" != "x" ; then
-                       CURRENTBUILDARCH=i386
-               fi
-               if test "x`echo "${ARCHFLAGS}" | grep m64`" != "x" ; then
-                       CURRENTBUILDARCH=amd64
-               fi
-               if test "x${CURRENTBUILDARCH}" = "x" ; then
-                       CURRENTBUILDARCH=`isainfo -k`
-               fi
-               if test "${CURRENTBUILDARCH}" = "amd64" ; then
-                       XARCHFLAGS="-m64"
-               fi
                CC=$SOLARISCC
-               CFLAGS="$CFLAGS $XARCHFLAGS"
+               CFLAGS="$CFLAGS ${XARCHFLAGS}"
                LD="/usr/ccs/bin/ld"
                MT_CFLAGS='-mt'
+               KERN_OPTMZ="-xO3"
                PAM_CFLAGS="-KPIC"
                PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
                SHLIB_CFLAGS="-KPIC"
@@ -605,7 +540,7 @@ case $AFS_SYSNAME in
                XLIBELFA="-lelf"
                XLIBKVM="-lkvm"
                XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
-               SHLIB_LINKER="${CC} ${XCFLAGS} -G -z text"
+               SHLIB_LINKER="${CC} ${XARCHFLAGS} -G -dy -Bsymbolic -z text"
                ;;
 
 esac
@@ -619,10 +554,12 @@ if test "x$enable_optimize_kernel" = "x" ; then
   AS_CASE([$AFS_SYSNAME],
     [sunx86_510|sunx86_511],
       dnl Somewhere around Solaris Studio 12.*, the compiler started adding SSE
-      dnl instructions to optimized code, without any ability to turn it off.
-      dnl So just default to not optimizing kernel code for the relevant
-      dnl platforms, until we get a better autoconf test for this.
-      [enable_optimize_kernel=no],
+      dnl instructions to optimized code, without any known way to turn it off.
+      dnl To cope, this condition was added to change the default to
+      dnl 'no'.
+      dnl Now that we have an autoconf test to allow disabling the SSE
+      dnl optimizations, it's safe to once more default to 'yes' here.
+      [enable_optimize_kernel=yes],
     [enable_optimize_kernel=yes])
 fi
 
@@ -685,7 +622,7 @@ else
 fi
 
 CFLAGS_NOERROR=
-CFLAGS_NOSTRICT=
+CFLAGS_NOSTRICT=-fno-strict-aliasing
 CFLAGS_NOUNUSED=
 CFLAGS_NOOLDSTYLE=
 XCFLAGS_NOCHECKING="$XCFLAGS"
@@ -698,10 +635,11 @@ if test "x$GCC" = "xyes"; then
     XCFLAGS="${XCFLAGS} -Wall -Wstrict-prototypes -Wold-style-definition -Werror -fdiagnostics-show-option -Wpointer-arith"
     if test "x$enable_checking" != "xall"; then
       CFLAGS_NOERROR="-Wno-error"
-      CFLAGS_NOSTRICT="-fno-strict-aliasing"
       CFLAGS_NOUNUSED="-Wno-unused"
       CFLAGS_NOOLDSTYLE="-Wno-old-style-definition"
       AC_DEFINE(IGNORE_SOME_GCC_WARNINGS, 1, [define to disable some gcc warnings in warnings-as-errors mode])
+    else
+      CFLAGS_NOSTRICT=
     fi
   fi
 else