From 56377fcf79ad4ebe7cfb3c07a6cc67af2ab7fb53 Mon Sep 17 00:00:00 2001 From: hyung-hwan Date: Sat, 15 Aug 2020 14:54:01 +0000 Subject: [PATCH] updated build files for better mysql integration --- qse/Makefile.in | 2 + qse/cmd/Makefile.in | 2 + qse/cmd/awk/Makefile.am | 4 +- qse/cmd/awk/Makefile.in | 8 +- qse/cmd/http/Makefile.in | 2 + qse/cmd/sed/Makefile.in | 2 + qse/cmd/xli/Makefile.in | 2 + qse/configure | 665 ++++++++++++++++++++++++------- qse/configure.ac | 31 +- qse/doc/Makefile.in | 2 + qse/include/Makefile.in | 2 + qse/include/qse/Makefile.in | 2 + qse/include/qse/awk/Makefile.in | 2 + qse/include/qse/cmn/Makefile.in | 2 + qse/include/qse/cry/Makefile.in | 2 + qse/include/qse/dhcp/Makefile.in | 2 + qse/include/qse/http/Makefile.in | 2 + qse/include/qse/rad/Makefile.in | 2 + qse/include/qse/sed/Makefile.in | 2 + qse/include/qse/si/Makefile.in | 2 + qse/include/qse/sttp/Makefile.in | 2 + qse/include/qse/xli/Makefile.in | 2 + qse/lib/Makefile.in | 2 + qse/lib/awk/Makefile.in | 2 + qse/lib/awkmod/Makefile.am | 2 +- qse/lib/awkmod/Makefile.in | 5 +- qse/lib/awkmod/mod-mysql.c | 2 +- qse/lib/cmn/Makefile.in | 2 + qse/lib/cry/Makefile.in | 2 + qse/lib/dhcp/Makefile.in | 2 + qse/lib/http/Makefile.in | 2 + qse/lib/rad/Makefile.in | 2 + qse/lib/sed/Makefile.in | 2 + qse/lib/si/Makefile.in | 2 + qse/lib/sttp/Makefile.in | 2 + qse/lib/xli/Makefile.in | 2 + qse/m4/ax_lib_mysql.m4 | 104 +++-- qse/m4/ax_pthread.m4 | 436 ++++++++++++++------ qse/regress/Makefile.in | 2 + qse/regress/awk/Makefile.in | 2 + qse/regress/sed/Makefile.in | 2 + qse/samples/Makefile.in | 2 + qse/samples/awk/Makefile.in | 43 +- qse/samples/cmn/Makefile.in | 2 + qse/samples/cry/Makefile.in | 2 + qse/samples/dhcp/Makefile.in | 2 + qse/samples/http/Makefile.in | 2 + qse/samples/rad/Makefile.in | 2 + qse/samples/sed/Makefile.in | 13 +- qse/samples/si/Makefile.in | 2 + qse/samples/xli/Makefile.in | 9 +- qse/tools/Makefile.in | 2 + 52 files changed, 1059 insertions(+), 343 deletions(-) diff --git a/qse/Makefile.in b/qse/Makefile.in index bddee473..f4677c91 100644 --- a/qse/Makefile.in +++ b/qse/Makefile.in @@ -270,6 +270,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -366,6 +367,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/cmd/Makefile.in b/qse/cmd/Makefile.in index ed6da5cc..b463a29c 100644 --- a/qse/cmd/Makefile.in +++ b/qse/cmd/Makefile.in @@ -245,6 +245,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -341,6 +342,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/cmd/awk/Makefile.am b/qse/cmd/awk/Makefile.am index 543f194c..08a8aeba 100644 --- a/qse/cmd/awk/Makefile.am +++ b/qse/cmd/awk/Makefile.am @@ -18,9 +18,9 @@ endif bin_PROGRAMS = qseawk qseawk_SOURCES = awk.c -qseawk_CFLAGS = $(PTHREAD_CFLAGS) +qseawk_CFLAGS = $(CFLAGS) qseawk_LDFLAGS = -L../../lib/awk -L../../lib/si -L../../lib/cmn -qseawk_LDADD = -lqseawk -lqsesi -lqsecmn $(LIBM) $(PTHREAD_LIBS) +qseawk_LDADD = -lqseawk -lqsesi -lqsecmn $(LIBM) qseawk_DEPENDENCIES = ../../lib/awk/libqseawk.la ../../lib/si/libqsesi.la ../../lib/cmn/libqsecmn.la if ENABLE_LIBLTDL diff --git a/qse/cmd/awk/Makefile.in b/qse/cmd/awk/Makefile.in index 16070e54..a9c78538 100644 --- a/qse/cmd/awk/Makefile.in +++ b/qse/cmd/awk/Makefile.in @@ -252,6 +252,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -348,6 +349,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -360,10 +362,10 @@ AUTOMAKE_OPTIONS = nostdinc AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include \ $(LTDLINCL) $(am__append_1) $(am__append_2) qseawk_SOURCES = awk.c -qseawk_CFLAGS = $(PTHREAD_CFLAGS) +qseawk_CFLAGS = $(CFLAGS) qseawk_LDFLAGS = -L../../lib/awk -L../../lib/si -L../../lib/cmn -qseawk_LDADD = -lqseawk -lqsesi -lqsecmn $(LIBM) $(PTHREAD_LIBS) \ - $(am__append_3) $(am__append_4) $(am__append_5) +qseawk_LDADD = -lqseawk -lqsesi -lqsecmn $(LIBM) $(am__append_3) \ + $(am__append_4) $(am__append_5) qseawk_DEPENDENCIES = ../../lib/awk/libqseawk.la ../../lib/si/libqsesi.la ../../lib/cmn/libqsecmn.la all: all-am diff --git a/qse/cmd/http/Makefile.in b/qse/cmd/http/Makefile.in index b03b6563..beeee9f8 100644 --- a/qse/cmd/http/Makefile.in +++ b/qse/cmd/http/Makefile.in @@ -278,6 +278,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -374,6 +375,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/cmd/sed/Makefile.in b/qse/cmd/sed/Makefile.in index aee7a8f1..78ab0be7 100644 --- a/qse/cmd/sed/Makefile.in +++ b/qse/cmd/sed/Makefile.in @@ -243,6 +243,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -339,6 +340,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/cmd/xli/Makefile.in b/qse/cmd/xli/Makefile.in index e3f31e8d..746b6e40 100644 --- a/qse/cmd/xli/Makefile.in +++ b/qse/cmd/xli/Makefile.in @@ -243,6 +243,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -339,6 +340,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/configure b/qse/configure index 55e03fc7..1f917bb0 100755 --- a/qse/configure +++ b/qse/configure @@ -679,6 +679,7 @@ PACKAGE_VERSION_PATCH PACKAGE_VERSION_MINOR PACKAGE_VERSION_MAJOR QUADMATH_LIBS +MYSQL_LIBS MYSQL_LDFLAGS MYSQL_CFLAGS MYSQL_VERSION @@ -806,6 +807,7 @@ infodir docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -849,7 +851,7 @@ enable_xcmgrs enable_syscall enable_debug enable_cxx -enable_reentrant +enable_pthread_flags enable_awk_intmax enable_awk_fltmax enable_sed_tracer @@ -872,8 +874,7 @@ CXXFLAGS CCC LT_SYS_LIBRARY_PATH CPP -CXXCPP -MYSQL_CONFIG' +CXXCPP' # Initialize some variables set by options. @@ -912,6 +913,7 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1164,6 +1166,15 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1301,7 +1312,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1454,6 +1465,7 @@ Fine tuning of the installation directories: --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1519,7 +1531,7 @@ Optional Features: --enable-debug build the library in the debug mode (default. no) --enable-cxx build the library for C++ if a C++ compiler is available (default. yes) - --enable-reentrant add thread options (default. no) + --enable-pthread-flags add thread options (default. yes) --enable-awk-intmax use qse_intmax_t for integers in AWK (default. no) --enable-awk-fltmax use qse_fltmax_t for floating-point numbers in AWK (default. no) @@ -1542,7 +1554,7 @@ Optional Packages: --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-sysroot[=DIR] Search for dependent libraries within DIR (or the compiler's sysroot if not specified). - --with-mysql=[ARG] use MySQL client library [default=yes], optionally + --with-mysql[=ARG] use MySQL client library [default=no], optionally specify path to mysql_config Some influential environment variables: @@ -1559,8 +1571,6 @@ Some influential environment variables: User-defined run-time library search path. CPP C preprocessor CXXCPP C++ preprocessor - MYSQL_CONFIG - Full path to mysql_config program Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -19447,6 +19457,8 @@ fi + MYSQL_CONFIG="no" + # Check whether --with-mysql was given. if test "${with_mysql+set}" = set; then : @@ -19461,21 +19473,20 @@ if test "${with_mysql+set}" = set; then : fi else - want_mysql="yes" + want_mysql="no" fi - MYSQL_CFLAGS="" MYSQL_LDFLAGS="" + MYSQL_LIBS="" MYSQL_VERSION="" if test "$want_mysql" = "yes"; then - if test -z "$MYSQL_CONFIG" ; then - for ac_prog in mysql_config mysql_config5 + for ac_prog in mysql_config mariadb_config do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -19519,16 +19530,133 @@ fi test -n "$MYSQL_CONFIG" && break done -test -n "$MYSQL_CONFIG" || MYSQL_CONFIG="no" - fi - if test "$MYSQL_CONFIG" != "no"; then + if test -x "$MYSQL_CONFIG"; then MYSQL_CFLAGS="`$MYSQL_CONFIG --cflags`" - MYSQL_LDFLAGS="`$MYSQL_CONFIG --libs`" + _full_libmysql_libs="`$MYSQL_CONFIG --libs`" + + _save_mysql_ldflags="${LDFLAGS}" + _save_mysql_cflags="${CFLAGS}" + LDFLAGS="${LDFLAGS} ${_full_libmysql_libs}" + CFLAGS="${CFLAGS} ${MYSQL_CFLAGS}" + + for i in $_full_libmysql_libs; do + case $i in + -lmysqlclient|-lperconaserverclient|-lmariadbclient|-lmariadb) + + _lib_name="`echo "$i" | cut -b3-`" + as_ac_Lib=`$as_echo "ac_cv_lib_$_lib_name''_main" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l$_lib_name" >&5 +$as_echo_n "checking for main in -l$_lib_name... " >&6; } +if eval \${$as_ac_Lib+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-l$_lib_name $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +int +main () +{ +return main (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_ac_Lib=yes" +else + eval "$as_ac_Lib=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +eval ac_res=\$$as_ac_Lib + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then : + + MYSQL_LIBS="-l${_lib_name} ${MYSQL_LIBS}" + +else + + as_fn_error $? "Not found $_lib_name library" "$LINENO" 5 + +fi + + ;; + -L*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} $i" + ;; + -R*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} -Wl,$i" + ;; + -l*) + + _lib_name="`echo "$i" | cut -b3-`" + as_ac_Lib=`$as_echo "ac_cv_lib_$_lib_name''_main" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l$_lib_name" >&5 +$as_echo_n "checking for main in -l$_lib_name... " >&6; } +if eval \${$as_ac_Lib+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-l$_lib_name $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +int +main () +{ +return main (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_ac_Lib=yes" +else + eval "$as_ac_Lib=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +eval ac_res=\$$as_ac_Lib + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then : + + MYSQL_LIBS="${MYSQL_LIBS} ${i}" + +else + + as_fn_error $? "Not found $i library" "$LINENO" 5 + +fi + + ;; + esac + done + + LDFLAGS="${_save_mysql_ldflags}" + CFLAGS="${_save_mysql_cflags}" + unset _save_mysql_ldflags + unset _save_mysql_cflags MYSQL_VERSION=`$MYSQL_CONFIG --version` + +$as_echo "#define HAVE_MYSQL 1" >>confdefs.h + + found_mysql="yes" else found_mysql="no" @@ -19536,7 +19664,6 @@ test -n "$MYSQL_CONFIG" || MYSQL_CONFIG="no" fi - mysql_version_req= if test "$found_mysql" = "yes" -a -n "$mysql_version_req"; then @@ -19576,11 +19703,6 @@ $as_echo "no" >&6; } fi fi - if test "$found_mysql" = "yes" ; then - -$as_echo "#define HAVE_MYSQL 1" >>confdefs.h - - fi @@ -23130,6 +23252,8 @@ fi + + ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -23139,19 +23263,23 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu ax_pthread_ok=no # We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on True64 or Sequent). +# requires special compiler flags (e.g. on Tru64 or Sequent). # It gets checked for in the link test anyway. # First of all, check if the user has set any of the PTHREAD_LIBS, # etcetera environment variables, and if threads linking works using # them: -if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then - save_CFLAGS="$CFLAGS" +if test "x$PTHREAD_CFLAGS$PTHREAD_LIBS" != "x"; then + ax_pthread_save_CC="$CC" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + if test "x$PTHREAD_CC" != "x"; then : + CC="$PTHREAD_CC" +fi CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5 -$as_echo_n "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS" >&5 +$as_echo_n "checking for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -23177,12 +23305,13 @@ rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 $as_echo "$ax_pthread_ok" >&6; } - if test x"$ax_pthread_ok" = xno; then + if test "x$ax_pthread_ok" = "xno"; then PTHREAD_LIBS="" PTHREAD_CFLAGS="" fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CC="$ax_pthread_save_CC" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" fi # We must check for the threads library under a number of different @@ -23190,12 +23319,14 @@ fi # (e.g. DEC) have both -lpthread and -lpthreads, where one of the # libraries is broken (non-POSIX). -# Create a list of thread flags to try. Items starting with a "-" are -# C compiler flags, and other items are library names, except for "none" -# which indicates that we try without any flags at all, and "pthread-config" -# which is a program returning the flags for the Pth emulation library. +# Create a list of thread flags to try. Items with a "," contain both +# C compiler flags (before ",") and linker flags (after ","). Other items +# starting with a "-" are C compiler flags, and remaining items are +# library names, except for "none" which indicates that we try without +# any flags at all, and "pthread-config" which is a program returning +# the flags for the Pth emulation library. -ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" +ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: @@ -23204,51 +23335,172 @@ ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mt # none: in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) -# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) -# -pthreads: Solaris/gcc -# -mthreads: Mingw32/gcc, Lynx/gcc +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads), Tru64 +# (Note: HP C rejects this with "bad form for `-t' option") +# -pthreads: Solaris/gcc (Note: HP C also rejects) # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads too; -# also defines -D_REENTRANT) -# ... -mt is also the pthreads flag for HP/aCC +# doesn't hurt to check since this sometimes defines pthreads and +# -D_REENTRANT too), HP C (must be checked before -lpthread, which +# is present but should not be used directly; and before -mthreads, +# because the compiler interprets this as "-mt" + "-hreads") +# -mthreads: Mingw32/gcc, Lynx/gcc # pthread: Linux, etcetera # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) -case "${host_cpu}-${host_os}" in - *solaris*) +case $host_os in + + freebsd*) + + # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) + # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) + + ax_pthread_flags="-kthread lthread $ax_pthread_flags" + ;; + + hpux*) + + # From the cc(1) man page: "[-mt] Sets various -D flags to enable + # multi-threading and also sets -lpthread." + + ax_pthread_flags="-mt -pthread pthread $ax_pthread_flags" + ;; + + openedition*) + + # IBM z/OS requires a feature-test macro to be defined in order to + # enable POSIX threads at all, so give the user a hint if this is + # not set. (We don't define these ourselves, as they can affect + # other portions of the system API in unpredictable ways.) + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +# if !defined(_OPEN_THREADS) && !defined(_UNIX03_THREADS) + AX_PTHREAD_ZOS_MISSING +# endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "AX_PTHREAD_ZOS_MISSING" >/dev/null 2>&1; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support." >&5 +$as_echo "$as_me: WARNING: IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support." >&2;} +fi +rm -f conftest* + + ;; + + solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (We need to link with -pthreads/-mt/ - # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather - # a function called by this macro, so we could check for that, but - # who knows whether they'll stub that too in a future libc.) So, - # we'll just look for -pthreads and -lpthread first: + # tests will erroneously succeed. (N.B.: The stubs are missing + # pthread_cleanup_push, or rather a function called by this macro, + # so we could check for that, but who knows whether they'll stub + # that too in a future libc.) So we'll check first for the + # standard Solaris way of linking pthreads (-mt -lpthread). - ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" - ;; - - *-darwin*) - ax_pthread_flags="-pthread $ax_pthread_flags" + ax_pthread_flags="-mt,-lpthread pthread $ax_pthread_flags" ;; esac -if test x"$ax_pthread_ok" = xno; then -for flag in $ax_pthread_flags; do +# Are we compiling with Clang? - case $flag in +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC is Clang" >&5 +$as_echo_n "checking whether $CC is Clang... " >&6; } +if ${ax_cv_PTHREAD_CLANG+:} false; then : + $as_echo_n "(cached) " >&6 +else + ax_cv_PTHREAD_CLANG=no + # Note that Autoconf sets GCC=yes for Clang as well as GCC + if test "x$GCC" = "xyes"; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ +# if defined(__clang__) && defined(__llvm__) + AX_PTHREAD_CC_IS_CLANG +# endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "AX_PTHREAD_CC_IS_CLANG" >/dev/null 2>&1; then : + ax_cv_PTHREAD_CLANG=yes +fi +rm -f conftest* + + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_CLANG" >&5 +$as_echo "$ax_cv_PTHREAD_CLANG" >&6; } +ax_pthread_clang="$ax_cv_PTHREAD_CLANG" + + +# GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) + +# Note that for GCC and Clang -pthread generally implies -lpthread, +# except when -nostdlib is passed. +# This is problematic using libtool to build C++ shared libraries with pthread: +# [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 +# [2] https://bugzilla.redhat.com/show_bug.cgi?id=661333 +# [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=468555 +# To solve this, first try -pthread together with -lpthread for GCC + +if test "x$GCC" = "xyes"; then : + ax_pthread_flags="-pthread,-lpthread -pthread -pthreads $ax_pthread_flags" +fi + +# Clang takes -pthread (never supported any other flag), but we'll try with -lpthread first + +if test "x$ax_pthread_clang" = "xyes"; then : + ax_pthread_flags="-pthread,-lpthread -pthread" +fi + + +# The presence of a feature test macro requesting re-entrant function +# definitions is, on some systems, a strong hint that pthreads support is +# correctly enabled + +case $host_os in + darwin* | hpux* | linux* | osf* | solaris*) + ax_pthread_check_macro="_REENTRANT" + ;; + + aix*) + ax_pthread_check_macro="_THREAD_SAFE" + ;; + + *) + ax_pthread_check_macro="--" + ;; +esac +if test "x$ax_pthread_check_macro" = "x--"; then : + ax_pthread_check_cond=0 +else + ax_pthread_check_cond="!defined($ax_pthread_check_macro)" +fi + + +if test "x$ax_pthread_ok" = "xno"; then +for ax_pthread_try_flag in $ax_pthread_flags; do + + case $ax_pthread_try_flag in none) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5 $as_echo_n "checking whether pthreads work without any flags... " >&6; } ;; + *,*) + PTHREAD_CFLAGS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\1/"` + PTHREAD_LIBS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\2/"` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with \"$PTHREAD_CFLAGS\" and \"$PTHREAD_LIBS\"" >&5 +$as_echo_n "checking whether pthreads work with \"$PTHREAD_CFLAGS\" and \"$PTHREAD_LIBS\"... " >&6; } + ;; + -*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5 -$as_echo_n "checking whether pthreads work with $flag... " >&6; } - PTHREAD_CFLAGS="$flag" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $ax_pthread_try_flag" >&5 +$as_echo_n "checking whether pthreads work with $ax_pthread_try_flag... " >&6; } + PTHREAD_CFLAGS="$ax_pthread_try_flag" ;; pthread-config) @@ -23290,22 +23542,24 @@ $as_echo "no" >&6; } fi - if test x"$ax_pthread_config" = xno; then continue; fi + if test "x$ax_pthread_config" = "xno"; then : + continue +fi PTHREAD_CFLAGS="`pthread-config --cflags`" PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" ;; *) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5 -$as_echo_n "checking for the pthreads library -l$flag... " >&6; } - PTHREAD_LIBS="-l$flag" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$ax_pthread_try_flag" >&5 +$as_echo_n "checking for the pthreads library -l$ax_pthread_try_flag... " >&6; } + PTHREAD_LIBS="-l$ax_pthread_try_flag" ;; esac - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Check for various functions. We must include pthread.h, # since some functions may be macros. (On the Sequent, we @@ -23316,10 +23570,20 @@ $as_echo_n "checking for the pthreads library -l$flag... " >&6; } # pthread_cleanup_push because it is one of the few pthread # functions on Solaris that doesn't have a non-functional libc stub. # We try pthread_create on general principles. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include - static void routine(void *a) { a = 0; } +# if $ax_pthread_check_cond +# error "$ax_pthread_check_macro must be defined" +# endif + static void *some_global = NULL; + static void routine(void *a) + { + /* To avoid any unused-parameter or + unused-but-set-parameter warning. */ + some_global = a; + } static void *start_routine(void *a) { return a; } int main () @@ -23340,93 +23604,200 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 $as_echo "$ax_pthread_ok" >&6; } - if test "x$ax_pthread_ok" = xyes; then - break; - fi + if test "x$ax_pthread_ok" = "xyes"; then : + break +fi PTHREAD_LIBS="" PTHREAD_CFLAGS="" done fi + +# Clang needs special handling, because older versions handle the -pthread +# option in a rather... idiosyncratic way + +if test "x$ax_pthread_clang" = "xyes"; then + + # Clang takes -pthread; it has never supported any other flag + + # (Note 1: This will need to be revisited if a system that Clang + # supports has POSIX threads in a separate library. This tends not + # to be the way of modern systems, but it's conceivable.) + + # (Note 2: On some systems, notably Darwin, -pthread is not needed + # to get POSIX threads support; the API is always present and + # active. We could reasonably leave PTHREAD_CFLAGS empty. But + # -pthread does define _REENTRANT, and while the Darwin headers + # ignore this macro, third-party headers might not.) + + # However, older versions of Clang make a point of warning the user + # that, in an invocation where only linking and no compilation is + # taking place, the -pthread option has no effect ("argument unused + # during compilation"). They expect -pthread to be passed in only + # when source code is being compiled. + # + # Problem is, this is at odds with the way Automake and most other + # C build frameworks function, which is that the same flags used in + # compilation (CFLAGS) are also used in linking. Many systems + # supported by AX_PTHREAD require exactly this for POSIX threads + # support, and in fact it is often not straightforward to specify a + # flag that is used only in the compilation phase and not in + # linking. Such a scenario is extremely rare in practice. + # + # Even though use of the -pthread flag in linking would only print + # a warning, this can be a nuisance for well-run software projects + # that build with -Werror. So if the active version of Clang has + # this misfeature, we search for an option to squash it. + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Clang needs flag to prevent \"argument unused\" warning when linking with -pthread" >&5 +$as_echo_n "checking whether Clang needs flag to prevent \"argument unused\" warning when linking with -pthread... " >&6; } +if ${ax_cv_PTHREAD_CLANG_NO_WARN_FLAG+:} false; then : + $as_echo_n "(cached) " >&6 +else + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG=unknown + # Create an alternate version of $ac_link that compiles and + # links in two steps (.c -> .o, .o -> exe) instead of one + # (.c -> exe), because the warning occurs only in the second + # step + ax_pthread_save_ac_link="$ac_link" + ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' + ax_pthread_link_step=`$as_echo "$ac_link" | sed "$ax_pthread_sed"` + ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" + ax_pthread_save_CFLAGS="$CFLAGS" + for ax_pthread_try in '' -Qunused-arguments -Wno-unused-command-line-argument unknown; do + if test "x$ax_pthread_try" = "xunknown"; then : + break +fi + CFLAGS="-Werror -Wunknown-warning-option $ax_pthread_try -pthread $ax_pthread_save_CFLAGS" + ac_link="$ax_pthread_save_ac_link" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int main(void){return 0;} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_link="$ax_pthread_2step_ac_link" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int main(void){return 0;} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + break +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + done + ac_link="$ax_pthread_save_ac_link" + CFLAGS="$ax_pthread_save_CFLAGS" + if test "x$ax_pthread_try" = "x"; then : + ax_pthread_try=no +fi + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG="$ax_pthread_try" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" >&5 +$as_echo "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" >&6; } + + case "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" in + no | unknown) ;; + *) PTHREAD_CFLAGS="$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG $PTHREAD_CFLAGS" ;; + esac + +fi # $ax_pthread_clang = yes + + + # Various other checks: -if test "x$ax_pthread_ok" = xyes; then - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - save_CFLAGS="$CFLAGS" +if test "x$ax_pthread_ok" = "xyes"; then + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5 $as_echo_n "checking for joinable pthread attribute... " >&6; } - attr_name=unknown - for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +if ${ax_cv_PTHREAD_JOINABLE_ATTR+:} false; then : + $as_echo_n "(cached) " >&6 +else + ax_cv_PTHREAD_JOINABLE_ATTR=unknown + for ax_pthread_attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { -int attr = $attr; return attr /* ; */ +int attr = $ax_pthread_attr; return attr /* ; */ ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - attr_name=$attr; break + ax_cv_PTHREAD_JOINABLE_ATTR=$ax_pthread_attr; break fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - done - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5 -$as_echo "$attr_name" >&6; } - if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then + done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_JOINABLE_ATTR" >&5 +$as_echo "$ax_cv_PTHREAD_JOINABLE_ATTR" >&6; } + if test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xunknown" && \ + test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xPTHREAD_CREATE_JOINABLE" && \ + test "x$ax_pthread_joinable_attr_defined" != "xyes"; then : cat >>confdefs.h <<_ACEOF -#define PTHREAD_CREATE_JOINABLE $attr_name +#define PTHREAD_CREATE_JOINABLE $ax_cv_PTHREAD_JOINABLE_ATTR _ACEOF - fi + ax_pthread_joinable_attr_defined=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5 -$as_echo_n "checking if more special flags are required for pthreads... " >&6; } - flag=no - case "${host_cpu}-${host_os}" in - *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; - *-osf* | *-hpux*) flag="-D_REENTRANT";; - *solaris*) - if test "$GCC" = "yes"; then - flag="-D_REENTRANT" - else - flag="-mt -D_REENTRANT" - fi - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5 -$as_echo "${flag}" >&6; } - if test "x$flag" != xno; then - PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" - fi +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether more special flags are required for pthreads" >&5 +$as_echo_n "checking whether more special flags are required for pthreads... " >&6; } +if ${ax_cv_PTHREAD_SPECIAL_FLAGS+:} false; then : + $as_echo_n "(cached) " >&6 +else + ax_cv_PTHREAD_SPECIAL_FLAGS=no + case $host_os in + solaris*) + ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" + ;; + esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_SPECIAL_FLAGS" >&5 +$as_echo "$ax_cv_PTHREAD_SPECIAL_FLAGS" >&6; } + if test "x$ax_cv_PTHREAD_SPECIAL_FLAGS" != "xno" && \ + test "x$ax_pthread_special_flags_added" != "xyes"; then : + PTHREAD_CFLAGS="$ax_cv_PTHREAD_SPECIAL_FLAGS $PTHREAD_CFLAGS" + ax_pthread_special_flags_added=yes +fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5 $as_echo_n "checking for PTHREAD_PRIO_INHERIT... " >&6; } if ${ax_cv_PTHREAD_PRIO_INHERIT+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - - #include +#include int main () { int i = PTHREAD_PRIO_INHERIT; + return i; ; return 0; } @@ -23442,18 +23813,32 @@ rm -f core conftest.err conftest.$ac_objext \ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5 $as_echo "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; } - if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"; then : + if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes" && \ + test "x$ax_pthread_prio_inherit_defined" != "xyes"; then : $as_echo "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h + ax_pthread_prio_inherit_defined=yes + fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" - # More AIX lossage: must compile with xlc_r or cc_r - if test x"$GCC" != xyes; then - for ac_prog in xlc_r cc_r + # More AIX lossage: compile with *_r variant + if test "x$GCC" != "xyes"; then + case $host_os in + aix*) + case "x/$CC" in #( + x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) : + #handle absolute path differently from PATH based program lookup + case "x$CC" in #( + x/*) : + if as_fn_executable_p ${CC}_r; then : + PTHREAD_CC="${CC}_r" +fi ;; #( + *) : + for ac_prog in ${CC}_r do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -23494,21 +23879,25 @@ fi test -n "$PTHREAD_CC" && break done -test -n "$PTHREAD_CC" || PTHREAD_CC="${CC}" - - else - PTHREAD_CC=$CC +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + ;; +esac ;; #( + *) : + ;; +esac + ;; + esac fi -else - PTHREAD_CC="$CC" fi +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test x"$ax_pthread_ok" = xyes; then +if test "x$ax_pthread_ok" = "xyes"; then $as_echo "#define HAVE_PTHREAD 1" >>confdefs.h @@ -23524,18 +23913,13 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -# Check whether --enable-reentrant was given. -if test "${enable_reentrant+set}" = set; then : - enableval=$enable_reentrant; enable_reentrant_is=$enableval +# Check whether --enable-pthread-flags was given. +if test "${enable_pthread_flags+set}" = set; then : + enableval=$enable_pthread_flags; enable_pthread_flags_is=$enableval else - enable_reentrant_is=no + enable_pthread_flags_is=yes fi -if test "$enable_reentrant_is" = "yes" -then - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" -fi # Check whether --enable-awk-intmax was given. if test "${enable_awk_intmax+set}" = set; then : @@ -23639,6 +24023,10 @@ else fi +if test "x${found_mysql}" != "xyes" +then + enable_awkmod_mysql_is="no" +fi if test "x${enable_awkmod_mysql_is}" = "xyes"; then ENABLE_AWKMOD_MYSQL_TRUE= ENABLE_AWKMOD_MYSQL_FALSE='#' @@ -23688,6 +24076,13 @@ fi +if test "$enable_pthread_flags_is" = "yes" +then + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" + LIBS="$LIBS $PTHREAD_LIBS" +fi + QSE_SIZEOF_WCHAR_T=$ac_cv_sizeof_wchar_t QSE_SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long diff --git a/qse/configure.ac b/qse/configure.ac index f00cf5b4..1c7a06c2 100644 --- a/qse/configure.ac +++ b/qse/configure.ac @@ -317,7 +317,7 @@ AC_SUBST(UCI_LIBS) AM_CONDITIONAL(HAVE_LIBUCI, test "x${ac_cv_lib_uci_uci_alloc_context}" = "xyes" -a "x${ac_cv_header_uci_h}" = "xyes") dnl libmysqlclient -AX_LIB_MYSQL() +AX_LIB_MYSQL AC_STRUCT_DIRENT_D_TYPE AC_CHECK_MEMBERS([DIR.d_fd, DIR.dd_fd],,,[[#include ]]) @@ -891,13 +891,11 @@ test "${ax_cv_cxx_have_std_namespace}" = "yes" || enable_cxx_is="no" AM_CONDITIONAL(ENABLE_CXX, test "${enable_cxx_is}" = "yes" ) AX_PTHREAD() -AC_ARG_ENABLE([reentrant], [AS_HELP_STRING([--enable-reentrant],[add thread options (default. no)])], - enable_reentrant_is=$enableval,enable_reentrant_is=no) -if test "$enable_reentrant_is" = "yes" -then - [CFLAGS="$CFLAGS $PTHREAD_CFLAGS"] - [CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"] -fi +AC_ARG_ENABLE([pthread-flags], [AS_HELP_STRING([--enable-pthread-flags],[add thread options (default. yes)])], + enable_pthread_flags_is=$enableval,enable_pthread_flags_is=yes) +dnl actual actions depending on this option is at the end of this script +dnl becuase it changes CFLAGS, CXXFLAGS, LIBS and i don't want that to change +dnl while the configure script runs various tests. AC_ARG_ENABLE([awk-intmax], [AS_HELP_STRING([--enable-awk-intmax],[use qse_intmax_t for integers in AWK (default. no)])], @@ -964,10 +962,10 @@ AC_ARG_ENABLE([awkmod-mysql], enable_awkmod_mysql_is=$enableval, enable_awkmod_mysql_is=yes ) -dnl if test "x${have_C_mysql}" != "xyes" -dnl then -dnl enable_awkmod_mysql_is="no" -dnl fi +if test "x${found_mysql}" != "xyes" +then + enable_awkmod_mysql_is="no" +fi AM_CONDITIONAL(ENABLE_AWKMOD_MYSQL, test "x${enable_awkmod_mysql_is}" = "xyes") @@ -992,6 +990,15 @@ fi AM_CONDITIONAL(ENABLE_AWKMOD_UCI, test "x${enable_awkmod_uci_is}" = "xyes") +dnl ==== include pthread options to the default flags ==== +if test "$enable_pthread_flags_is" = "yes" +then + [CFLAGS="$CFLAGS $PTHREAD_CFLAGS"] + [CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"] + [LIBS="$LIBS $PTHREAD_LIBS"] +fi + +dnl ==== subsititution of some key items ==== AC_SUBST(QSE_SIZEOF_WCHAR_T, $ac_cv_sizeof_wchar_t) AC_SUBST(QSE_SIZEOF_LONG_LONG, $ac_cv_sizeof_long_long) AC_SUBST(QSE_SIZEOF_LONG, $ac_cv_sizeof_long) diff --git a/qse/doc/Makefile.in b/qse/doc/Makefile.in index 414b81d9..5515a922 100644 --- a/qse/doc/Makefile.in +++ b/qse/doc/Makefile.in @@ -188,6 +188,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -284,6 +285,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/Makefile.in b/qse/include/Makefile.in index 6fb3c26e..6d19696b 100644 --- a/qse/include/Makefile.in +++ b/qse/include/Makefile.in @@ -246,6 +246,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -342,6 +343,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/Makefile.in b/qse/include/qse/Makefile.in index b7cdbfbd..76270c80 100644 --- a/qse/include/qse/Makefile.in +++ b/qse/include/qse/Makefile.in @@ -286,6 +286,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -382,6 +383,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/awk/Makefile.in b/qse/include/qse/awk/Makefile.in index b129cc10..b45f6235 100644 --- a/qse/include/qse/awk/Makefile.in +++ b/qse/include/qse/awk/Makefile.in @@ -237,6 +237,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -333,6 +334,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/cmn/Makefile.in b/qse/include/qse/cmn/Makefile.in index fdd0c141..5f6dd370 100644 --- a/qse/include/qse/cmn/Makefile.in +++ b/qse/include/qse/cmn/Makefile.in @@ -268,6 +268,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -364,6 +365,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/cry/Makefile.in b/qse/include/qse/cry/Makefile.in index 36f29e2e..00d851b4 100644 --- a/qse/include/qse/cry/Makefile.in +++ b/qse/include/qse/cry/Makefile.in @@ -235,6 +235,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -331,6 +332,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/dhcp/Makefile.in b/qse/include/qse/dhcp/Makefile.in index 2f43e1ef..67193807 100644 --- a/qse/include/qse/dhcp/Makefile.in +++ b/qse/include/qse/dhcp/Makefile.in @@ -235,6 +235,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -331,6 +332,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/http/Makefile.in b/qse/include/qse/http/Makefile.in index 60d96964..dd9d9563 100644 --- a/qse/include/qse/http/Makefile.in +++ b/qse/include/qse/http/Makefile.in @@ -235,6 +235,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -331,6 +332,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/rad/Makefile.in b/qse/include/qse/rad/Makefile.in index ddc947a2..9a3d5d82 100644 --- a/qse/include/qse/rad/Makefile.in +++ b/qse/include/qse/rad/Makefile.in @@ -235,6 +235,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -331,6 +332,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/sed/Makefile.in b/qse/include/qse/sed/Makefile.in index e61729b7..69b43409 100644 --- a/qse/include/qse/sed/Makefile.in +++ b/qse/include/qse/sed/Makefile.in @@ -237,6 +237,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -333,6 +334,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/si/Makefile.in b/qse/include/qse/si/Makefile.in index be2a4d9e..266d37b8 100644 --- a/qse/include/qse/si/Makefile.in +++ b/qse/include/qse/si/Makefile.in @@ -251,6 +251,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -347,6 +348,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/sttp/Makefile.in b/qse/include/qse/sttp/Makefile.in index c8f1c074..01440c43 100644 --- a/qse/include/qse/sttp/Makefile.in +++ b/qse/include/qse/sttp/Makefile.in @@ -237,6 +237,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -333,6 +334,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/include/qse/xli/Makefile.in b/qse/include/qse/xli/Makefile.in index fb44ebc3..2e32ebad 100644 --- a/qse/include/qse/xli/Makefile.in +++ b/qse/include/qse/xli/Makefile.in @@ -237,6 +237,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -333,6 +334,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/Makefile.in b/qse/lib/Makefile.in index f17a09fe..f2e8b022 100644 --- a/qse/lib/Makefile.in +++ b/qse/lib/Makefile.in @@ -280,6 +280,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -376,6 +377,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/awk/Makefile.in b/qse/lib/awk/Makefile.in index befd9af8..03a400f3 100644 --- a/qse/lib/awk/Makefile.in +++ b/qse/lib/awk/Makefile.in @@ -398,6 +398,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -494,6 +495,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/awkmod/Makefile.am b/qse/lib/awkmod/Makefile.am index aad02b5d..2ee1ad6d 100644 --- a/qse/lib/awkmod/Makefile.am +++ b/qse/lib/awkmod/Makefile.am @@ -83,7 +83,7 @@ if ENABLE_AWKMOD_MYSQL libqseawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h libqseawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) libqseawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON) $(MYSQL_LDFLAGS) -libqseawk_mysql_la_LIBADD = $(LIBADD_COMMON) +libqseawk_mysql_la_LIBADD = $(LIBADD_COMMON) $(MYSQL_LIBS) endif if ENABLE_AWKMOD_SED diff --git a/qse/lib/awkmod/Makefile.in b/qse/lib/awkmod/Makefile.in index 93c91280..d3750589 100644 --- a/qse/lib/awkmod/Makefile.in +++ b/qse/lib/awkmod/Makefile.in @@ -161,6 +161,7 @@ libqseawk_mpi_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ @ENABLE_AWKMOD_MPI_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) @ENABLE_AWKMOD_MPI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libqseawk_mpi_la_rpath = @ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_DEPENDENCIES = \ +@ENABLE_AWKMOD_MYSQL_TRUE@ $(am__DEPENDENCIES_1) \ @ENABLE_AWKMOD_MYSQL_TRUE@ $(am__DEPENDENCIES_1) am__libqseawk_mysql_la_SOURCES_DIST = mod-mysql.c mod-mysql.h @ENABLE_AWKMOD_MYSQL_TRUE@am_libqseawk_mysql_la_OBJECTS = \ @@ -332,6 +333,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -428,6 +430,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -481,7 +484,7 @@ CPPFLAGS_COMMON = \ @ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h @ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) @ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON) $(MYSQL_LDFLAGS) -@ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_LIBADD = $(LIBADD_COMMON) +@ENABLE_AWKMOD_MYSQL_TRUE@libqseawk_mysql_la_LIBADD = $(LIBADD_COMMON) $(MYSQL_LIBS) @ENABLE_AWKMOD_SED_TRUE@libqseawk_sed_la_SOURCES = mod-sed.c mod-sed.h @ENABLE_AWKMOD_SED_TRUE@libqseawk_sed_la_CPPFLAGS = $(CPPFLAGS_COMMON) @ENABLE_AWKMOD_SED_TRUE@libqseawk_sed_la_LDFLAGS = -L../sed $(LDFLAGS_COMMON) diff --git a/qse/lib/awkmod/mod-mysql.c b/qse/lib/awkmod/mod-mysql.c index 27e0170b..c1dfee76 100644 --- a/qse/lib/awkmod/mod-mysql.c +++ b/qse/lib/awkmod/mod-mysql.c @@ -25,7 +25,7 @@ */ #include "mod-mysql.h" -#include +#include #include "../cmn/mem-prv.h" #include #include diff --git a/qse/lib/cmn/Makefile.in b/qse/lib/cmn/Makefile.in index 94ae6f8c..62a305c3 100644 --- a/qse/lib/cmn/Makefile.in +++ b/qse/lib/cmn/Makefile.in @@ -376,6 +376,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -472,6 +473,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/cry/Makefile.in b/qse/lib/cry/Makefile.in index f4c3d088..0b63c704 100644 --- a/qse/lib/cry/Makefile.in +++ b/qse/lib/cry/Makefile.in @@ -273,6 +273,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -369,6 +370,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/dhcp/Makefile.in b/qse/lib/dhcp/Makefile.in index 11b555b8..390a4c57 100644 --- a/qse/lib/dhcp/Makefile.in +++ b/qse/lib/dhcp/Makefile.in @@ -268,6 +268,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -364,6 +365,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/http/Makefile.in b/qse/lib/http/Makefile.in index 1512d59b..6305c270 100644 --- a/qse/lib/http/Makefile.in +++ b/qse/lib/http/Makefile.in @@ -290,6 +290,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -386,6 +387,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/rad/Makefile.in b/qse/lib/rad/Makefile.in index 579d0b6d..7bddcf57 100644 --- a/qse/lib/rad/Makefile.in +++ b/qse/lib/rad/Makefile.in @@ -268,6 +268,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -364,6 +365,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/sed/Makefile.in b/qse/lib/sed/Makefile.in index f3afab09..819dc46e 100644 --- a/qse/lib/sed/Makefile.in +++ b/qse/lib/sed/Makefile.in @@ -291,6 +291,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -387,6 +388,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/si/Makefile.in b/qse/lib/si/Makefile.in index 632e22e8..e8ae308f 100644 --- a/qse/lib/si/Makefile.in +++ b/qse/lib/si/Makefile.in @@ -348,6 +348,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -444,6 +445,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/sttp/Makefile.in b/qse/lib/sttp/Makefile.in index 03564e96..b392773e 100644 --- a/qse/lib/sttp/Makefile.in +++ b/qse/lib/sttp/Makefile.in @@ -267,6 +267,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -363,6 +364,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/lib/xli/Makefile.in b/qse/lib/xli/Makefile.in index a2e77735..6365c82c 100644 --- a/qse/lib/xli/Makefile.in +++ b/qse/lib/xli/Makefile.in @@ -296,6 +296,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -392,6 +393,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/m4/ax_lib_mysql.m4 b/qse/m4/ax_lib_mysql.m4 index 2ae2a9ef..6d8de6a0 100644 --- a/qse/m4/ax_lib_mysql.m4 +++ b/qse/m4/ax_lib_mysql.m4 @@ -1,6 +1,4 @@ -# =========================================================================== -# https://www.gnu.org/software/autoconf-archive/ax_lib_mysql.html -# =========================================================================== +##### http://autoconf-archive.cryp.to/ax_lib_mysql.html # # SYNOPSIS # @@ -8,18 +6,19 @@ # # DESCRIPTION # -# This macro provides tests of availability of MySQL client library of -# particular version or newer. +# This macro provides tests of availability of MySQL client library +# of particular version or newer. # -# AX_LIB_MYSQL macro takes only one argument which is optional. If there -# is no required version passed, then macro does not run version test. +# AX_LIB_MYSQL macro takes only one argument which is optional. If +# there is no required version passed, then macro does not run +# version test. # # The --with-mysql option takes one of three possible values: # # no - do not check for MySQL client library # -# yes - do check for MySQL library in standard locations (mysql_config -# should be in the PATH) +# yes - do check for MySQL library in standard locations +# (mysql_config should be in the PATH) # # path - complete path to mysql_config utility, use this option if # mysql_config can't be found in the PATH @@ -28,28 +27,32 @@ # # AC_SUBST(MYSQL_CFLAGS) # AC_SUBST(MYSQL_LDFLAGS) +# AC_SUBST(MYSQL_LIBS) # AC_SUBST(MYSQL_VERSION) # # And sets: # # HAVE_MYSQL # -# LICENSE +# LAST MODIFICATION # -# Copyright (c) 2008 Mateusz Loskot +# 2006-07-16 # -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 13 +# COPYLEFT +# +# Copyright (c) 2006 Mateusz Loskot +# +# Copying and distribution of this file, with or without +# modification, are permitted in any medium without royalty provided +# the copyright notice and this notice are preserved. AC_DEFUN([AX_LIB_MYSQL], [ + MYSQL_CONFIG="no" + AC_ARG_WITH([mysql], - AS_HELP_STRING([--with-mysql=@<:@ARG@:>@], - [use MySQL client library @<:@default=yes@:>@, optionally specify path to mysql_config] + AC_HELP_STRING([--with-mysql@<:@=ARG@:>@], + [use MySQL client library @<:@default=no@:>@, optionally specify path to mysql_config] ), [ if test "$withval" = "no"; then @@ -61,12 +64,12 @@ AC_DEFUN([AX_LIB_MYSQL], MYSQL_CONFIG="$withval" fi ], - [want_mysql="yes"] + [want_mysql="no"] ) - AC_ARG_VAR([MYSQL_CONFIG], [Full path to mysql_config program]) MYSQL_CFLAGS="" MYSQL_LDFLAGS="" + MYSQL_LIBS="" MYSQL_VERSION="" dnl @@ -75,15 +78,57 @@ AC_DEFUN([AX_LIB_MYSQL], if test "$want_mysql" = "yes"; then - if test -z "$MYSQL_CONFIG" ; then - AC_PATH_PROGS([MYSQL_CONFIG], [mysql_config mysql_config5], [no]) - fi + AC_PATH_PROGS(MYSQL_CONFIG, mysql_config mariadb_config) - if test "$MYSQL_CONFIG" != "no"; then + if test -x "$MYSQL_CONFIG"; then MYSQL_CFLAGS="`$MYSQL_CONFIG --cflags`" - MYSQL_LDFLAGS="`$MYSQL_CONFIG --libs`" + _full_libmysql_libs="`$MYSQL_CONFIG --libs`" + _save_mysql_ldflags="${LDFLAGS}" + _save_mysql_cflags="${CFLAGS}" + LDFLAGS="${LDFLAGS} ${_full_libmysql_libs}" + CFLAGS="${CFLAGS} ${MYSQL_CFLAGS}" + + for i in $_full_libmysql_libs; do + case $i in + -lmysqlclient|-lperconaserverclient|-lmariadbclient|-lmariadb) + + _lib_name="`echo "$i" | cut -b3-`" + AC_CHECK_LIB($_lib_name, main, [ + MYSQL_LIBS="-l${_lib_name} ${MYSQL_LIBS}" + ],[ + AC_MSG_ERROR([Not found $_lib_name library]) + ]) + ;; + -L*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} $i" + ;; + -R*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} -Wl,$i" + ;; + -l*) + + _lib_name="`echo "$i" | cut -b3-`" + AC_CHECK_LIB($_lib_name, main, [ + MYSQL_LIBS="${MYSQL_LIBS} ${i}" + ],[ + AC_MSG_ERROR([Not found $i library]) + ]) + ;; + esac + done + + LDFLAGS="${_save_mysql_ldflags}" + CFLAGS="${_save_mysql_cflags}" + unset _save_mysql_ldflags + unset _save_mysql_cflags + MYSQL_VERSION=`$MYSQL_CONFIG --version` + + AC_DEFINE([HAVE_MYSQL], [1], + [Define to 1 if MySQL libraries are available]) found_mysql="yes" else @@ -95,7 +140,6 @@ AC_DEFUN([AX_LIB_MYSQL], dnl Check if required version of MySQL is available dnl - mysql_version_req=ifelse([$1], [], [], [$1]) if test "$found_mysql" = "yes" -a -n "$mysql_version_req"; then @@ -136,12 +180,8 @@ AC_DEFUN([AX_LIB_MYSQL], fi fi - if test "$found_mysql" = "yes" ; then - AC_DEFINE([HAVE_MYSQL], [1], - [Define to 1 if MySQL libraries are available]) - fi - AC_SUBST([MYSQL_VERSION]) AC_SUBST([MYSQL_CFLAGS]) AC_SUBST([MYSQL_LDFLAGS]) + AC_SUBST([MYSQL_LIBS]) ]) diff --git a/qse/m4/ax_pthread.m4 b/qse/m4/ax_pthread.m4 index e20a388c..1598d077 100644 --- a/qse/m4/ax_pthread.m4 +++ b/qse/m4/ax_pthread.m4 @@ -1,5 +1,5 @@ # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_pthread.html +# https://www.gnu.org/software/autoconf-archive/ax_pthread.html # =========================================================================== # # SYNOPSIS @@ -19,10 +19,10 @@ # is necessary on AIX to use the special cc_r compiler alias.) # # NOTE: You are assumed to not only compile your program with these flags, -# but also link it with them as well. e.g. you should link with +# but also to link with them as well. For example, you might link with # $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS # -# If you are only building threads programs, you may wish to use these +# If you are only building threaded programs, you may wish to use these # variables in your default LIBS, CFLAGS, and CC: # # LIBS="$PTHREAD_LIBS $LIBS" @@ -30,8 +30,8 @@ # CC="$PTHREAD_CC" # # In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant -# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name -# (e.g. PTHREAD_CREATE_UNDETACHED on AIX). +# has a nonstandard name, this macro defines PTHREAD_CREATE_JOINABLE to +# that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX). # # Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the # PTHREAD_PRIO_INHERIT symbol is defined when compiling with @@ -55,6 +55,7 @@ # # Copyright (c) 2008 Steven G. Johnson # Copyright (c) 2011 Daniel Richard G. +# Copyright (c) 2019 Marc Stevens # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the @@ -67,7 +68,7 @@ # Public License for more details. # # You should have received a copy of the GNU General Public License along -# with this program. If not, see . +# with this program. If not, see . # # As a special exception, the respective Autoconf Macro's copyright owner # gives unlimited permission to copy, distribute and modify the configure @@ -82,35 +83,40 @@ # modified version of the Autoconf Macro, you may extend this special # exception to the GPL to apply to your modified version as well. -#serial 17 +#serial 27 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) AC_DEFUN([AX_PTHREAD], [ AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_SED]) AC_LANG_PUSH([C]) ax_pthread_ok=no # We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on True64 or Sequent). +# requires special compiler flags (e.g. on Tru64 or Sequent). # It gets checked for in the link test anyway. # First of all, check if the user has set any of the PTHREAD_LIBS, # etcetera environment variables, and if threads linking works using # them: -if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then - save_CFLAGS="$CFLAGS" +if test "x$PTHREAD_CFLAGS$PTHREAD_LIBS" != "x"; then + ax_pthread_save_CC="$CC" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + AS_IF([test "x$PTHREAD_CC" != "x"], [CC="$PTHREAD_CC"]) CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" - AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS]) - AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes) - AC_MSG_RESULT($ax_pthread_ok) - if test x"$ax_pthread_ok" = xno; then + AC_MSG_CHECKING([for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS]) + AC_LINK_IFELSE([AC_LANG_CALL([], [pthread_join])], [ax_pthread_ok=yes]) + AC_MSG_RESULT([$ax_pthread_ok]) + if test "x$ax_pthread_ok" = "xno"; then PTHREAD_LIBS="" PTHREAD_CFLAGS="" fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CC="$ax_pthread_save_CC" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" fi # We must check for the threads library under a number of different @@ -118,12 +124,14 @@ fi # (e.g. DEC) have both -lpthread and -lpthreads, where one of the # libraries is broken (non-POSIX). -# Create a list of thread flags to try. Items starting with a "-" are -# C compiler flags, and other items are library names, except for "none" -# which indicates that we try without any flags at all, and "pthread-config" -# which is a program returning the flags for the Pth emulation library. +# Create a list of thread flags to try. Items with a "," contain both +# C compiler flags (before ",") and linker flags (after ","). Other items +# starting with a "-" are C compiler flags, and remaining items are +# library names, except for "none" which indicates that we try without +# any flags at all, and "pthread-config" which is a program returning +# the flags for the Pth emulation library. -ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" +ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: @@ -132,68 +140,163 @@ ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mt # none: in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) -# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) -# -pthreads: Solaris/gcc -# -mthreads: Mingw32/gcc, Lynx/gcc +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads), Tru64 +# (Note: HP C rejects this with "bad form for `-t' option") +# -pthreads: Solaris/gcc (Note: HP C also rejects) # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads too; -# also defines -D_REENTRANT) -# ... -mt is also the pthreads flag for HP/aCC +# doesn't hurt to check since this sometimes defines pthreads and +# -D_REENTRANT too), HP C (must be checked before -lpthread, which +# is present but should not be used directly; and before -mthreads, +# because the compiler interprets this as "-mt" + "-hreads") +# -mthreads: Mingw32/gcc, Lynx/gcc # pthread: Linux, etcetera # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) -case "${host_cpu}-${host_os}" in - *solaris*) +case $host_os in + + freebsd*) + + # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) + # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) + + ax_pthread_flags="-kthread lthread $ax_pthread_flags" + ;; + + hpux*) + + # From the cc(1) man page: "[-mt] Sets various -D flags to enable + # multi-threading and also sets -lpthread." + + ax_pthread_flags="-mt -pthread pthread $ax_pthread_flags" + ;; + + openedition*) + + # IBM z/OS requires a feature-test macro to be defined in order to + # enable POSIX threads at all, so give the user a hint if this is + # not set. (We don't define these ourselves, as they can affect + # other portions of the system API in unpredictable ways.) + + AC_EGREP_CPP([AX_PTHREAD_ZOS_MISSING], + [ +# if !defined(_OPEN_THREADS) && !defined(_UNIX03_THREADS) + AX_PTHREAD_ZOS_MISSING +# endif + ], + [AC_MSG_WARN([IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support.])]) + ;; + + solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (We need to link with -pthreads/-mt/ - # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather - # a function called by this macro, so we could check for that, but - # who knows whether they'll stub that too in a future libc.) So, - # we'll just look for -pthreads and -lpthread first: + # tests will erroneously succeed. (N.B.: The stubs are missing + # pthread_cleanup_push, or rather a function called by this macro, + # so we could check for that, but who knows whether they'll stub + # that too in a future libc.) So we'll check first for the + # standard Solaris way of linking pthreads (-mt -lpthread). - ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" - ;; - - *-darwin*) - ax_pthread_flags="-pthread $ax_pthread_flags" + ax_pthread_flags="-mt,-lpthread pthread $ax_pthread_flags" ;; esac -if test x"$ax_pthread_ok" = xno; then -for flag in $ax_pthread_flags; do +# Are we compiling with Clang? - case $flag in +AC_CACHE_CHECK([whether $CC is Clang], + [ax_cv_PTHREAD_CLANG], + [ax_cv_PTHREAD_CLANG=no + # Note that Autoconf sets GCC=yes for Clang as well as GCC + if test "x$GCC" = "xyes"; then + AC_EGREP_CPP([AX_PTHREAD_CC_IS_CLANG], + [/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ +# if defined(__clang__) && defined(__llvm__) + AX_PTHREAD_CC_IS_CLANG +# endif + ], + [ax_cv_PTHREAD_CLANG=yes]) + fi + ]) +ax_pthread_clang="$ax_cv_PTHREAD_CLANG" + + +# GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) + +# Note that for GCC and Clang -pthread generally implies -lpthread, +# except when -nostdlib is passed. +# This is problematic using libtool to build C++ shared libraries with pthread: +# [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 +# [2] https://bugzilla.redhat.com/show_bug.cgi?id=661333 +# [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=468555 +# To solve this, first try -pthread together with -lpthread for GCC + +AS_IF([test "x$GCC" = "xyes"], + [ax_pthread_flags="-pthread,-lpthread -pthread -pthreads $ax_pthread_flags"]) + +# Clang takes -pthread (never supported any other flag), but we'll try with -lpthread first + +AS_IF([test "x$ax_pthread_clang" = "xyes"], + [ax_pthread_flags="-pthread,-lpthread -pthread"]) + + +# The presence of a feature test macro requesting re-entrant function +# definitions is, on some systems, a strong hint that pthreads support is +# correctly enabled + +case $host_os in + darwin* | hpux* | linux* | osf* | solaris*) + ax_pthread_check_macro="_REENTRANT" + ;; + + aix*) + ax_pthread_check_macro="_THREAD_SAFE" + ;; + + *) + ax_pthread_check_macro="--" + ;; +esac +AS_IF([test "x$ax_pthread_check_macro" = "x--"], + [ax_pthread_check_cond=0], + [ax_pthread_check_cond="!defined($ax_pthread_check_macro)"]) + + +if test "x$ax_pthread_ok" = "xno"; then +for ax_pthread_try_flag in $ax_pthread_flags; do + + case $ax_pthread_try_flag in none) AC_MSG_CHECKING([whether pthreads work without any flags]) ;; + *,*) + PTHREAD_CFLAGS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\1/"` + PTHREAD_LIBS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\2/"` + AC_MSG_CHECKING([whether pthreads work with "$PTHREAD_CFLAGS" and "$PTHREAD_LIBS"]) + ;; + -*) - AC_MSG_CHECKING([whether pthreads work with $flag]) - PTHREAD_CFLAGS="$flag" + AC_MSG_CHECKING([whether pthreads work with $ax_pthread_try_flag]) + PTHREAD_CFLAGS="$ax_pthread_try_flag" ;; pthread-config) - AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no) - if test x"$ax_pthread_config" = xno; then continue; fi + AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no]) + AS_IF([test "x$ax_pthread_config" = "xno"], [continue]) PTHREAD_CFLAGS="`pthread-config --cflags`" PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" ;; *) - AC_MSG_CHECKING([for the pthreads library -l$flag]) - PTHREAD_LIBS="-l$flag" + AC_MSG_CHECKING([for the pthreads library -l$ax_pthread_try_flag]) + PTHREAD_LIBS="-l$ax_pthread_try_flag" ;; esac - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Check for various functions. We must include pthread.h, # since some functions may be macros. (On the Sequent, we @@ -204,8 +307,18 @@ for flag in $ax_pthread_flags; do # pthread_cleanup_push because it is one of the few pthread # functions on Solaris that doesn't have a non-functional libc stub. # We try pthread_create on general principles. + AC_LINK_IFELSE([AC_LANG_PROGRAM([#include - static void routine(void *a) { a = 0; } +# if $ax_pthread_check_cond +# error "$ax_pthread_check_macro must be defined" +# endif + static void *some_global = NULL; + static void routine(void *a) + { + /* To avoid any unused-parameter or + unused-but-set-parameter warning. */ + some_global = a; + } static void *start_routine(void *a) { return a; }], [pthread_t th; pthread_attr_t attr; pthread_create(&th, 0, start_routine, 0); @@ -213,93 +326,178 @@ for flag in $ax_pthread_flags; do pthread_attr_init(&attr); pthread_cleanup_push(routine, 0); pthread_cleanup_pop(0) /* ; */])], - [ax_pthread_ok=yes], - []) + [ax_pthread_ok=yes], + []) - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" - AC_MSG_RESULT($ax_pthread_ok) - if test "x$ax_pthread_ok" = xyes; then - break; - fi + AC_MSG_RESULT([$ax_pthread_ok]) + AS_IF([test "x$ax_pthread_ok" = "xyes"], [break]) PTHREAD_LIBS="" PTHREAD_CFLAGS="" done fi + +# Clang needs special handling, because older versions handle the -pthread +# option in a rather... idiosyncratic way + +if test "x$ax_pthread_clang" = "xyes"; then + + # Clang takes -pthread; it has never supported any other flag + + # (Note 1: This will need to be revisited if a system that Clang + # supports has POSIX threads in a separate library. This tends not + # to be the way of modern systems, but it's conceivable.) + + # (Note 2: On some systems, notably Darwin, -pthread is not needed + # to get POSIX threads support; the API is always present and + # active. We could reasonably leave PTHREAD_CFLAGS empty. But + # -pthread does define _REENTRANT, and while the Darwin headers + # ignore this macro, third-party headers might not.) + + # However, older versions of Clang make a point of warning the user + # that, in an invocation where only linking and no compilation is + # taking place, the -pthread option has no effect ("argument unused + # during compilation"). They expect -pthread to be passed in only + # when source code is being compiled. + # + # Problem is, this is at odds with the way Automake and most other + # C build frameworks function, which is that the same flags used in + # compilation (CFLAGS) are also used in linking. Many systems + # supported by AX_PTHREAD require exactly this for POSIX threads + # support, and in fact it is often not straightforward to specify a + # flag that is used only in the compilation phase and not in + # linking. Such a scenario is extremely rare in practice. + # + # Even though use of the -pthread flag in linking would only print + # a warning, this can be a nuisance for well-run software projects + # that build with -Werror. So if the active version of Clang has + # this misfeature, we search for an option to squash it. + + AC_CACHE_CHECK([whether Clang needs flag to prevent "argument unused" warning when linking with -pthread], + [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG], + [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG=unknown + # Create an alternate version of $ac_link that compiles and + # links in two steps (.c -> .o, .o -> exe) instead of one + # (.c -> exe), because the warning occurs only in the second + # step + ax_pthread_save_ac_link="$ac_link" + ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' + ax_pthread_link_step=`$as_echo "$ac_link" | sed "$ax_pthread_sed"` + ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" + ax_pthread_save_CFLAGS="$CFLAGS" + for ax_pthread_try in '' -Qunused-arguments -Wno-unused-command-line-argument unknown; do + AS_IF([test "x$ax_pthread_try" = "xunknown"], [break]) + CFLAGS="-Werror -Wunknown-warning-option $ax_pthread_try -pthread $ax_pthread_save_CFLAGS" + ac_link="$ax_pthread_save_ac_link" + AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], + [ac_link="$ax_pthread_2step_ac_link" + AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], + [break]) + ]) + done + ac_link="$ax_pthread_save_ac_link" + CFLAGS="$ax_pthread_save_CFLAGS" + AS_IF([test "x$ax_pthread_try" = "x"], [ax_pthread_try=no]) + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG="$ax_pthread_try" + ]) + + case "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" in + no | unknown) ;; + *) PTHREAD_CFLAGS="$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG $PTHREAD_CFLAGS" ;; + esac + +fi # $ax_pthread_clang = yes + + + # Various other checks: -if test "x$ax_pthread_ok" = xyes; then - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - save_CFLAGS="$CFLAGS" +if test "x$ax_pthread_ok" = "xyes"; then + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. - AC_MSG_CHECKING([for joinable pthread attribute]) - attr_name=unknown - for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ], - [int attr = $attr; return attr /* ; */])], - [attr_name=$attr; break], - []) - done - AC_MSG_RESULT($attr_name) - if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then - AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name, - [Define to necessary symbol if this constant - uses a non-standard name on your system.]) - fi + AC_CACHE_CHECK([for joinable pthread attribute], + [ax_cv_PTHREAD_JOINABLE_ATTR], + [ax_cv_PTHREAD_JOINABLE_ATTR=unknown + for ax_pthread_attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ], + [int attr = $ax_pthread_attr; return attr /* ; */])], + [ax_cv_PTHREAD_JOINABLE_ATTR=$ax_pthread_attr; break], + []) + done + ]) + AS_IF([test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xunknown" && \ + test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xPTHREAD_CREATE_JOINABLE" && \ + test "x$ax_pthread_joinable_attr_defined" != "xyes"], + [AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], + [$ax_cv_PTHREAD_JOINABLE_ATTR], + [Define to necessary symbol if this constant + uses a non-standard name on your system.]) + ax_pthread_joinable_attr_defined=yes + ]) - AC_MSG_CHECKING([if more special flags are required for pthreads]) - flag=no - case "${host_cpu}-${host_os}" in - *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; - *-osf* | *-hpux*) flag="-D_REENTRANT";; - *solaris*) - if test "$GCC" = "yes"; then - flag="-D_REENTRANT" - else - flag="-mt -D_REENTRANT" - fi - ;; - esac - AC_MSG_RESULT(${flag}) - if test "x$flag" != xno; then - PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" - fi + AC_CACHE_CHECK([whether more special flags are required for pthreads], + [ax_cv_PTHREAD_SPECIAL_FLAGS], + [ax_cv_PTHREAD_SPECIAL_FLAGS=no + case $host_os in + solaris*) + ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" + ;; + esac + ]) + AS_IF([test "x$ax_cv_PTHREAD_SPECIAL_FLAGS" != "xno" && \ + test "x$ax_pthread_special_flags_added" != "xyes"], + [PTHREAD_CFLAGS="$ax_cv_PTHREAD_SPECIAL_FLAGS $PTHREAD_CFLAGS" + ax_pthread_special_flags_added=yes]) AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT], - ax_cv_PTHREAD_PRIO_INHERIT, [ - AC_LINK_IFELSE([ - AC_LANG_PROGRAM([[#include ]], [[int i = PTHREAD_PRIO_INHERIT;]])], - [ax_cv_PTHREAD_PRIO_INHERIT=yes], - [ax_cv_PTHREAD_PRIO_INHERIT=no]) + [ax_cv_PTHREAD_PRIO_INHERIT], + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], + [[int i = PTHREAD_PRIO_INHERIT; + return i;]])], + [ax_cv_PTHREAD_PRIO_INHERIT=yes], + [ax_cv_PTHREAD_PRIO_INHERIT=no]) ]) - AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"], - AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])) + AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes" && \ + test "x$ax_pthread_prio_inherit_defined" != "xyes"], + [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.]) + ax_pthread_prio_inherit_defined=yes + ]) - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" - # More AIX lossage: must compile with xlc_r or cc_r - if test x"$GCC" != xyes; then - AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC}) - else - PTHREAD_CC=$CC + # More AIX lossage: compile with *_r variant + if test "x$GCC" != "xyes"; then + case $host_os in + aix*) + AS_CASE(["x/$CC"], + [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6], + [#handle absolute path differently from PATH based program lookup + AS_CASE(["x$CC"], + [x/*], + [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])], + [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])]) + ;; + esac fi -else - PTHREAD_CC="$CC" fi -AC_SUBST(PTHREAD_LIBS) -AC_SUBST(PTHREAD_CFLAGS) -AC_SUBST(PTHREAD_CC) +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + +AC_SUBST([PTHREAD_LIBS]) +AC_SUBST([PTHREAD_CFLAGS]) +AC_SUBST([PTHREAD_CC]) # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test x"$ax_pthread_ok" = xyes; then - ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1]) +if test "x$ax_pthread_ok" = "xyes"; then + ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1]) : else ax_pthread_ok=no diff --git a/qse/regress/Makefile.in b/qse/regress/Makefile.in index be8e40e5..214d90f1 100644 --- a/qse/regress/Makefile.in +++ b/qse/regress/Makefile.in @@ -246,6 +246,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -342,6 +343,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/regress/awk/Makefile.in b/qse/regress/awk/Makefile.in index dfe7bd73..13b82ea5 100644 --- a/qse/regress/awk/Makefile.in +++ b/qse/regress/awk/Makefile.in @@ -188,6 +188,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -284,6 +285,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/regress/sed/Makefile.in b/qse/regress/sed/Makefile.in index b63b16f5..4cb5525b 100644 --- a/qse/regress/sed/Makefile.in +++ b/qse/regress/sed/Makefile.in @@ -190,6 +190,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -286,6 +287,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/Makefile.in b/qse/samples/Makefile.in index 78d04b93..912d3b97 100644 --- a/qse/samples/Makefile.in +++ b/qse/samples/Makefile.in @@ -246,6 +246,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -342,6 +343,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/awk/Makefile.in b/qse/samples/awk/Makefile.in index df96d617..b9c3ac9d 100644 --- a/qse/samples/awk/Makefile.in +++ b/qse/samples/awk/Makefile.in @@ -177,44 +177,43 @@ awk15_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk21_SOURCES_DIST = awk21.cpp @ENABLE_CXX_TRUE@am_awk21_OBJECTS = awk21.$(OBJEXT) awk21_OBJECTS = $(am_awk21_OBJECTS) -am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) -@ENABLE_CXX_TRUE@awk21_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk21_LDADD = $(LDADD) +awk21_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk22_SOURCES_DIST = awk22.cpp @ENABLE_CXX_TRUE@am_awk22_OBJECTS = awk22.$(OBJEXT) awk22_OBJECTS = $(am_awk22_OBJECTS) -@ENABLE_CXX_TRUE@awk22_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk22_LDADD = $(LDADD) +awk22_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk23_SOURCES_DIST = awk23.cpp @ENABLE_CXX_TRUE@am_awk23_OBJECTS = awk23.$(OBJEXT) awk23_OBJECTS = $(am_awk23_OBJECTS) -@ENABLE_CXX_TRUE@awk23_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk23_LDADD = $(LDADD) +awk23_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk24_SOURCES_DIST = awk24.cpp @ENABLE_CXX_TRUE@am_awk24_OBJECTS = awk24.$(OBJEXT) awk24_OBJECTS = $(am_awk24_OBJECTS) -@ENABLE_CXX_TRUE@awk24_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk24_LDADD = $(LDADD) +awk24_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk25_SOURCES_DIST = awk25.cpp @ENABLE_CXX_TRUE@am_awk25_OBJECTS = awk25.$(OBJEXT) awk25_OBJECTS = $(am_awk25_OBJECTS) -@ENABLE_CXX_TRUE@awk25_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk25_LDADD = $(LDADD) +awk25_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk26_SOURCES_DIST = awk26.cpp @ENABLE_CXX_TRUE@am_awk26_OBJECTS = awk26.$(OBJEXT) awk26_OBJECTS = $(am_awk26_OBJECTS) -@ENABLE_CXX_TRUE@awk26_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk26_LDADD = $(LDADD) +awk26_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk27_SOURCES_DIST = awk27.cpp @ENABLE_CXX_TRUE@am_awk27_OBJECTS = awk27.$(OBJEXT) awk27_OBJECTS = $(am_awk27_OBJECTS) -@ENABLE_CXX_TRUE@awk27_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk27_LDADD = $(LDADD) +awk27_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) am__awk28_SOURCES_DIST = awk28.cpp @ENABLE_CXX_TRUE@am_awk28_OBJECTS = awk28.$(OBJEXT) awk28_OBJECTS = $(am_awk28_OBJECTS) -@ENABLE_CXX_TRUE@awk28_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +awk28_LDADD = $(LDADD) +awk28_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -378,6 +377,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -474,6 +474,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -513,14 +514,6 @@ awk15_SOURCES = awk15.c $(CMNFILES) @ENABLE_CXX_TRUE@awk26_SOURCES = awk26.cpp @ENABLE_CXX_TRUE@awk27_SOURCES = awk27.cpp @ENABLE_CXX_TRUE@awk28_SOURCES = awk28.cpp -@ENABLE_CXX_TRUE@awk21_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk22_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk23_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk24_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk25_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk26_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk27_LDADD = $(CXXLIB) $(LDADD) -@ENABLE_CXX_TRUE@awk28_LDADD = $(CXXLIB) $(LDADD) all: all-am .SUFFIXES: diff --git a/qse/samples/cmn/Makefile.in b/qse/samples/cmn/Makefile.in index 489c4679..e950d0c8 100644 --- a/qse/samples/cmn/Makefile.in +++ b/qse/samples/cmn/Makefile.in @@ -506,6 +506,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -602,6 +603,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/cry/Makefile.in b/qse/samples/cry/Makefile.in index 4548ed02..f61af99f 100644 --- a/qse/samples/cry/Makefile.in +++ b/qse/samples/cry/Makefile.in @@ -248,6 +248,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -344,6 +345,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/dhcp/Makefile.in b/qse/samples/dhcp/Makefile.in index 58aa5008..ee450d4f 100644 --- a/qse/samples/dhcp/Makefile.in +++ b/qse/samples/dhcp/Makefile.in @@ -242,6 +242,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -338,6 +339,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/http/Makefile.in b/qse/samples/http/Makefile.in index 52646237..a0c3686e 100644 --- a/qse/samples/http/Makefile.in +++ b/qse/samples/http/Makefile.in @@ -243,6 +243,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -339,6 +340,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/rad/Makefile.in b/qse/samples/rad/Makefile.in index 5edea847..1d555839 100644 --- a/qse/samples/rad/Makefile.in +++ b/qse/samples/rad/Makefile.in @@ -242,6 +242,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -338,6 +339,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/sed/Makefile.in b/qse/samples/sed/Makefile.in index 1a5beb80..ace786a5 100644 --- a/qse/samples/sed/Makefile.in +++ b/qse/samples/sed/Makefile.in @@ -131,13 +131,13 @@ sed03_DEPENDENCIES = $(am__DEPENDENCIES_3) am__sed21_SOURCES_DIST = sed21.cpp sed00.c sed00.h @ENABLE_CXX_TRUE@am_sed21_OBJECTS = sed21.$(OBJEXT) $(am__objects_1) sed21_OBJECTS = $(am_sed21_OBJECTS) -@ENABLE_CXX_TRUE@sed21_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +sed21_LDADD = $(LDADD) +sed21_DEPENDENCIES = $(am__DEPENDENCIES_2) am__sed22_SOURCES_DIST = sed22.cpp sed00.c sed00.h @ENABLE_CXX_TRUE@am_sed22_OBJECTS = sed22.$(OBJEXT) $(am__objects_1) sed22_OBJECTS = $(am_sed22_OBJECTS) -@ENABLE_CXX_TRUE@sed22_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +sed22_LDADD = $(LDADD) +sed22_DEPENDENCIES = $(am__DEPENDENCIES_2) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -284,6 +284,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -380,6 +381,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -403,11 +405,8 @@ sed02_SOURCES = sed02.c $(CMNFILES) sed02_LDADD = $(LDADD) sed03_SOURCES = sed03.c $(CMNFILES) sed03_LDADD = $(LDADD) -@ENABLE_CXX_TRUE@CXXLIB = -lqsesedxx -lqsecmnxx @ENABLE_CXX_TRUE@sed21_SOURCES = sed21.cpp $(CMNFILES) -@ENABLE_CXX_TRUE@sed21_LDADD = $(CXXLIB) $(LDADD) @ENABLE_CXX_TRUE@sed22_SOURCES = sed22.cpp $(CMNFILES) -@ENABLE_CXX_TRUE@sed22_LDADD = $(CXXLIB) $(LDADD) all: all-am .SUFFIXES: diff --git a/qse/samples/si/Makefile.in b/qse/samples/si/Makefile.in index 87687352..20cd3f87 100644 --- a/qse/samples/si/Makefile.in +++ b/qse/samples/si/Makefile.in @@ -397,6 +397,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -493,6 +494,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff --git a/qse/samples/xli/Makefile.in b/qse/samples/xli/Makefile.in index 177b28f7..c803a8ff 100644 --- a/qse/samples/xli/Makefile.in +++ b/qse/samples/xli/Makefile.in @@ -111,11 +111,10 @@ PROGRAMS = $(bin_PROGRAMS) am__skvenv01_SOURCES_DIST = skvenv01.cpp @ENABLE_CXX_TRUE@am_skvenv01_OBJECTS = skvenv01.$(OBJEXT) skvenv01_OBJECTS = $(am_skvenv01_OBJECTS) +skvenv01_LDADD = $(LDADD) am__DEPENDENCIES_1 = @WCHAR_TRUE@@WIN32_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) -am__DEPENDENCIES_3 = $(am__DEPENDENCIES_2) -@ENABLE_CXX_TRUE@skvenv01_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@ENABLE_CXX_TRUE@ $(am__DEPENDENCIES_3) +skvenv01_DEPENDENCIES = $(am__DEPENDENCIES_2) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent @@ -244,6 +243,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -340,6 +340,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -356,9 +357,7 @@ AM_CPPFLAGS = \ AM_LDFLAGS = -L../../lib/cmn -L../../lib/si -L../../lib/xli LDADD = -lqsexli -lqsesi -lqsecmn $(am__append_1) -@ENABLE_CXX_TRUE@CXXLIB = -lqsexlixx -lqsecmnxx @ENABLE_CXX_TRUE@skvenv01_SOURCES = skvenv01.cpp -@ENABLE_CXX_TRUE@skvenv01_LDADD = $(CXXLIB) $(LDADD) all: all-am .SUFFIXES: diff --git a/qse/tools/Makefile.in b/qse/tools/Makefile.in index aef6b9ad..acf990d9 100644 --- a/qse/tools/Makefile.in +++ b/qse/tools/Makefile.in @@ -188,6 +188,7 @@ MPI_CLDFLAGS = @MPI_CLDFLAGS@ MYSQL_CFLAGS = @MYSQL_CFLAGS@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_LDFLAGS = @MYSQL_LDFLAGS@ +MYSQL_LIBS = @MYSQL_LIBS@ MYSQL_VERSION = @MYSQL_VERSION@ NM = @NM@ NMEDIT = @NMEDIT@ @@ -284,6 +285,7 @@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@