* [PATCH] Add autoconf tests for pthreads
@ 2008-11-03 18:14 david.syzdek
2008-11-03 22:07 ` Junio C Hamano
0 siblings, 1 reply; 2+ messages in thread
From: david.syzdek @ 2008-11-03 18:14 UTC (permalink / raw)
To: git; +Cc: jnareb, David M. Syzdek
From: David M. Syzdek <david.syzdek@acsalaska.net>
Sets the value of PTHREAD_LIBS to the correct flags for linking pthreads on
the current environment. If the correct flags can be determined then
THREADED_DELTA_SEARCH is set. If the correct flags cannot be determined,
then THREADED_DELTA_SEARCH is unset.
Signed-off-by: David M. Syzdek <david.syzdek@acsalaska.net>
---
config.mak.in | 2 ++
configure.ac | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/config.mak.in b/config.mak.in
index 7170729..3d3fbcd 100644
--- a/config.mak.in
+++ b/config.mak.in
@@ -51,3 +51,5 @@ OLD_ICONV=@OLD_ICONV@
NO_DEFLATE_BOUND=@NO_DEFLATE_BOUND@
FREAD_READS_DIRECTORIES=@FREAD_READS_DIRECTORIES@
SNPRINTF_RETURNS_BOGUS=@SNPRINTF_RETURNS_BOGUS@
+THREADED_DELTA_SEARCH=@THREADED_DELTA_SEARCH@
+PTHREAD_LIBS=@PTHREAD_LIBS@
diff --git a/configure.ac b/configure.ac
index 9dfc0d3..3bf5d15 100644
--- a/configure.ac
+++ b/configure.ac
@@ -489,6 +489,26 @@ AC_SUBST(NO_MKDTEMP)
#
# Define NO_SYMLINK_HEAD if you never want .git/HEAD to be a symbolic link.
# Enable it on Windows. By default, symrefs are still used.
+#
+# Define PTHREAD_LIBS to the linker flag used for Pthread support and define
+# THREADED_DELTA_SEARCH if Pthreads are available.
+AC_LANG_CONFTEST([AC_LANG_PROGRAM(
+ [[#include <pthread.h>]],
+ [[pthread_mutex_t test_mutex;]]
+)])
+${CC} -pthread conftest.c -o conftest.o > /dev/null 2>&1
+if test $? -eq 0;then
+ PTHREAD_LIBS="-pthread"
+ THREADED_DELTA_SEARCH=YesPlease
+else
+ ${CC} -lpthread conftest.c -o conftest.o > /dev/null 2>&1
+ if test $? -eq 0;then
+ PTHREAD_LIBS="-lpthread"
+ THREADED_DELTA_SEARCH=YesPlease
+ fi
+fi
+AC_SUBST(PTHREAD_LIBS)
+AC_SUBST(THREADED_DELTA_SEARCH)
## Site configuration (override autodetection)
## --with-PACKAGE[=ARG] and --without-PACKAGE
--
1.6.0.2.GIT
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] Add autoconf tests for pthreads
2008-11-03 18:14 [PATCH] Add autoconf tests for pthreads david.syzdek
@ 2008-11-03 22:07 ` Junio C Hamano
0 siblings, 0 replies; 2+ messages in thread
From: Junio C Hamano @ 2008-11-03 22:07 UTC (permalink / raw)
To: david.syzdek; +Cc: git, jnareb
david.syzdek@acsalaska.net writes:
> +# Define PTHREAD_LIBS to the linker flag used for Pthread support and define
> +# THREADED_DELTA_SEARCH if Pthreads are available.
This may affect platforms that do have pthread library but choose not to
use threaded delta search for whatever reason by suddenly turning it on.
Which arguably may be a good thing to do, but it is a change unrelated to
porting to FreeBSD.
> +AC_LANG_CONFTEST([AC_LANG_PROGRAM(
> + [[#include <pthread.h>]],
> + [[pthread_mutex_t test_mutex;]]
> +)])
> +${CC} -pthread conftest.c -o conftest.o > /dev/null 2>&1
> +if test $? -eq 0;then
> + PTHREAD_LIBS="-pthread"
> + THREADED_DELTA_SEARCH=YesPlease
> +else
> + ${CC} -lpthread conftest.c -o conftest.o > /dev/null 2>&1
Maybe I am old fashioned, but having "-library" very near the beginning of
the command line and naming the final link product (i.e. not with -c) *.o
makes me go "Huh?" If it were written like this,
$CC -o conftest$ac_exeext conftest.c -lpthread
it might have been easier to swallow. I dunno.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-11-03 22:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-03 18:14 [PATCH] Add autoconf tests for pthreads david.syzdek
2008-11-03 22:07 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox