aboutsummaryrefslogtreecommitdiff
path: root/libcilkrts/configure
diff options
context:
space:
mode:
authorAlexander Ivchenko <alexander.ivchenko@intel.com>2014-08-12 11:06:44 +0000
committerKirill Yukhin <kyukhin@gcc.gnu.org>2014-08-12 11:06:44 +0000
commit7955b06580a73bd6ad0d744928ab4775e4723c78 (patch)
tree158a00fe3e709b3e54e467d019bdf2029d24f729 /libcilkrts/configure
parent5435176b314566bf4b8907d323619bc9c73076b3 (diff)
downloadgcc-7955b06580a73bd6ad0d744928ab4775e4723c78.zip
gcc-7955b06580a73bd6ad0d744928ab4775e4723c78.tar.gz
gcc-7955b06580a73bd6ad0d744928ab4775e4723c78.tar.bz2
configure.ac: Move pthread affinity test to the place where '-pthread' passed to CFLAGS.
libcilkrts/ * configure.ac: Move pthread affinity test to the place where '-pthread' passed to CFLAGS. Otherwise the test always fails. (XCFLAGS): New variable for correctly passing '-pthread'. (XLDFLAGS): New variable for passing the correct pthread lib. * configure: Regenerate. * Makefile.am (AM_CFLAGS): Add $XCFLAGS. (AM_LDFLAGS): Add $XLDFLAGS. * Makefile.in: Regenerate. From-SVN: r213854
Diffstat (limited to 'libcilkrts/configure')
-rw-r--r--libcilkrts/configure91
1 files changed, 57 insertions, 34 deletions
diff --git a/libcilkrts/configure b/libcilkrts/configure
index 0dadbbd..1e8eabd 100644
--- a/libcilkrts/configure
+++ b/libcilkrts/configure
@@ -605,6 +605,8 @@ am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
link_cilkrts
+XLDFLAGS
+XCFLAGS
lt_cv_dlopen_libs
toolexeclibdir
toolexecdir
@@ -11057,7 +11059,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11060 "configure"
+#line 11062 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11163,7 +11165,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11166 "configure"
+#line 11168 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -14421,40 +14423,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-# Check for pthread_{,attr_}[sg]etaffinity_np.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#define _GNU_SOURCE
- #include <pthread.h>
-int
-main ()
-{
-cpu_set_t cpuset;
- pthread_attr_t attr;
- pthread_getaffinity_np (pthread_self (), sizeof (cpu_set_t), &cpuset);
- if (CPU_ISSET (0, &cpuset))
- CPU_SET (1, &cpuset);
- else
- CPU_ZERO (&cpuset);
- pthread_setaffinity_np (pthread_self (), sizeof (cpu_set_t), &cpuset);
- pthread_attr_init (&attr);
- pthread_attr_getaffinity_np (&attr, sizeof (cpu_set_t), &cpuset);
- pthread_attr_setaffinity_np (&attr, sizeof (cpu_set_t), &cpuset);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-$as_echo "#define HAVE_PTHREAD_AFFINITY_NP 1" >>confdefs.h
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
# Check to see if -pthread or -lpthread is needed. Prefer the former.
# Note that the CILK_SELF_SPEC in gcc.c may force -pthread.
# In case the pthread.h system header is not found, this test will fail.
+XCFLAGS=""
+XLDFLAGS=""
CFLAGS="$CFLAGS -pthread"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -14469,7 +14442,7 @@ pthread_t t; pthread_create(&t,NULL,g,NULL);
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
-
+ XCFLAGS=" -Wc,-pthread"
else
CFLAGS="$save_CFLAGS" LIBS="-lpthread $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14495,6 +14468,56 @@ fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
+# Check for pthread_{,attr_}[sg]etaffinity_np.
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#define _GNU_SOURCE
+ #include <pthread.h>
+int
+main ()
+{
+cpu_set_t cpuset;
+ pthread_attr_t attr;
+ pthread_getaffinity_np (pthread_self (), sizeof (cpu_set_t), &cpuset);
+ if (CPU_ISSET (0, &cpuset))
+ CPU_SET (1, &cpuset);
+ else
+ CPU_ZERO (&cpuset);
+ pthread_setaffinity_np (pthread_self (), sizeof (cpu_set_t), &cpuset);
+ pthread_attr_init (&attr);
+ pthread_attr_getaffinity_np (&attr, sizeof (cpu_set_t), &cpuset);
+ pthread_attr_setaffinity_np (&attr, sizeof (cpu_set_t), &cpuset);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+
+$as_echo "#define HAVE_PTHREAD_AFFINITY_NP 1" >>confdefs.h
+
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+# Every c++ lib is linking by default with -nostdlib, which leads to the
+# fact, that proper pthread library will not be given at link time. We have
+# to hard-code that.
+case "${target}" in
+
+ *android*)
+ XLDFLAGS="$XLDFLAGS -lc"
+ ;;
+ *)
+ XLDFLAGS="$XLDFLAGS -lpthread"
+ ;;
+
+esac
+
+
+
+
+CFLAGS="$save_CFLAGS"
+
if test $enable_shared = yes; then
link_cilkrts="-lcilkrts %{static: $LIBS}"
else