Merge pull request #1458 from rubenk/pthread-detection
authorRuben Kerkhof <ruben@tilaa.nl>
Fri, 11 Dec 2015 20:38:32 +0000 (21:38 +0100)
committerRuben Kerkhof <ruben@tilaa.nl>
Fri, 11 Dec 2015 20:38:32 +0000 (21:38 +0100)
Pthread detection

1  2 
configure.ac
src/Makefile.am

diff --combined configure.ac
@@@ -396,7 -396,7 +396,7 @@@ AC_CHECK_HEADERS(sys/sysctl.h, [], []
  AC_MSG_CHECKING([for sysctl kern.cp_times])
  if test -x /sbin/sysctl
  then
 -      /sbin/sysctl kern.cp_times 2>/dev/null
 +      /sbin/sysctl kern.cp_times >/dev/null 2>&1
        if test $? -eq 0
        then
                AC_MSG_RESULT([yes])
@@@ -1515,6 -1515,46 +1515,46 @@@ if test "x$with_libhal" = "xyes"; the
        fi
  fi
  
+ # --with-libpthread {{{
+ AC_ARG_WITH(libpthread, [AS_HELP_STRING([--with-libpthread=@<:@=PREFIX@:>@], [Path to libpthread.])],
+ [     if test "x$withval" != "xno" \
+               && test "x$withval" != "xyes"
+       then
+               LDFLAGS="$LDFLAGS -L$withval/lib"
+               CPPFLAGS="$CPPFLAGS -I$withval/include"
+               with_libpthread="yes"
+       else
+               if test "x$withval" = "xno"
+               then
+                       with_libpthread="no (disabled)"
+               fi
+       fi
+ ], [with_libpthread="yes"])
+ AC_SUBST([PTHREAD_LIBS])
+ if test "x$with_libpthread" = "xyes"
+ then
+       SAVE_LIBS="$LIBS"
+       AC_CHECK_LIB(pthread, pthread_create, [], [with_libpthread="no (Symbol 'pthread_create' not found)"], [])
+       PTHREAD_LIBS="$LIBS"
+       LIBS="$SAVE_LIBS"
+ fi
+ if test "x$with_libpthread" = "xyes"
+ then
+       AC_CHECK_HEADERS(pthread.h,, [with_libpthread="no (pthread.h not found)"])
+ fi
+ if test "x$with_libpthread" = "xyes"
+ then
+       collect_pthread=1
+ else
+       collect_pthread=0
+ fi
+ AC_DEFINE_UNQUOTED(HAVE_LIBPTHREAD, [$collect_pthread],
+       [Wether or not to use pthread (POSIX threads) library])
+ AM_CONDITIONAL(BUILD_WITH_LIBPTHREAD, test "x$with_libpthread" = "xyes")
+ # }}}
  m4_divert_once([HELP_WITH], [
  collectd additional packages:])
  
@@@ -2183,6 -2223,9 +2223,6 @@@ if test "x$with_java_home" = "x
  then
        with_java_home="/usr/lib/jvm"
  fi
 -with_java_vmtype="client"
 -with_java_cflags=""
 -with_java_libs=""
  JAVAC="$JAVAC"
  JAR="$JAR"
  AC_ARG_WITH(java, [AS_HELP_STRING([--with-java@<:@=PREFIX@:>@], [Path to Java home.])],
@@@ -2275,10 -2318,6 +2315,10 @@@ if test "x$JAVA_LDFLAGS" != "x
  then
        AC_MSG_NOTICE([Building with JAVA_LDFLAGS set to: $JAVA_LDFLAGS])
  fi
 +if test "x$JAVA_LIBS" != "x"
 +then
 +      AC_MSG_NOTICE([Building with JAVA_LIBS set to: $JAVA_LIBS])
 +fi
  if test "x$JAVAC" = "x"
  then
        with_javac_path="$PATH"
  SAVE_CPPFLAGS="$CPPFLAGS"
  SAVE_CFLAGS="$CFLAGS"
  SAVE_LDFLAGS="$LDFLAGS"
 +SAVE_LIBS="$LIBS"
  CPPFLAGS="$CPPFLAGS $JAVA_CPPFLAGS"
  CFLAGS="$CFLAGS $JAVA_CFLAGS"
  LDFLAGS="$LDFLAGS $JAVA_LDFLAGS"
 +LIBS="$LIBS $JAVA_LIBS"
  
  if test "x$with_java" = "xyes"
  then
@@@ -2333,7 -2370,7 +2373,7 @@@ if test "x$with_java" = "xyes
  then
        AC_CHECK_LIB(jvm, JNI_CreateJavaVM,
        [with_java="yes"],
 -      [with_java="no (libjvm not found)"],
 +      [with_java="no (Symbol 'JNI_CreateJavaVM' not found)"],
        [$JAVA_LIBS])
  fi
  if test "x$with_java" = "xyes"
  CPPFLAGS="$SAVE_CPPFLAGS"
  CFLAGS="$SAVE_CFLAGS"
  LDFLAGS="$SAVE_LDFLAGS"
 +LIBS="$SAVE_LIBS"
  
  AC_SUBST(JAVA_CPPFLAGS)
  AC_SUBST(JAVA_CFLAGS)
@@@ -2971,7 -3007,7 +3011,7 @@@ the
  
        if test "x$LIBNETAPP_LIBS" = "x"
        then
-               LIBNETAPP_LIBS="-lpthread -lxml -ladt -lssl -lm -lcrypto -lz"
+               LIBNETAPP_LIBS="$PTHREAD_LIBS -lxml -ladt -lssl -lm -lcrypto -lz"
        fi
        AC_MSG_NOTICE([netapp LIBS: $LIBNETAPP_LIBS])
  
  
  # --with-libowcapi {{{
  with_libowcapi_cppflags=""
 -with_libowcapi_libs="-lowcapi"
 +with_libowcapi_ldflags=""
  AC_ARG_WITH(libowcapi, [AS_HELP_STRING([--with-libowcapi@<:@=PREFIX@:>@], [Path to libowcapi.])],
  [
        if test "x$withval" != "xno" && test "x$withval" != "xyes"
        then
                with_libowcapi_cppflags="-I$withval/include"
 -              with_libowcapi_libs="-L$withval/lib -lowcapi"
 +              with_libowcapi_ldflags="-L$withval/lib"
                with_libowcapi="yes"
        else
                with_libowcapi="$withval"
  if test "x$with_libowcapi" = "xyes"
  then
        SAVE_CPPFLAGS="$CPPFLAGS"
 -      CPPFLAGS="$with_libowcapi_cppflags"
 +      CPPFLAGS="$CPPFLAGS $with_libowcapi_cppflags"
  
        AC_CHECK_HEADERS(owcapi.h, [with_libowcapi="yes"], [with_libowcapi="no (owcapi.h not found)"])
  
@@@ -3267,7 -3303,7 +3307,7 @@@ if test "x$with_libowcapi" = "xyes
  then
        SAVE_LDFLAGS="$LDFLAGS"
        SAVE_CPPFLAGS="$CPPFLAGS"
 -      LDFLAGS="$with_libowcapi_libs"
 +      LDFLAGS="$LDFLAGS $with_libowcapi_ldflags"
        CPPFLAGS="$with_libowcapi_cppflags"
  
        AC_CHECK_LIB(owcapi, OW_get, [with_libowcapi="yes"], [with_libowcapi="no (libowcapi not found)"])
  if test "x$with_libowcapi" = "xyes"
  then
        BUILD_WITH_LIBOWCAPI_CPPFLAGS="$with_libowcapi_cppflags"
 -      BUILD_WITH_LIBOWCAPI_LIBS="$with_libowcapi_libs"
 +      BUILD_WITH_LIBOWCAPI_LDFLAGS="$with_libowcapi_ldflags"
 +      BUILD_WITH_LIBOWCAPI_LIBS="-lowcapi"
        AC_SUBST(BUILD_WITH_LIBOWCAPI_CPPFLAGS)
 +      AC_SUBST(BUILD_WITH_LIBOWCAPI_LDFLAGS)
        AC_SUBST(BUILD_WITH_LIBOWCAPI_LIBS)
  fi
  # }}}
  AM_CONDITIONAL(BUILD_WITH_LIBPQ, test "x$with_libpq" = "xyes")
  # }}}
  
- # --with-libpthread {{{
- AC_ARG_WITH(libpthread, [AS_HELP_STRING([--with-libpthread=@<:@=PREFIX@:>@], [Path to libpthread.])],
- [     if test "x$withval" != "xno" \
-               && test "x$withval" != "xyes"
-       then
-               LDFLAGS="$LDFLAGS -L$withval/lib"
-               CPPFLAGS="$CPPFLAGS -I$withval/include"
-               with_libpthread="yes"
-       else
-               if test "x$withval" = "xno"
-               then
-                       with_libpthread="no (disabled)"
-               fi
-       fi
- ], [with_libpthread="yes"])
- if test "x$with_libpthread" = "xyes"
- then
-       AC_CHECK_LIB(pthread, pthread_create, [with_libpthread="yes"], [with_libpthread="no (libpthread not found)"], [])
- fi
- if test "x$with_libpthread" = "xyes"
- then
-       AC_CHECK_HEADERS(pthread.h,, [with_libpthread="no (pthread.h not found)"])
- fi
- if test "x$with_libpthread" = "xyes"
- then
-       collect_pthread=1
- else
-       collect_pthread=0
- fi
- AC_DEFINE_UNQUOTED(HAVE_LIBPTHREAD, [$collect_pthread],
-       [Wether or not to use pthread (POSIX threads) library])
- AM_CONDITIONAL(BUILD_WITH_LIBPTHREAD, test "x$with_libpthread" = "xyes")
- # }}}
  # --with-python {{{
  with_python_prog=""
  with_python_path="$PATH"
@@@ -4091,6 -4090,11 +4096,6 @@@ the
        SAVE_CPPFLAGS="$CPPFLAGS"
        CPPFLAGS="$CPPFLAGS $with_sensors_cflags"
  
 -#     AC_CHECK_HEADERS(sensors/sensors.h,
 -#     [
 -#             AC_DEFINE(HAVE_SENSORS_SENSORS_H, 1, [Define to 1 if you have the <sensors/sensors.h> header file.])
 -#     ],
 -#     [with_libsensors="no (sensors/sensors.h not found)"])
        AC_CHECK_HEADERS(sensors/sensors.h, [], [with_libsensors="no (sensors/sensors.h not found)"])
  
        CPPFLAGS="$SAVE_CPPFLAGS"
@@@ -4746,7 -4750,7 +4751,7 @@@ AC_ARG_WITH(mic,[AS_HELP_STRING([--with
                AC_MSG_NOTICE([Not checking for Intel Mic: Manually configured])
                with_mic_cflags="-I$withval/include"
                with_mic_ldpath="-L$withval/lib/Linux"
-               with_mic_libs="-lMicAccessSDK -lscif -lpthread"
+               with_mic_libs="$PTHREAD_LIBS -lMicAccessSDK -lscif"
                with_mic="yes"
        fi; fi; fi
  ],
@@@ -4768,8 -4772,8 +4773,8 @@@ the
  
        AC_CHECK_LIB(MicAccessSDK, MicInitAPI,
                        [with_mic_ldpath="$with_mic_ldpath"
-                       with_mic_libs="-lMicAccessSDK -lscif -lpthread"],
-                       [with_mic="no (symbol MicInitAPI not found)"],[-lscif -lpthread])
+                       with_mic_libs="$PTHREAD_LIBS -lMicAccessSDK -lscif"],
+                       [with_mic="no (symbol MicInitAPI not found)"],[$PTHREAD_LIBS -lscif])
  
        CPPFLAGS="$SAVE_CPPFLAGS"
        LDFLAGS="$SAVE_LDFLAGS"
@@@ -5126,8 -5130,11 +5131,8 @@@ AM_CONDITIONAL(BUILD_WITH_LIBATASMART, 
  
  PKG_CHECK_MODULES([LIBNOTIFY], [libnotify],
                [with_libnotify="yes"],
 -              [if test "x$LIBNOTIFY_PKG_ERRORS" = "x"; then
 -                       with_libnotify="no"
 -               else
 -                       with_libnotify="no ($LIBNOTIFY_PKG_ERRORS)"
 -               fi])
 +              [with_libnotify="no (pkg-config doesn't know libnotify)"]
 +)
  
  # Check for enabled/disabled features
  #
@@@ -5415,6 -5422,7 +5420,6 @@@ the
  fi
  
  # libi2c-dev
 -with_libi2c="no"
  if test "x$ac_system" = "xLinux"
  then
  AC_CHECK_DECL(i2c_smbus_read_i2c_block_data,
        [with_libi2c="no (symbol i2c_smbus_read_i2c_block_data not found - have you installed libi2c-dev ?)"],
        [[#include <stdlib.h>
        #include <linux/i2c-dev.h>]])
 +else
 +      with_libi2c="no (Linux only)"
  fi
  
  if test "x$with_libi2c" = "xyes"
diff --combined src/Makefile.am
@@@ -97,7 -97,7 +97,7 @@@ if BUILD_AI
  collectd_tg_LDADD += -lm
  endif
  if BUILD_WITH_LIBPTHREAD
- collectd_tg_LDADD += -lpthread
+ collectd_tg_LDADD += $(PTHREAD_LIBS)
  endif
  collectd_tg_LDADD += libcollectdclient/libcollectdclient.la
  collectd_tg_DEPENDENCIES = libcollectdclient/libcollectdclient.la
@@@ -349,21 -349,21 +349,21 @@@ if BUILD_PLUGIN_DN
  pkglib_LTLIBRARIES += dns.la
  dns_la_SOURCES = dns.c utils_dns.c utils_dns.h
  dns_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- dns_la_LIBADD = -lpcap -lpthread
+ dns_la_LIBADD = $(PTHREAD_LIBS) -lpcap
  endif
  
  if BUILD_PLUGIN_DRBD
  pkglib_LTLIBRARIES += drbd.la
  drbd_la_SOURCES = drbd.c
  drbd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- drbd_la_LIBADD = -lpthread
+ drbd_la_LIBADD = $(PTHREAD_LIBS)
  endif
  
  if BUILD_PLUGIN_EMAIL
  pkglib_LTLIBRARIES += email.la
  email_la_SOURCES = email.c
  email_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- email_la_LIBADD = -lpthread
+ email_la_LIBADD = $(PTHREAD_LIBS)
  endif
  
  if BUILD_PLUGIN_ENTROPY
@@@ -379,7 -379,7 +379,7 @@@ exec_la_SOURCES = exec.c 
                  utils_cmd_putval.c utils_cmd_putval.h \
                  utils_parse_option.h utils_parse_option.c
  exec_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- exec_la_LIBADD = -lpthread
+ exec_la_LIBADD = $(PTHREAD_LIBS)
  endif
  
  if BUILD_PLUGIN_ETHSTAT
@@@ -688,7 -688,7 +688,7 @@@ network_la_SOURCES = network.c network.
                     utils_fbhash.c utils_fbhash.h
  network_la_CPPFLAGS = $(AM_CPPFLAGS)
  network_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- network_la_LIBADD = -lpthread
+ network_la_LIBADD = $(PTHREAD_LIBS)
  if BUILD_WITH_LIBSOCKET
  network_la_LIBADD += -lsocket
  endif
@@@ -735,7 -735,7 +735,7 @@@ if BUILD_PLUGIN_NOTIFY_EMAI
  pkglib_LTLIBRARIES += notify_email.la
  notify_email_la_SOURCES = notify_email.c
  notify_email_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- notify_email_la_LIBADD = -lesmtp -lssl -lcrypto -lpthread
+ notify_email_la_LIBADD = $(PTHREAD_LIBS) -lesmtp -lssl -lcrypto
  endif
  
  if BUILD_PLUGIN_NOTIFY_NAGIOS
@@@ -765,7 -765,7 +765,7 @@@ pkglib_LTLIBRARIES += nut.l
  nut_la_SOURCES = nut.c
  nut_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBUPSCLIENT_CFLAGS)
  nut_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- nut_la_LIBADD = -lpthread $(BUILD_WITH_LIBUPSCLIENT_LIBS)
+ nut_la_LIBADD = $(PTHREAD_LIBS) $(BUILD_WITH_LIBUPSCLIENT_LIBS)
  endif
  
  if BUILD_PLUGIN_OLSRD
@@@ -784,7 -784,7 +784,7 @@@ onewire_la_SOURCES = onewire.
  onewire_la_CFLAGS = $(AM_CFLAGS)
  onewire_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBOWCAPI_CPPFLAGS)
  onewire_la_LIBADD = $(BUILD_WITH_LIBOWCAPI_LIBS)
 -onewire_la_LDFLAGS = $(PLUGIN_LDFLAGS)
 +onewire_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBOWCAPI_LDFLAGS)
  endif
  
  if BUILD_PLUGIN_OPENLDAP
@@@ -972,7 -972,7 +972,7 @@@ snmp_la_CFLAGS += $(BUILD_WITH_LIBSNMP_
  snmp_la_LIBADD += $(BUILD_WITH_LIBSNMP_LIBS)
  endif
  if BUILD_WITH_LIBPTHREAD
- snmp_la_LIBADD += -lpthread
+ snmp_la_LIBADD += $(PTHREAD_LIBS)
  endif
  endif
  
@@@ -980,7 -980,7 +980,7 @@@ if BUILD_PLUGIN_STATS
  pkglib_LTLIBRARIES += statsd.la
  statsd_la_SOURCES = statsd.c
  statsd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- statsd_la_LIBADD = liblatency.la -lpthread -lm
+ statsd_la_LIBADD = $(PTHREAD_LIBS) liblatency.la -lm
  endif
  
  if BUILD_PLUGIN_SWAP
@@@ -1131,7 -1131,7 +1131,7 @@@ unixsock_la_SOURCES = unixsock.c 
                      utils_cmd_putnotif.h utils_cmd_putnotif.c \
                      utils_parse_option.h utils_parse_option.c
  unixsock_la_LDFLAGS = $(PLUGIN_LDFLAGS)
- unixsock_la_LIBADD = -lpthread
+ unixsock_la_LIBADD = $(PTHREAD_LIBS)
  endif
  
  if BUILD_PLUGIN_UPTIME