sascha 00/01/16 12:00:52
Modified: src acinclude.m4 configure.in src/build build2.mk src/lib/apr aclocal.m4 configure.in src/modules/mpm config.m4 Added: src/lib/apr threads.m4 Log: Move threads/reentrancy m4 macros into threads.m4. All results are now cached and can be made easily available to Apache and APR. Revision Changes Path 1.17 +1 -63 apache-2.0/src/acinclude.m4 Index: acinclude.m4 =================================================================== RCS file: /home/cvs/apache-2.0/src/acinclude.m4,v retrieving revision 1.16 retrieving revision 1.17 diff -u -u -r1.16 -r1.17 --- acinclude.m4 2000/01/16 18:24:39 1.16 +++ acinclude.m4 2000/01/16 20:00:46 1.17 @@ -141,69 +141,7 @@ fi ]) -dnl -dnl APACHE_CHECK_THREADS() -dnl -dnl Determine the best flags for linking against a threading library. -dnl -AC_DEFUN(APACHE_THREAD_TEST, [ -AC_TRY_RUN( [ -#include <pthread.h> - -void *thread_routine(void *data) { - return data; -} - -int main() { - pthread_t thd; - int data = 1; - return pthread_create(&thd, NULL, thread_routine, &data); -} ], [ - apache_threads_working="yes" - ], [ - apache_threads_working="no" - ], apache_threads_working="no" ) ] ) - - -AC_DEFUN(APACHE_CHECK_THREADS,[ - -APACHE_THREAD_TEST - -if test "$apache_threads_working" != "yes"; then - for flag in -pthreads -pthread -mthreads; do - AC_MSG_CHECKING(whether $flag enables POSIX threads) - ac_save="$CFLAGS" - CFLAGS="$CFLAGS $flag" - APACHE_THREAD_TEST - if test "$apache_threads_working" = "yes"; then - AC_MSG_RESULT(yes) - REENTRANCY_CFLAGS="$REENTRANCY_CFLAGS $flag" - break - fi - CFLAGS="$ac_save" - AC_MSG_RESULT(no) - done -fi - -if test "$apache_threads_working" != "yes"; then - for lib in pthread pthreads c_r; do - ac_save="$LIBS" - LIBS="$LIBS -l$lib" - APACHE_THREAD_TEST - if test "$apache_threads_working" = "yes"; then - REENTRANCY_LDFLAGS="$REENTRANCY_LDFLAGS -l$lib" - break - fi - LIBS="$ac_save" - done -fi - -if test "$apache_threads_working" = "yes"; then - threads_result="POSIX Threads found" -else - threads_result="POSIX Threads not found" -fi -]) +sinclude(lib/apr/threads.m4) dnl dnl APACHE_INADDR_NONE 1.20 +1 -11 apache-2.0/src/configure.in Index: configure.in =================================================================== RCS file: /home/cvs/apache-2.0/src/configure.in,v retrieving revision 1.19 retrieving revision 1.20 diff -u -u -r1.19 -r1.20 --- configure.in 2000/01/16 18:24:39 1.19 +++ configure.in 2000/01/16 20:00:46 1.20 @@ -102,15 +102,8 @@ APACHE_INADDR_NONE -case "`uname -sr`" in -"SunOS 5"*) - REENTRANCY_CFLAGS="$REENTRANCY_CFLAGS -D_POSIX_PTHREAD_SEMANTICS";; -esac +REENTRANCY_FLAGS -REENTRANCY_CFLAGS="$REENTRANCY_CFLAGS -D_REENTRANT" - -CFLAGS="$CFLAGS $REENTRANCY_CFLAGS" - AC_FUNC_SELECT_ARGTYPES dnl Check if we'll actually need to cast select args all the time @@ -165,8 +158,5 @@ dnl ## Build modules.c rm -f $srcdir/modules.c echo $MODLIST | $AWK -f $srcdir/helpers/build-modules-c.awk > $srcdir/modules.c - -APACHE_PASSTHRU(REENTRANCY_CFLAGS) -APACHE_PASSTHRU(REENTRANCY_LDFLAGS) AC_OUTPUT($APACHE_OUTPUT_FILES) 1.4 +2 -2 apache-2.0/src/build/build2.mk Index: build2.mk =================================================================== RCS file: /home/cvs/apache-2.0/src/build/build2.mk,v retrieving revision 1.3 retrieving revision 1.4 diff -u -u -r1.3 -r1.4 --- build2.mk 2000/01/16 18:20:17 1.3 +++ build2.mk 2000/01/16 20:00:48 1.4 @@ -21,7 +21,7 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ############################################################################## -# $Id: build2.mk,v 1.3 2000/01/16 18:20:17 sascha Exp $ +# $Id: build2.mk,v 1.4 2000/01/16 20:00:48 sascha Exp $ include generated_lists @@ -73,6 +73,6 @@ @rm -f $@ (cd lib/apr && autoheader) -$(apr_configure): lib/apr/aclocal.m4 lib/apr/configure.in +$(apr_configure): lib/apr/aclocal.m4 lib/apr/configure.in lib/apr/threads.m4 @echo rebuilding $@ (cd lib/apr && autoconf) 1.10 +2 -0 apache-2.0/src/lib/apr/aclocal.m4 Index: aclocal.m4 =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/aclocal.m4,v retrieving revision 1.9 retrieving revision 1.10 diff -u -u -r1.9 -r1.10 --- aclocal.m4 2000/01/11 12:58:46 1.9 +++ aclocal.m4 2000/01/16 20:00:49 1.10 @@ -187,3 +187,5 @@ AC_DEFINE(HAVE_SOCKLEN_T, 1, [Whether you have socklen_t]) fi ]) + +sinclude(threads.m4) 1.44 +2 -6 apache-2.0/src/lib/apr/configure.in Index: configure.in =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/configure.in,v retrieving revision 1.43 retrieving revision 1.44 diff -u -u -r1.43 -r1.44 --- configure.in 2000/01/16 18:20:57 1.43 +++ configure.in 2000/01/16 20:00:50 1.44 @@ -32,12 +32,8 @@ # This macro needs to be here in case we are on an AIX box. AC_AIX -dnl inherit REENTRANCY_FLAGS -test -n "$ac_cv_pass_REENTRANCY_CFLAGS" && \ -CFLAGS="$CFLAGS $ac_cv_pass_REENTRANCY_CFLAGS" - -test -n "$ac_cv_pass_REENTRANCY_LDFLAGS" && \ -LDFLAGS="$LDFLAGS $ac_cv_pass_REENTRANCY_LDFLAGS" +REENTRANCY_FLAGS +PTHREADS_CHECK AC_CACHE_CHECK([for threads], ac_cv_enable_threads, [ AC_ARG_ENABLE(threads, 1.1 apache-2.0/src/lib/apr/threads.m4 Index: threads.m4 =================================================================== dnl dnl REENTRANCY_FLAGS dnl dnl Set some magic defines dnl AC_DEFUN(REENTRANCY_FLAGS,[ case "`uname -sr`" in "SunOS 5"*) CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS";; esac dnl This works for now.. CFLAGS="$CFLAGS -D_REENTRANT" ])dnl dnl dnl PTHREADS_CHECK_COMPILE dnl dnl Check whether the current setup can use POSIX threads calls dnl AC_DEFUN(PTHREADS_CHECK_COMPILE, [ AC_TRY_RUN( [ #include <pthread.h> void *thread_routine(void *data) { return data; } int main() { pthread_t thd; int data = 1; return pthread_create(&thd, NULL, thread_routine, &data); } ], [ pthreads_working="yes" ], [ pthreads_working="no" ], pthreads_working="no" ) ] )dnl dnl dnl PTHREADS_CHECK() dnl dnl Try to find a way to enable POSIX threads dnl AC_DEFUN(PTHREADS_CHECK,[ if test -n "$ac_cv_pthreads_lib"; then LIBS="$LIBS -l$ac_cv_pthreads_lib" fi if test -n "$ac_cv_pthreads_cflags"; then CFLAGS="$CFLAGS $ac_cv_pthreads_cflags" fi PTHREADS_CHECK_COMPILE AC_CACHE_CHECK(for pthreads_cflags,ac_cv_pthreads_cflags,[ ac_cv_pthreads_cflags="" if test "$pthreads_working" != "yes"; then for flag in -pthreads -pthread -mthreads; do ac_save="$CFLAGS" CFLAGS="$CFLAGS $flag" PTHREADS_CHECK_COMPILE if test "$pthreads_working" = "yes"; then ac_cv_pthreads_cflags="$flag" break fi CFLAGS="$ac_save" done fi ]) AC_CACHE_CHECK(for pthreads_lib, ac_cv_pthreads_lib,[ ac_cv_pthreads_lib="" if test "$pthreads_working" != "yes"; then for lib in pthread pthreads c_r; do ac_save="$LIBS" LIBS="$LIBS -l$lib" PTHREADS_CHECK_COMPILE if test "$pthreads_working" = "yes"; then ac_cv_pthreads_lib="$lib" break fi LIBS="$ac_save" done fi ]) if test "$pthreads_working" = "yes"; then threads_result="POSIX Threads found" else threads_result="POSIX Threads not found" fi ])dnl 1.9 +1 -1 apache-2.0/src/modules/mpm/config.m4 Index: config.m4 =================================================================== RCS file: /home/cvs/apache-2.0/src/modules/mpm/config.m4,v retrieving revision 1.8 retrieving revision 1.9 diff -u -u -r1.8 -r1.9 --- config.m4 2000/01/11 13:11:03 1.8 +++ config.m4 2000/01/16 20:00:51 1.9 @@ -11,7 +11,7 @@ apache_cv_mpm=$APACHE_MPM if test "$apache_cv_mpm" != "prefork"; then - APACHE_CHECK_THREADS + PTHREADS_CHECK AC_MSG_CHECKING([for which threading library to use]) AC_MSG_RESULT($threads_result)