1 AC_DEFUN(ah_HAVE_GETCONF,
3 [ --with-getconf Enable automagical buildtime configuration],
4 [if test "$withval" = "yes"; then
5 AC_PATH_PROG(GETCONF, getconf)
6 elif test ! "$withval" = "no";then
7 AC_MSG_CHECKING([getconf])
8 AC_MSG_RESULT([$withval])
11 [AC_PATH_PROG(GETCONF, getconf)]
16 dnl ah_GET_CONF(variable, value ..., [default])
17 AC_DEFUN(ah_GET_GETCONF,
18 [AC_REQUIRE([ah_HAVE_GETCONF])
19 if test ! -z "$GETCONF";then
22 while eval test -z \"\$$1\" -a ! -z \"[$]1\";do
23 eval $1=`$GETCONF "[$]1" 2>/dev/null`
27 if eval test -z \"\$$1\" -o \"\$$1\" = "-1";then
32 [AC_MSG_CHECKING([number of cpus])
34 [ --with-cpus The number of cpus to be used for building(see --with-procs, default 1)],
36 if test "$withval" = "yes"; then
37 ah_GET_GETCONF(NUM_CPUS, SC_NPROCESSORS_ONLN _NPROCESSORS_ONLN, 1)
38 elif test ! "$withval" = "no";then
40 elif test "$withval" = "no";then
43 [ah_GET_GETCONF(NUM_CPUS, SC_NPROCESSORS_ONLN _NPROCESSORS_ONLN, 1)]
45 ah_NUM_CPUS_msg="$NUM_CPUS"
46 if test "$NUM_CPUS" = "0"; then
47 # broken getconf, time to bitch.
48 ah_NUM_CPUS_msg="found 0 cpus. Has someone done a lobotomy?"
51 if test $NUM_CPUS = 1 ;then
52 default_PROC_MULTIPLY=1
54 default_PROC_MULTIPLY=2
56 AC_MSG_RESULT([$ah_NUM_CPUS_msg])
59 AC_DEFUN(ah_PROC_MULTIPLY,
60 [AC_REQUIRE([ah_NUM_CPUS])
61 AC_MSG_CHECKING([processor multiplier])
62 AC_ARG_WITH(proc-multiply,
63 [ --with-proc-multiply Multiply this * number of cpus for parallel making(default 2).],
64 [if test "$withval" = "yes"; then
65 PROC_MULTIPLY=$default_PROC_MULTIPLY
66 elif test ! "$withval" = "no";then
67 PROC_MULTIPLY=$withval
69 [PROC_MULTIPLY=$default_PROC_MULTIPLY]
71 AC_MSG_RESULT([$PROC_MULTIPLY])
72 AC_SUBST(PROC_MULTIPLY)
75 AC_DEFUN(ah_NUM_PROCS,
76 [AC_REQUIRE([ah_PROC_MULTIPLY])
77 AC_REQUIRE([ah_NUM_CPUS])
78 AC_MSG_CHECKING([number of processes to run during make])
80 [ --with-procs The number of processes to run in parallel during make(num_cpus * multiplier).],
81 [if test "$withval" = "yes"; then
82 NUM_PROCS=`expr $NUM_CPUS \* $PROC_MULTIPLY`
83 elif test ! "$withval" = "no";then
86 [NUM_PROCS=`expr $NUM_CPUS \* $PROC_MULTIPLY`]
88 AC_MSG_RESULT([$NUM_PROCS])
92 AC_DEFUN(rc_GLIBC_VER,
93 [AC_MSG_CHECKING([glibc version])
94 AC_CACHE_VAL(ac_cv_glibc_ver,
96 cat <<_GLIBC_>$dummy.c
100 int main(int argc, char **argv) { printf("libc6.%d",__GLIBC_MINOR__); exit(0); }
102 ${CC-cc} $dummy.c -o $dummy > /dev/null 2>&1
103 if test "$?" = 0; then
105 AC_MSG_RESULT([$GLIBC_VER])
106 ac_cv_glibc_ver=$GLIBC_VER
108 AC_MSG_WARN([cannot determine GNU C library minor version number])
110 rm -f $dummy $dummy.c
112 GLIBC_VER="-$ac_cv_glibc_ver"
116 AC_DEFUN(rc_LIBSTDCPP_VER,
117 [AC_MSG_CHECKING([libstdc++ version])
119 cat <<_LIBSTDCPP_>$dummy.cc
120 #include <features.h>
123 int main(int argc, char **argv) { exit(0); }
125 ${CXX-c++} $dummy.cc -o $dummy > /dev/null 2>&1
127 if test "$?" = 0; then
128 soname=`objdump -p ./$dummy |grep NEEDED|grep libstd`
129 LIBSTDCPP_VER=`echo $soname | sed -e 's/.*NEEDED.*libstdc++\(-libc.*\(-.*\)\)\?.so.\(.*\)/\3\2/'`
131 rm -f $dummy $dummy.cc
133 if test -z "$LIBSTDCPP_VER"; then
134 AC_MSG_WARN([cannot determine standard C++ library version number])
136 AC_MSG_RESULT([$LIBSTDCPP_VER])
137 LIBSTDCPP_VER="-$LIBSTDCPP_VER"
139 AC_SUBST(LIBSTDCPP_VER)
142 AC_DEFUN(ah_GCC3DEP,[
143 AC_MSG_CHECKING(if $CXX -MD works)
145 ${CXX-c++} -MD -o gcc3dep_test.o -c gcc3dep.cc
146 rm -f gcc3dep.cc gcc3dep_test.o
147 if test -e gcc3dep.d; then
151 elif test -e gcc3dep_test.d; then
158 AC_MSG_RESULT([yes, for $GCC_MD])