]> git.saurik.com Git - wxWidgets.git/commitdiff
thread detection works on FreeBSD
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 5 Mar 1999 13:50:47 +0000 (13:50 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 5 Mar 1999 13:50:47 +0000 (13:50 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

configure
configure.in

index 0dda9c2a8d674f5493e0d15b8dc2e6cd043344a2..e41285f5bee12d31cd3265c3bf2ffa3d9d62222c 100755 (executable)
--- a/configure
+++ b/configure
@@ -636,7 +636,7 @@ SEARCH_INCLUDE="\
     /usr/Motif1.2/include     \
     /usr/dt/include           \
     /usr/include/Xm           \
-                                         \
+                              \
     /usr/X11R6/include        \
     /usr/X11R5/include        \
     /usr/X11R4/include        \
@@ -1415,14 +1415,14 @@ echo dummy > sub/file
 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
 RESULT=$?
 rm -f sub/file check final_file confMake
-rmdir sub 
+rmdir sub
 if test "$RESULT" = 0; then
   echo "$ac_t""yes" 1>&6
 else
   echo "$ac_t""no" 1>&6
   { echo "configure: error: You need a make-utility that is able to use the variable
 VPATH correctly.
-If your version of make does not support VPATH correctly" 1>&2; exit 1; } 
+If your version of make does not support VPATH correctly" 1>&2; exit 1; }
 fi
 
 
@@ -3636,7 +3636,7 @@ if test $ac_cv_struct_st_blksize = yes; then
 EOF
 
 fi
+
 echo $ac_n "checking for st_blocks in struct stat""... $ac_c" 1>&6
 echo "configure:3642: checking for st_blocks in struct stat" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_st_blocks'+set}'`\" = set"; then
@@ -3672,7 +3672,7 @@ EOF
 else
   LIBOBJS="$LIBOBJS fileblocks.o"
 fi
+
 echo $ac_n "checking for st_rdev in struct stat""... $ac_c" 1>&6
 echo "configure:3678: checking for st_rdev in struct stat" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_st_rdev'+set}'`\" = set"; then
@@ -3706,7 +3706,7 @@ if test $ac_cv_struct_st_rdev = yes; then
 EOF
 
 fi
+
 echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
 echo "configure:3712: checking whether struct tm is in sys/time.h or time.h" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then
@@ -4331,7 +4331,7 @@ EOF
 fi
 
 
-                                          
+
 
 for ac_prog in 'bison -y' byacc
 do
@@ -4757,7 +4757,7 @@ else
 fnord() { int i=42;}
 main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
     if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
-    if(ptr1 && !ptr2) exit(0); } exit(1); } 
+    if(ptr1 && !ptr2) exit(0); } exit(1); }
 
 EOF
 if { (eval echo configure:4764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
@@ -4925,7 +4925,7 @@ EOF
 
     fi
   ;;
-  *-*-irix5* | *-*-irix6* ) 
+  *-*-irix5* | *-*-irix6* )
     USE_SGI=1
     USE_SVR4=1
     cat >> confdefs.h <<\EOF
@@ -4937,7 +4937,7 @@ EOF
 EOF
 
   ;;
-  *-*-solaris2* ) 
+  *-*-solaris2* )
     USE_SUN=1
     USE_SOLARIS=1
     USE_SVR4=1
@@ -4954,7 +4954,7 @@ EOF
 EOF
 
   ;;
-  *-*-sunos4* ) 
+  *-*-sunos4* )
     USE_SUN=1
     USE_SUNOS=1
     USE_BSD=1
@@ -4983,7 +4983,7 @@ EOF
 EOF
 
   ;;
-  *-*-osf* ) 
+  *-*-osf* )
     USE_ALPHA=1
     USE_OSF=1
     cat >> confdefs.h <<\EOF
@@ -4995,7 +4995,7 @@ EOF
 EOF
 
   ;;
-  *-*-dgux5* ) 
+  *-*-dgux5* )
     USE_ALPHA=1
     USE_SVR4=1
     cat >> confdefs.h <<\EOF
@@ -5007,7 +5007,7 @@ EOF
 EOF
 
   ;;
-  *-*-sysv5* ) 
+  *-*-sysv5* )
     USE_SYSV=1
     USE_SVR4=1
     cat >> confdefs.h <<\EOF
@@ -5019,7 +5019,7 @@ EOF
 EOF
 
   ;;
-  *-*-aix* ) 
+  *-*-aix* )
     USE_AIX=1
     USE_SYSV=1
     USE_SVR4=1
