2 AC_DEFUN([OPENAFS_OSCONF], [
4 dnl defaults, override in case below as needed
9 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} ${LIB_libintl}"
10 MT_LIBS='-lpthread ${XLIBS}'
13 dnl debugging and optimization flag defaults
14 dnl Note, these are all the defaults for if debug/optimize turned on, and
15 dnl the arch cases below do override as needed
28 AC_CHECK_PROGS(AS, as, [${am_missing_run}as])
29 AC_CHECK_PROGS(AR, ar, [${am_missing_run}ar])
30 AC_CHECK_PROGS(MV, mv, [${am_missing_run}mv])
31 AC_CHECK_PROGS(RM, rm, [${am_missing_run}rm])
32 AC_CHECK_PROGS(LD, ld, [${am_missing_run}ld])
33 AC_CHECK_PROGS(CP, cp, [${am_missing_run}cp])
34 AC_CHECK_PROGS(STRIP, strip, [${am_missing_run}strip])
35 AC_CHECK_PROGS(LORDER, lorder, [${am_missing_run}lorder])
37 dnl TODO - need to disable STRIP if we are doing debugging in any user space code
46 MT_CFLAGS='-D_REENTRANT=1 -pthread'
47 MT_LIBS="-pthread -lpthread -lmach -lexc -lc"
48 XCFLAGS="-D_NO_PROTO -DOSF"
49 SHLIB_LINKER="${CC} -all -shared -expect_unresolved \"*\""
52 alpha_dux50 | alpha_dux51)
59 MT_CFLAGS='-D_REENTRANT=1 -pthread'
60 MT_LIBS="-pthread -lpthread -lmach -lexc -lc"
61 XCFLAGS="-D_NO_PROTO -DOSF"
62 SHLIB_LINKER="${CC} -all -shared -expect_unresolved \"*\""
65 alpha_linux_22 | alpha_linux_24 | alpha_linux_26)
67 MT_CFLAGS='-pthread -D_REENTRANT'
69 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
71 SHLIB_LDFLAGS="-shared -Xlinker -x"
72 SHLIB_LINKER="${MT_CC} -shared"
75 arm_linux_24 | arm_linux26)
77 MT_CFLAGS='-pthread -D_REENTRANT'
79 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
81 SHLIB_LDFLAGS="-shared -Xlinker -x"
82 SHLIB_LINKER="${MT_CC} -shared"
87 CC="/opt/ansic/bin/cc -Ae"
88 CCOBJ="/opt/ansic/bin/cc -Ae"
91 LEX="/opt/langtools/bin/lex"
93 MT_CC="/opt/ansic/bin/cc -Ae"
94 MT_CFLAGS='-D_POSIX_C_SOURCE=199506L'
95 MT_LIBS='-L/opt/dce/lib -ldce ${XLIBS}'
98 PAM_CFLAGS="+DA1.0 +z -Wl,+k"
99 PAM_LIBS="/usr/lib/libpam.1"
100 RANLIB="/usr/bin/ranlib"
102 SHLIB_LDFLAGS="-b -Bsymbolic"
104 VFSCK_CFLAGS="-D_FILE64"
105 XCFLAGS0="-ldld -lc -Wp,-H200000 -Wl,-a,archive -DAUTH_DBM_LOG +z -Wl,+k -D_LARGEFILE64_SOURCE"
106 XCFLAGS64="${XCFLAGS0} +DA2.0W"
107 XCFLAGS="${XCFLAGS0} +DA1.0"
108 YACC="/opt/langtools/bin/yacc"
115 CC="/opt/ansic/bin/cc"
116 CCOBJ="/opt/ansic/bin/cc"
119 LEX="/opt/langtools/bin/lex"
122 MT_CFLAGS='-D_POSIX_C_SOURCE=199506L'
125 PAM_CFLAGS="+DA1.0 +z -Wl,+k"
126 PAM_LIBS="/usr/lib/libpam.1"
127 RANLIB="/usr/bin/ranlib"
129 SHLIB_LDFLAGS="-b -Bsymbolic"
131 VFSCK_CFLAGS="-I/usr/old/usr/include -D_FILE64"
132 XCFLAGS0="-ldld -lc -Wp,-H200000 -Wl,-a,archive -DAUTH_DBM_LOG +z -Wl,+k -D_LARGEFILE64_SOURCE"
133 XCFLAGS64="${XCFLAGS0} +DA2.0W"
134 XCFLAGS="${XCFLAGS0} +DA1.0"
136 YACC="/opt/langtools/bin/yacc"
143 CC="/opt/ansic/bin/cc"
144 CCOBJ="/opt/ansic/bin/cc"
145 DBM="/lib/hpux32/libndbm.so"
147 LEX="/opt/langtools/bin/lex"
150 MT_CFLAGS='-D_POSIX_C_SOURCE=199506L'
153 PAM_CFLAGS="-b +z -Wl,+k"
154 PAM_LIBS="/usr/lib/hpux32/libpam.so"
155 RANLIB="/usr/bin/ranlib"
157 SHLIB_LDFLAGS="-b -Bsymbolic"
159 VFSCK_CFLAGS="-I/usr/old/usr/include -D_FILE64"
160 XCFLAGS0="-ldld -lc -Wp,-H200000 -Wl,-a,archive_shared -DAUTH_DBM_LOG +z -Wl,+k -D_LARGEFILE64_SOURCE"
161 XCFLAGS64="${XCFLAGS0} +DD64"
162 XCFLAGS="${XCFLAGS0}"
164 YACC="/opt/langtools/bin/yacc"
169 MT_CFLAGS='-pthread -D_REENTRANT'
171 PAM_CFLAGS="-pipe -fPIC"
172 SHLIB_LDFLAGS="-shared -Xlinker -x"
173 SHLIB_LINKER="${MT_CC} -shared"
178 MT_CFLAGS='-pthread -D_REENTRANT'
180 PAM_CFLAGS="-pipe -fPIC"
181 SHLIB_LDFLAGS="-shared -Xlinker -x"
182 SHLIB_LINKER="${MT_CC} -shared"
187 MT_CFLAGS='-pthread -D_REENTRANT'
188 PAM_CFLAGS="-O2 -pipe -fPIC"
189 SHLIB_LDFLAGS="-shared -Xlinker -x"
190 SHLIB_LINKER="${MT_CC} -shared"
191 XCFLAGS="-O2 -pipe -fPIC"
194 *nbsd2*|*nbsd3*|*nbsd4*|*nbsd5*|*nbsd6*)
195 MT_CFLAGS='-pthread -D_REENTRANT'
197 PAM_CFLAGS="-pipe -fPIC"
199 SHLIB_LDFLAGS="-shared -Xlinker -x"
200 SHLIB_LINKER="${MT_CC} -shared"
207 PAM_CFLAGS="-pipe -fPIC"
208 SHLIB_LDFLAGS="-shared -Xlinker -x"
209 SHLIB_LINKER="${MT_CC} -shared"
213 ia64_linux24|ia64_linux26)
215 MT_CFLAGS='-pthread -D_REENTRANT'
217 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
219 SHLIB_LDFLAGS="-shared -Xlinker -x"
221 SHLIB_LINKER="${MT_CC} -shared"
227 MT_CFLAGS='-pthread -D_REENTRANT'
229 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
231 SHLIB_LDFLAGS="-shared -Xlinker -x"
232 SHLIB_LINKER="${MT_CC} -shared"
235 ppc64_linux24 | ppc64_linux26)
236 MT_CFLAGS='-pthread -D_REENTRANT'
238 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
239 SHLIB_LDFLAGS="-shared -Xlinker -x"
241 SHLIB_LINKER="${MT_CC} -shared -m64"
249 MT_CFLAGS='-pthread -D_REENTRANT'
255 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
257 SHLIB_LDFLAGS="-shared -Xlinker -x"
258 SHLIB_LINKER="${MT_CC} -shared"
261 i386_umlinux22 | i386_umlinux24 | i386_umlinux26)
262 MT_CFLAGS='-pthread -D_REENTRANT'
268 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
270 SHLIB_LDFLAGS="-shared -Xlinker -x"
271 SHLIB_LINKER="${MT_CC} -shared"
276 MT_CFLAGS='-pthread -D_REENTRANT'
280 PAM_CFLAGS="-pipe -fpic"
282 SHLIB_LDFLAGS="-shared -Xlinker -x"
283 SHLIB_LINKER="${MT_CC} -shared"
289 MT_CFLAGS='-pthread -D_REENTRANT'
291 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
293 SHLIB_LDFLAGS="-shared -Xlinker -x"
294 SHLIB_LINKER="${MT_CC} -shared"
301 AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
302 MT_CFLAGS='-D_REENTRANT'
304 KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
307 REGEX_OBJ_PIC="regex_pic.o"
308 XCFLAGS="-no-cpp-precomp"
309 EXTRA_VLIBOBJS="fstab.o"
310 SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
312 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
319 AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
320 MT_CFLAGS="-D_REENTRANT"
322 KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
327 REGEX_OBJ_PIC="regex_pic.o"
328 EXTRA_VLIBOBJS="fstab.o"
329 SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
332 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
336 AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
337 MT_CFLAGS="-D_REENTRANT"
339 KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
345 REGEX_OBJ_PIC="regex_pic.o"
346 EXTRA_VLIBOBJS="fstab.o"
347 SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
350 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
354 AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
355 MT_CFLAGS="-D_REENTRANT"
356 MT_LIBS="${LIB_AFSDB} -framework CoreFoundation"
358 KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
366 EXTRA_VLIBOBJS="fstab.o"
367 SHLIB_LINKER="${MT_CC} -dynamiclib"
370 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
373 *_darwin_100 | *_darwin_110 )
374 AFSD_LDFLAGS="-F/System/Library/PrivateFrameworks -framework DiskArbitration -framework SystemConfiguration -framework IOKit -framework CoreFoundation"
375 MT_CFLAGS="-D_REENTRANT"
378 KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
385 REGEX_OBJ_PIC="regex_pic.o"
386 EXTRA_VLIBOBJS="fstab.o"
387 SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
390 XLIBS="${LIB_AFSDB} ${XBSA_XLIBS} -framework CoreFoundation"
395 MT_CFLAGS='-pthread -D_REENTRANT'
397 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
399 SHLIB_LDFLAGS="-shared -Xlinker -x"
400 SHLIB_LINKER="${MT_CC} -shared"
407 LIBSYS_AIX_EXP="afsl.exp"
410 XCFLAGS="-K -D_NONSTD_TYPES -D_MBI=void"
411 XLIBS="${LIB_AFSDB} ${LIB_libintl} -ldl"
412 SHLIB_LINKER="${MT_CC} -bM:SRE -berok"
417 rs_aix51 | rs_aix52 | rs_aix53)
421 LIBSYS_AIX_EXP="afsl.exp"
424 XCFLAGS="-K -D_NONSTD_TYPES -D_MBI=void"
425 XLIBS="${LIB_AFSDB} ${LIB_libintl} -ldl"
426 SHLIB_LINKER="${MT_CC} -bM:SRE -berok"
435 LIBSYS_AIX_EXP="afsl.exp"
438 XCFLAGS="-K -D_NONSTD_TYPES -D_MBI=void"
439 XLIBS="${LIB_AFSDB} ${LIB_libintl} -ldl"
440 SHLIB_LINKER="${MT_CC} -bM:SRE -berok"
445 s390_linux22|s390_linux24|s390_linux26)
449 MT_CFLAGS='-pthread -D_REENTRANT'
451 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
453 SHLIB_LDFLAGS="-shared -Xlinker -x"
454 SHLIB_LINKER="${MT_CC} -shared"
457 s390x_linux24|s390x_linux26)
462 MT_CFLAGS='-pthread -D_REENTRANT'
464 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
466 SHLIB_LDFLAGS="-shared -Xlinker -x -Xlinker -Bsymbolic"
468 XCFLAGS="-D__s390x__"
469 SHLIB_LINKER="${MT_CC} -shared"
476 AFSD_LIBS="/usr/lib/libdwarf.a /usr/lib/libelf.a"
477 FSINCLUDES="-I/usr/include/sys/fs"
478 MT_CFLAGS='-D_SGI_MP_SOURCE'
479 XCFLAGS64="-64 -mips3"
483 SHLIB_LINKER="${CC} -shared"
490 AFSD_LIBS="/usr/lib/libdwarf.a /usr/lib/libelf.a"
491 FSINCLUDES="-I/usr/include/sys/fs"
492 MT_CFLAGS='-D_SGI_MP_SOURCE'
493 XCFLAGS64="-D_BSD_COMPAT -64 -mips3"
494 XCFLAGS="-D_OLD_TERMIOS -D_BSD_COMPAT -o32"
497 SHLIB_LINKER="${CC} -shared"
504 AFSD_LIBS="/usr/lib32/libdwarf.a /usr/lib32/libelf.a"
505 FSINCLUDES="-I/usr/include/sys/fs"
506 MT_CFLAGS='-D_SGI_MP_SOURCE'
507 XCFLAGS64="-D_BSD_COMPAT -64 -mips3"
508 XCFLAGS="-D_OLD_TERMIOS -D_BSD_COMPAT -n32 -woff 1009,1014,1110,1116,1164,1169,1171,1174,1177,1183,1185,1204,1233,1515,1516,1548,1169,1174,1177,1196,1498,1506,1552,3201 -Wl,-woff,84,-woff,15"
511 SHLIB_LINKER="${CC} -shared"
515 AFSD_LIBS="/usr/lib32/libdwarf.a /usr/lib32/libelf.a"
518 FSINCLUDES="-I/usr/include/sys/fs"
521 MT_CFLAGS='-D_SGI_MP_SOURCE'
522 XCFLAGS64="-64 -mips3"
523 XCFLAGS="-n32 -mips3 -woff 1009,1014,1110,1116,1164,1171,1177,1183,1185,1204,1233,1515,1516,1548,1169,1174,1177,1196,1498,1506,1552,3201 -Wl,-woff,84,-woff,15"
524 XLDFLAGS64="-64 -mips3"
525 XLDFLAGS="-n32 -mips3"
526 SHLIB_LINKER="${CC} -shared"
531 MT_CFLAGS='-pthread -D_REENTRANT'
533 PAM_CFLAGS="-Dlinux -DLINUX_PAM -fPIC"
535 SHLIB_LDFLAGS="-shared -Xlinker -x"
538 SHLIB_LINKER="${MT_CC} -shared"
548 PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
550 SHLIB_LDFLAGS="-G -Bsymbolic"
551 XCFLAGS64='${XCFLAGS} -xarch=v9'
552 XCFLAGS="-dy -Bdynamic"
555 XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
556 SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
567 PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
569 SHLIB_LDFLAGS="-G -Bsymbolic"
570 XCFLAGS64='${XCFLAGS} -m64'
571 XCFLAGS="-dy -Bdynamic"
574 XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
575 SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
586 PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
588 SHLIB_LDFLAGS="-G -Bsymbolic"
589 XCFLAGS64='${XCFLAGS} -xarch=v9'
590 XCFLAGS="-dy -Bdynamic"
593 XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
594 SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
605 PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
607 SHLIB_LDFLAGS="-G -Bsymbolic"
608 XCFLAGS64='${XCFLAGS} -xarch=amd64'
609 XCFLAGS="-dy -Bdynamic"
612 XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
613 SHLIB_LINKER="${CC} -G -dy -Bsymbolic -z text"
616 sunx86_510|sunx86_511)
617 if test "x`echo "${ARCHFLAGS}" | grep m32`" != "x" ; then
618 CURRENTBUILDARCH=i386
620 if test "x`echo "${ARCHFLAGS}" | grep m64`" != "x" ; then
621 CURRENTBUILDARCH=amd64
623 if test "x${CURRENTBUILDARCH}" = "x" ; then
624 CURRENTBUILDARCH=`isainfo -k`
626 if test "${CURRENTBUILDARCH}" = "amd64" ; then
631 CFLAGS="$CFLAGS $XARCHFLAGS"
636 PAM_LIBS="-lc -lpam -lsocket -lnsl -lm"
638 SHLIB_LDFLAGS="-G -Bsymbolic"
639 XCFLAGS0="-dy -Bdynamic"
640 XCFLAGS64="${XCFLAGS0} -m64"
641 XCFLAGS="${XCFLAGS0} ${XARCHFLAGS}"
643 XLDFLAGS="${XARCHFLAGS}"
644 ASFLAGS="${XARCHFLAGS}"
647 XLIBS="${LIB_AFSDB} -lsocket -lnsl -lintl -ldl"
648 SHLIB_LINKER="${CC} ${XCFLAGS} -G -z text"
653 MT_CFLAGS="${MT_CFLAGS} -DAFS_PTHREAD_ENV"
656 # Special build targets
660 IRIX_SYS_SYSTM_H_HAS_MEM_FUNCS
661 XFS_SIZE_CHECK="xfs_size_check"
662 install_XFS_SIZE_CHECK='$(DESTDIR)${afssrvsbindir}/xfs_size_check'
663 dest_XFS_SIZE_CHECK='$(DEST)/root.server/usr/afs/bin/xfs_size_check'
665 AC_SUBST(XFS_SIZE_CHECK)
666 AC_SUBST(install_XFS_SIZE_CHECK)
667 AC_SUBST(dest_XFS_SIZE_CHECK)
670 if test "x$enable_debug_kernel" = "xyes"; then
672 AC_SUBST(DEBUG_FLAGS)
677 dnl Disable the default for debugging/optimization if not enabled
678 if test "x$enable_debug_kernel" = "xno"; then
682 if test "x$enable_optimize_kernel" = "xno"; then
686 if test "x$enable_debug" = "xno"; then
691 if test "x$enable_optimize" = "xno"; then
695 if test "x$enable_debug_lwp" = "xno"; then
699 if test "x$enable_optimize_lwp" = "xno"; then
703 if test "x$enable_strip_binaries" != "xno"; then
704 if test "x$enable_strip_binaries" = "xmaybe" -a "x$enable_debug" = "xyes"; then
717 XCFLAGS_NOCHECKING="$XCFLAGS"
719 if test "x$GCC" = "xyes"; then
720 if test "x$enable_warnings" = "xyes"; then
721 XCFLAGS="${XCFLAGS} -Wall -Wstrict-prototypes -Wold-style-definition -Wpointer-arith"
723 if test "x$enable_checking" != "xno"; then
724 XCFLAGS="${XCFLAGS} -Wall -Wstrict-prototypes -Wold-style-definition -Werror -fdiagnostics-show-option -Wpointer-arith"
725 if test "x$enable_checking" != "xall"; then
726 CFLAGS_NOERROR="-Wno-error"
727 CFLAGS_NOSTRICT="-fno-strict-aliasing"
728 CFLAGS_NOUNUSED="-Wno-unused"
729 CFLAGS_NOOLDSTYLE="-Wno-old-style-definition"
730 AC_DEFINE(IGNORE_SOME_GCC_WARNINGS, 1, [define to disable some gcc warnings in warnings-as-errors mode])
737 warn_common="-v -errfmt=error -errtags=yes -erroff=E_ATTRIBUTE_UNKNOWN,E_END_OF_LOOP_CODE_NOT_REACHED"
738 if test "x$enable_warnings" = "xyes" ; then
739 XCFLAGS="${XCFLAGS} $warn_common"
741 if test "x$enable_checking" != "xno" ; then
742 XCFLAGS="${XCFLAGS} $warn_common -errwarn=%all"
743 if test "x$enable_checking" != "xall" ; then
744 CFLAGS_NOERROR="-errwarn=%none"
751 dnl horribly cheating, assuming double / is ok.
754 INSTALL="/@abs_top_srcdir@/install-sh -c"
760 INSTALL_PROGRAM="${INSTALL_PROGRAM} ${NO_STRIP_BIN}"
765 AC_SUBST(AFSD_LDFLAGS)
784 AC_SUBST(NO_STRIP_BIN)
792 AC_SUBST(REGEX_OBJ_PIC)
795 AC_SUBST(SHLIB_CFLAGS)
796 AC_SUBST(SHLIB_LDFLAGS)
797 AC_SUBST(SHLIB_LINKER)
798 AC_SUBST(SHLIB_SUFFIX)
799 AC_SUBST(VFSCK_CFLAGS)
801 AC_SUBST(CFLAGS_NOERROR)
802 AC_SUBST(CFLAGS_NOSTRICT)
803 AC_SUBST(CFLAGS_NOUNUSED)
804 AC_SUBST(CFLAGS_NOOLDSTYLE)