summaryrefslogtreecommitdiffstats
path: root/unix
diff options
context:
space:
mode:
authorstwo <stwo>2010-02-19 13:26:36 (GMT)
committerstwo <stwo>2010-02-19 13:26:36 (GMT)
commit02f1403c00f04aab73f988a2ebdc0195d6feaed5 (patch)
treec0df4f8ca7664254569ebabf256b9d27487c380f /unix
parent8453d3cccbea40ae4ddb7145ba3fdaae9f034906 (diff)
downloadtk-02f1403c00f04aab73f988a2ebdc0195d6feaed5.zip
tk-02f1403c00f04aab73f988a2ebdc0195d6feaed5.tar.gz
tk-02f1403c00f04aab73f988a2ebdc0195d6feaed5.tar.bz2
Correct compiler/linker flags for threaded builds on OpenBSD.
Diffstat (limited to 'unix')
-rwxr-xr-xunix/configure22
-rw-r--r--unix/tcl.m49
2 files changed, 22 insertions, 9 deletions
diff --git a/unix/configure b/unix/configure
index b38b7ac..7bcf5e5 100755
--- a/unix/configure
+++ b/unix/configure
@@ -5902,6 +5902,14 @@ else
LDFLAGS=""
fi
+ if test "${TCL_THREADS}" = "1"; then
+
+ # OpenBSD builds and links with -pthread, never -lpthread.
+ LIBS=`echo $LIBS | sed s/-lpthread//`
+ CFLAGS="$CFLAGS -pthread"
+ SHLIB_CFLAGS="$SHLIB_CFLAGS -pthread"
+
+fi
# OpenBSD doesn't do version numbers with dots.
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
@@ -7157,7 +7165,7 @@ fi
BSD/OS*) ;;
CYGWIN_*) ;;
IRIX*) ;;
- NetBSD-*|FreeBSD-*) ;;
+ NetBSD-*|FreeBSD-*|OpenBSD-*) ;;
Darwin-*) ;;
SCO_SV-3.2*) ;;
*) SHLIB_CFLAGS="-fPIC" ;;
@@ -10024,7 +10032,7 @@ ac_x_header_dirs='
/usr/openwin/share/include'
if test "$ac_x_includes" = no; then
- # Guess where to find include files, by looking for Xlib.h.
+ # Guess where to find include files, by looking for Intrinsic.h.
# First, try using that file with no special directory specified.
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -10032,7 +10040,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Xlib.h>
+#include <X11/Intrinsic.h>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
@@ -10059,7 +10067,7 @@ else
sed 's/^/| /' conftest.$ac_ext >&5
for ac_dir in $ac_x_header_dirs; do
- if test -r "$ac_dir/X11/Xlib.h"; then
+ if test -r "$ac_dir/X11/Intrinsic.h"; then
ac_x_includes=$ac_dir
break
fi
@@ -10073,18 +10081,18 @@ if test "$ac_x_libraries" = no; then
# See if we find them without any special options.
# Don't add to $LIBS permanently.
ac_save_LIBS=$LIBS
- LIBS="-lX11 $LIBS"
+ LIBS="-lXt $LIBS"
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Xlib.h>
+#include <X11/Intrinsic.h>
int
main ()
{
-XrmInitialize ()
+XtMalloc (0)
;
return 0;
}
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index d7ca5a2..2013aa1 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -1574,7 +1574,12 @@ dnl AC_CHECK_TOOL(AR, ar)
AS_IF([test $tcl_cv_ld_elf = yes], [
LDFLAGS=-Wl,-export-dynamic
], [LDFLAGS=""])
-
+ AS_IF([test "${TCL_THREADS}" = "1"], [
+ # OpenBSD builds and links with -pthread, never -lpthread.
+ LIBS=`echo $LIBS | sed s/-lpthread//`
+ CFLAGS="$CFLAGS -pthread"
+ SHLIB_CFLAGS="$SHLIB_CFLAGS -pthread"
+ ])
# OpenBSD doesn't do version numbers with dots.
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
TCL_LIB_VERSIONS_OK=nodots
@@ -2111,7 +2116,7 @@ dnl # preprocessing tests use only CPPFLAGS.
BSD/OS*) ;;
CYGWIN_*) ;;
IRIX*) ;;
- NetBSD-*|FreeBSD-*) ;;
+ NetBSD-*|FreeBSD-*|OpenBSD-*) ;;
Darwin-*) ;;
SCO_SV-3.2*) ;;
*) SHLIB_CFLAGS="-fPIC" ;;