@@ -6487,7 +6487,7 @@ else
 #include <gtk/gtk.h>
 #include <stdio.h>
 
-int 
+int
 main ()
 {
   int major, minor, micro;
@@ -6500,8 +6500,8 @@ main ()
    if (gtk_minor_version > 0) return FALSE;
 
    return !((gtk_major_version > major) ||
-           ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
-           ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
+           ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
+           ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
 }
 
 EOF
@@ -6527,7 +6527,7 @@ fi
      
        GUI_TK_INCLUDE="$GTK_CFLAGS"
        GUI_TK_LIBRARY="$GTK_LIBS"
-       
+  
   else
      echo "$ac_t""no" 1>&6
      GTK_CFLAGS=""
@@ -6580,7 +6580,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_include=""
   else
-    ac_path_to_include="-I$ac_find_includes"    
+    ac_path_to_include="-I$ac_find_includes"
   fi
 
        
@@ -6589,7 +6589,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_link=""
   else
-    ac_path_to_link="-L$ac_find_libraries"    
+    ac_path_to_link="-L$ac_find_libraries"
   fi
 
        CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
@@ -6645,7 +6645,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_include=""
   else
-    ac_path_to_include="-I$ac_find_includes"    
+    ac_path_to_include="-I$ac_find_includes"
   fi
 
        
@@ -6654,7 +6654,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_link=""
   else
-    ac_path_to_link="-L$ac_find_libraries"    
+    ac_path_to_link="-L$ac_find_libraries"
   fi
 
        CHECK_LINK="$CHECK_LIB $ac_path_to_link"
@@ -6681,7 +6681,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_link=""
   else
-    ac_path_to_link="-L$ac_find_libraries"    
+    ac_path_to_link="-L$ac_find_libraries"
   fi
 
          CHECK_LINK="$CHECK_LIB $ac_path_to_link"
@@ -6707,7 +6707,7 @@ for ac_dir in $SEARCH_LIB;
   if test $result = 0; then
     ac_path_to_link=""
   else
-    ac_path_to_link="-L$ac_find_libraries"    
+    ac_path_to_link="-L$ac_find_libraries"
   fi
 
            CHECK_LINK="$CHECK_LIB $ac_path_to_link"
@@ -6724,17 +6724,17 @@ for ac_dir in $SEARCH_LIB;
   else
      { echo "configure: error: no" 1>&2; exit 1; }
   fi
-  
+
   GUI_TK_LINK="-lXm -lXpm -lXmu -lXt -lX11 -lm"
   GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
   TOOLKIT=MOTIF
-  TOOLKIT_DEF="__WXMOTIF__ -D__LINUX__ -D__UNIX__"
+  TOOLKIT_DEF=__WXMOTIF__
   WX_LINK=-lwx_motif2
   MAKEINCLUDE=../motif.inc
 fi
 
 if test "$TOOLKIT" = ""; then
-  { echo "configure: error: You must specify a toolkit: --with-gtk --with-qt --with-motif" 1>&2; exit 1; } 
+  { echo "configure: error: You must specify a toolkit: --with-gtk --with-qt --with-motif" 1>&2; exit 1; }
 fi
 
 
@@ -6847,7 +6847,7 @@ if test "$wxUSE_LIBPNG" = 1 ; then
   cat >> confdefs.h <<EOF
 #define wxUSE_LIBPNG $wxUSE_LIBPNG
 EOF
+
   PNG_C_SRC="\$(PNG_C_SRC)"
 fi
 
@@ -6904,7 +6904,7 @@ EOF
 else
   echo "$ac_t""no" 1>&6
 fi
+
   JPEG_LINK="-ljpeg"
 fi
 
@@ -6914,7 +6914,7 @@ if test "$wxUSE_ODBC" = 1 ; then
   cat >> confdefs.h <<EOF
 #define wxUSE_ODBC $wxUSE_ODBC
 EOF
+
   IODBC_C_SRC="\$(IODBC_C_SRC)"
 fi
 
@@ -7396,6 +7396,52 @@ fi
 fi
 
 
+    if test "x$THREADS_LINK" = "x"; then
+                echo $ac_n "checking for pthread_create in -lc_r""... $ac_c" 1>&6
+echo "configure:7402: checking for pthread_create in -lc_r" >&5
+ac_lib_var=`echo c_r'_'pthread_create | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lc_r  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 7410 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char pthread_create();
+
+int main() {
+pthread_create()
+; return 0; }
+EOF
+if { (eval echo configure:7421: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  
+                        UNIX_THREAD="gtk/threadpsx.cpp"
+                        THREADS_LINK="-lc_r"
+                    
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+    fi
+
     if test "$THREADS_LINK" != ""; then
       cat >> confdefs.h <<\EOF
 #define wxUSE_THREADS 1
@@ -7405,7 +7451,7 @@ EOF
 
     
     echo $ac_n "checking for printf in -lposix4""... $ac_c" 1>&6
-echo "configure:7409: checking for printf in -lposix4" >&5
+echo "configure:7455: checking for printf in -lposix4" >&5
 ac_lib_var=`echo posix4'_'printf | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7413,7 +7459,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix4  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7417 "configure"
+#line 7463 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7424,7 +7470,7 @@ int main() {
 printf()
 ; return 0; }
 EOF
-if { (eval echo configure:7428: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7446,7 +7492,7 @@ else
   echo "$ac_t""no" 1>&6
 fi
 
-    
+
 fi
 
 if test "$wxUSE_MOTIF" = "1"; then
@@ -7483,7 +7529,7 @@ case "${canonical}" in
     CREATE_SHARED=sharedLinux
   ;;
 
-  *-*-irix5* | *-*-irix6* ) 
+  *-*-irix5* | *-*-irix6* )
     # PICFLAGS can remain empty, as pic is the default
     LDFLAGS="-Wl,+s"
     CREATE_SHARED=sharedIrix
@@ -7493,7 +7539,7 @@ EOF
 
   ;;
 
-  *-*-solaris2* ) 
+  *-*-solaris2* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-KPIC"
     else
@@ -7506,7 +7552,7 @@ EOF
 
   ;;
 
-  *-*-sunos4* ) 
+  *-*-sunos4* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-PIC"
     else
@@ -7529,12 +7575,12 @@ EOF
 
   ;;
 
-  *-*-osf* ) 
+  *-*-osf* )
     PICFLAGS="-fPIC"
     CREATE_SHARED=sharedOSF
   ;;
 
-  *-*-dgux5* ) 
+  *-*-dgux5* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-K PIC"
     else
@@ -7547,7 +7593,7 @@ EOF
 
   ;;
 
-  *-*-sysv5* ) 
+  *-*-sysv5* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-K PIC"
     else
@@ -7560,7 +7606,7 @@ EOF
 
   ;;
 
-  *-*-aix* ) 
+  *-*-aix* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-bM\:SRE"
     else
index 9888dd7f0978582fc8b72bdb31c2d8886c8659a7..905a8036fe1a367d03ad8871f94c356c298fc6eb 100644 (file)
@@ -11,7 +11,7 @@ dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
 dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
 dnl
 AC_DEFUN(AM_PATH_GTK,
-[dnl 
+[dnl
 dnl Get the cflags and libraries from the gtk-config script
 dnl
 AC_ARG_WITH(gtk-prefix,[**--with-gtk-prefix=PFX       Prefix where GTK is installed],
@@ -51,7 +51,7 @@ dnl
 #include <gtk/gtk.h>
 #include <stdio.h>
 
-int 
+int
 main ()
 {
   int major, minor, micro;
@@ -64,8 +64,8 @@ main ()
    if (gtk_minor_version > 0) return FALSE;
 
    return !((gtk_major_version > major) ||
-           ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
-           ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
+           ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
+           ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
 }
 ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
      CFLAGS="$ac_save_CFLAGS"
@@ -75,7 +75,7 @@ main ()
   fi
   if test "x$no_gtk" = x ; then
      AC_MSG_RESULT(yes)
-     ifelse([$2], , :, [$2])     
+     ifelse([$2], , :, [$2])
   else
      AC_MSG_RESULT(no)
      GTK_CFLAGS=""
@@ -185,7 +185,7 @@ AC_DEFUN(AC_INCLUDE_PATH_EXIST,
   if test $result = 0; then
     ac_path_to_include=""
   else
-    ac_path_to_include="-I$1"    
+    ac_path_to_include="-I$1"
   fi
 ])
 
@@ -197,7 +197,7 @@ AC_DEFUN(AC_LINK_PATH_EXIST,
   if test $result = 0; then
     ac_path_to_link=""
   else
-    ac_path_to_link="-L$1"    
+    ac_path_to_link="-L$1"
   fi
 ])
 
@@ -246,7 +246,7 @@ SEARCH_INCLUDE="\
     /usr/Motif1.2/include     \
     /usr/dt/include           \
     /usr/include/Xm           \
-                                         \
+                              \
     /usr/X11R6/include        \
     /usr/X11R5/include        \
     /usr/X11R4/include        \
@@ -317,7 +317,7 @@ CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
 
 dnl does compiler support -c and -o simultaniously
 AC_PROG_CC_C_O
-dnl   defines NO_MINUS_C_MINUS_O if compiler does not accept 
+dnl   defines NO_MINUS_C_MINUS_O if compiler does not accept
 dnl                              both switches simultaniously
 dnl what is the c-preprocessor
 AC_PROG_CPP
@@ -388,7 +388,7 @@ echo dummy > sub/file
 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
 RESULT=$?
 rm -f sub/file check final_file confMake
-rmdir sub 
+rmdir sub
 if test "$RESULT" = 0; then
   AC_MSG_RESULT(yes)
 else
@@ -403,7 +403,7 @@ export MAKE=gmake; ./configure  for sh-type shells
 setenv MAKE gmake; ./configure  for csh-type shells
 Also please do remember to use gmake in this case every time
 you are trying to compile.
-) 
+)
 fi
 
 dnl ####################
@@ -490,16 +490,16 @@ dnl # checks structures #
 dnl #####################
 
 AC_HEADER_STAT
-dnl   defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG 
+dnl   defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
 dnl                              do not work properly
 AC_HEADER_TIME
 dnl   defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
 dnl                              both be included
-AC_STRUCT_ST_BLKSIZE 
+AC_STRUCT_ST_BLKSIZE
 dnl   defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
-AC_STRUCT_ST_BLOCKS 
+AC_STRUCT_ST_BLOCKS
 dnl   defines HAVE_ST_BLOCKS if struct stat contains st_blocks
-AC_STRUCT_ST_RDEV 
+AC_STRUCT_ST_RDEV
 dnl   defines HAVE_ST_RDEV if struct stat contains st_rdev
 AC_STRUCT_TM
 dnl   defines TM_IN_SYS_TIME if struct tm is not in time.h
@@ -545,10 +545,10 @@ dnl   defines HAVE_LONG_FILENAMES if filenames longer then
 dnl                               14 chars are supported
 
 dnl AC_SYS_RESTARTABLE_SYSCALLS
-dnl   defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a 
+dnl   defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
 dnl                                     system call that is interrupted
 dnl                                     by a signal
-                                          
+
 dnl #################
 dnl # checks PARSER #
 dnl #################
@@ -566,7 +566,7 @@ dnl   defines LEXLIB with the appropriate library
 dnl what type is yytext
 AC_DECL_YYTEXT
 dnl   defines YYTEXT_POINTER  if yytext is char*
-dnl   defines LEX_OUTPUT_ROOT as to the base of the 
+dnl   defines LEX_OUTPUT_ROOT as to the base of the
 dnl                           filename output by the lexer
 
 dnl ###################################
@@ -605,7 +605,7 @@ if test x"$libltdl_cv_uscore" = xyes; then
 fnord() { int i=42;}
 main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
     if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
-    if(ptr1 && !ptr2) exit(0); } exit(1); } 
+    if(ptr1 && !ptr2) exit(0); } exit(1); }
 ],     libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
        libltdl_cv_need_uscore=no
 )])
@@ -677,13 +677,13 @@ case "${canonical}" in
       AC_DEFINE(__ALPHA__)
     fi
   ;;
-  *-*-irix5* | *-*-irix6* ) 
+  *-*-irix5* | *-*-irix6* )
     USE_SGI=1
     USE_SVR4=1
     AC_DEFINE(__SGI__)
     AC_DEFINE(__SVR4__)
   ;;
-  *-*-solaris2* ) 
+  *-*-solaris2* )
     USE_SUN=1
     USE_SOLARIS=1
     USE_SVR4=1
@@ -691,7 +691,7 @@ case "${canonical}" in
     AC_DEFINE(__SOLARIS__)
     AC_DEFINE(__SVR4__)
   ;;
-  *-*-sunos4* ) 
+  *-*-sunos4* )
     USE_SUN=1
     USE_SUNOS=1
     USE_BSD=1
@@ -705,25 +705,25 @@ case "${canonical}" in
     AC_DEFINE(__FREEBSD__)
     AC_DEFINE(__BSD__)
   ;;
-  *-*-osf* ) 
+  *-*-osf* )
     USE_ALPHA=1
     USE_OSF=1
     AC_DEFINE(__ALPHA__)
     AC_DEFINE(__OSF__)
   ;;
-  *-*-dgux5* ) 
+  *-*-dgux5* )
     USE_ALPHA=1
     USE_SVR4=1
     AC_DEFINE(__ALPHA__)
     AC_DEFINE(__SVR4__)
   ;;
-  *-*-sysv5* ) 
+  *-*-sysv5* )
     USE_SYSV=1
     USE_SVR4=1
     AC_DEFINE(__SYSV__)
     AC_DEFINE(__SVR4__)
   ;;
-  *-*-aix* ) 
+  *-*-aix* )
     USE_AIX=1
     USE_SYSV=1
     USE_SVR4=1
@@ -1096,17 +1096,17 @@ if test "$wxUSE_MOTIF" = 1; then
   else
      AC_MSG_ERROR(no)
   fi
-  
+
   GUI_TK_LINK="-lXm -lXpm -lXmu -lXt -lX11 -lm"
   GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
   TOOLKIT=MOTIF
-  TOOLKIT_DEF="__WXMOTIF__ -D__LINUX__ -D__UNIX__"
+  TOOLKIT_DEF=__WXMOTIF__
   WX_LINK=-lwx_motif2
   MAKEINCLUDE=../motif.inc
 fi
 
 if test "$TOOLKIT" = ""; then
-  AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif) 
+  AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
 fi
 
 AC_SUBST(GUI_TK_INCLUDE)
@@ -1204,7 +1204,7 @@ fi
 AC_SUBST(Z_C_SRC)
 
 if test "$wxUSE_LIBPNG" = 1 ; then
-  AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG) 
+  AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
   PNG_C_SRC="\$(PNG_C_SRC)"
 fi
 AC_SUBST(PNG_C_SRC)
@@ -1212,14 +1212,14 @@ AC_SUBST(PNG_C_SRC)
 JPEG_LINK=""
 if test "$wxUSE_LIBJPEG" = 1 ; then
   AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
-  AC_CHECK_LIB(jpeg) 
+  AC_CHECK_LIB(jpeg)
   JPEG_LINK="-ljpeg"
 fi
 AC_SUBST(JPEG_LINK)
 
 IODBC_C_SRC=""
 if test "$wxUSE_ODBC" = 1 ; then
-  AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC) 
+  AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
   IODBC_C_SRC="\$(IODBC_C_SRC)"
 fi
 AC_SUBST(IODBC_C_SRC)
@@ -1396,6 +1396,15 @@ if test "$wxUSE_THREADS" = "1"; then
      ])
     ])
 
+    if test "x$THREADS_LINK" = "x"; then
+        dnl thread functions are in libc_r under FreeBSD
+        AC_CHECK_LIB(c_r, pthread_create,
+                    [
+                        UNIX_THREAD="gtk/threadpsx.cpp"
+                        THREADS_LINK="-lc_r"
+                    ])
+    fi
+
     if test "$THREADS_LINK" != ""; then
       AC_DEFINE(wxUSE_THREADS)
     fi
@@ -1405,7 +1414,7 @@ if test "$wxUSE_THREADS" = "1"; then
     AC_CHECK_LIB(posix4, printf, [
       THREADS_LINK="$THREADS_LINK -lposix4"
     ])
-    
+
 fi
 
 if test "$wxUSE_MOTIF" = "1"; then
@@ -1448,14 +1457,14 @@ case "${canonical}" in
     CREATE_SHARED=sharedLinux
   ;;
 
-  *-*-irix5* | *-*-irix6* ) 
+  *-*-irix5* | *-*-irix6* )
     # PICFLAGS can remain empty, as pic is the default
     LDFLAGS="-Wl,+s"
     CREATE_SHARED=sharedIrix
     AC_DEFINE(SVR4)
   ;;
 
-  *-*-solaris2* ) 
+  *-*-solaris2* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-KPIC"
     else
@@ -1465,7 +1474,7 @@ case "${canonical}" in
     AC_DEFINE(SVR4)
   ;;
 
-  *-*-sunos4* ) 
+  *-*-sunos4* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-PIC"
     else
@@ -1482,12 +1491,12 @@ case "${canonical}" in
     AC_DEFINE(BSD)
   ;;
 
-  *-*-osf* ) 
+  *-*-osf* )
     PICFLAGS="-fPIC"
     CREATE_SHARED=sharedOSF
   ;;
 
-  *-*-dgux5* ) 
+  *-*-dgux5* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-K PIC"
     else
@@ -1497,7 +1506,7 @@ case "${canonical}" in
     AC_DEFINE(SVR4)
   ;;
 
-  *-*-sysv5* ) 
+  *-*-sysv5* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-K PIC"
     else
@@ -1507,7 +1516,7 @@ case "${canonical}" in
     AC_DEFINE(SVR4)
   ;;
 
-  *-*-aix* ) 
+  *-*-aix* )
     if test "$GCC" != "yes" ; then
       PICFLAGS="-bM\:SRE"
     else