diff --git a/Makefile.am b/Makefile.am index 6c4498ba..60baf144 100644 --- a/Makefile.am +++ b/Makefile.am @@ -4,11 +4,12 @@ ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = SUBDIRS = -if ENABLE_STATIC_MODULE -SUBDIRS += tools mod lib bin samples t -else SUBDIRS += tools lib mod bin samples t -endif +#if ENABLE_STATIC_MODULE +#SUBDIRS += tools mod lib bin samples t +#else +#SUBDIRS += tools lib mod bin samples t +#endif DIST_SUBDIRS = $(SUBDIRS) diff --git a/Makefile.in b/Makefile.in index c6de6bec..e52f8394 100644 --- a/Makefile.in +++ b/Makefile.in @@ -89,15 +89,13 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@ENABLE_STATIC_MODULE_TRUE@am__append_1 = tools mod lib bin samples t -@ENABLE_STATIC_MODULE_FALSE@am__append_2 = tools lib mod bin samples t subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ @@ -170,8 +168,8 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/ac/ar-lib \ $(top_srcdir)/ac/ltmain.sh $(top_srcdir)/ac/missing \ $(top_srcdir)/ac/tap-driver.sh $(top_srcdir)/ac/test-driver \ $(top_srcdir)/pkgs/hawk.spec.in README.md ac/ar-lib ac/compile \ - ac/config.guess ac/config.sub ac/depcomp ac/install-sh \ - ac/ltmain.sh ac/missing + ac/config.guess ac/config.sub ac/install-sh ac/ltmain.sh \ + ac/missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -377,7 +375,12 @@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTION = foreign ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = -SUBDIRS = $(am__append_1) $(am__append_2) +SUBDIRS = tools lib mod bin samples t +#if ENABLE_STATIC_MODULE +#SUBDIRS += tools mod lib bin samples t +#else +#SUBDIRS += tools lib mod bin samples t +#endif DIST_SUBDIRS = $(SUBDIRS) all: all-recursive diff --git a/aclocal.m4 b/aclocal.m4 index 0161932c..d16dfa66 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1373,6 +1373,7 @@ m4_include([m4/ax_cxx_namespaces.m4]) m4_include([m4/ax_lib_mysql.m4]) m4_include([m4/ax_numval.m4]) m4_include([m4/ax_pthread.m4]) +m4_include([m4/hawk_mod.m4]) m4_include([m4/hawk_try_cflags.m4]) m4_include([m4/libtool.m4]) m4_include([m4/ltoptions.m4]) diff --git a/bin/Makefile.in b/bin/Makefile.in index c8db8c66..4a4b32e9 100644 --- a/bin/Makefile.in +++ b/bin/Makefile.in @@ -97,7 +97,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ diff --git a/configure b/configure index 48860195..db4189ff 100755 --- a/configure +++ b/configure @@ -658,12 +658,16 @@ LTLIBOBJS LIBOBJS HAWK_PROJECT_URL HAWK_PROJECT_AUTHOR -ENABLE_MOD_MEMC_FALSE -ENABLE_MOD_MEMC_TRUE +ENABLE_MOD_UCI_STATIC_FALSE +ENABLE_MOD_UCI_STATIC_TRUE ENABLE_MOD_UCI_FALSE ENABLE_MOD_UCI_TRUE +ENABLE_MOD_SED_STATIC_FALSE +ENABLE_MOD_SED_STATIC_TRUE ENABLE_MOD_SED_FALSE ENABLE_MOD_SED_TRUE +ENABLE_MOD_MYSQL_STATIC_FALSE +ENABLE_MOD_MYSQL_STATIC_TRUE ENABLE_MOD_MYSQL_FALSE ENABLE_MOD_MYSQL_TRUE MYSQL_LIBS @@ -671,16 +675,20 @@ MYSQL_LDFLAGS MYSQL_CFLAGS MYSQL_VERSION MYSQL_CONFIG +ENABLE_MOD_MEMC_STATIC_FALSE +ENABLE_MOD_MEMC_STATIC_TRUE +ENABLE_MOD_MEMC_FALSE +ENABLE_MOD_MEMC_TRUE +ENABLE_MOD_FFI_STATIC_FALSE +ENABLE_MOD_FFI_STATIC_TRUE ENABLE_MOD_FFI_FALSE ENABLE_MOD_FFI_TRUE +ENABLE_STATIC_MODULE_FALSE +ENABLE_STATIC_MODULE_TRUE ENABLE_LIBUNWIND_FALSE ENABLE_LIBUNWIND_TRUE ENABLE_LIBLTDL_FALSE ENABLE_LIBLTDL_TRUE -ENABLE_STATIC_MODULE_FALSE -ENABLE_STATIC_MODULE_TRUE -ENABLE_DYNAMIC_MODULE_FALSE -ENABLE_DYNAMIC_MODULE_TRUE ENABLE_CXX_FALSE ENABLE_CXX_TRUE BUILD_MODE @@ -861,16 +869,15 @@ enable_debug enable_intmax enable_fltmax enable_cxx -enable_dynamic_module -enable_static_module enable_libltdl enable_libunwind +enable_static_module enable_mod_ffi +enable_mod_memc enable_mod_mysql with_mysql enable_mod_sed enable_mod_uci -enable_mod_memc enable_pthread_flags enable_year2038 ' @@ -1541,18 +1548,20 @@ Optional Features: (default. no) --enable-cxx build the library for C++ if a C++ compiler is available (default. yes) - --enable-dynamic-module enable dynamic module capability(default. yes) - --enable-static-module build modules statically into the main - library(default. no) --enable-libltdl use libltdl(default. no) --enable-libunwind use libunwind(default. no) - --enable-mod-ffi enable mod/ffi. one of auto, yes, no (default. auto) - --enable-mod-mysql enable mod/mysql. one of auto, yes, no (default. - auto) - --enable-mod-sed enable mod/sed. one of yes, no (default. yes) - --enable-mod-uci enable mod/uci. one of auto, yes, no (default. auto) - --enable-mod-memc enable mod/memc. one of auto, yes, no (default. - auto) + --enable-static-module build basic modules statically into the main + library(default. no) + --enable-mod-ffi enable mod/ffi. one of auto, auto:static, yes, + yes:static, no (default. auto) + --enable-mod-memc enable mod/memc. one of auto, auto:static, yes, + yes:static, no (default. auto) + --enable-mod-mysql enable mod/mysql. one of auto, auto:static, yes, + yes:static, no (default. auto) + --enable-mod-sed enable mod/sed. one of auto, auto:static, yes, + yes:static, no (default. yes:static) + --enable-mod-uci enable mod/uci. one of auto, auto:static, yes, + yes:static, no (default. auto) --enable-pthread-flags add thread flags to CFLAGS, CXXFLAGS, LIBS(default. yes) --enable-year2038 support timestamps after 2038 @@ -22776,16 +22785,16 @@ printf "%s\n" "$ac_cv_lib_ffi_ffi_call" >&6; } if test "x$ac_cv_lib_ffi_ffi_call" = xyes then : - FFI_LIBS="-lffi" + FFI_LIBS="-lffi" printf "%s\n" "#define HAVE_FFI_LIB 1" >>confdefs.h - fi + OLDLIBS="$LIBS" LIBS="$FFI_LIBS $LIBS" ac_fn_c_check_func "$LINENO" "ffi_prep_cif_var" "ac_cv_func_ffi_prep_cif_var" @@ -22850,7 +22859,6 @@ then : printf "%s\n" "#define HAVE_UNWIND_LIB 1" >>confdefs.h - fi @@ -23039,6 +23047,7 @@ then fi +## check pthread ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -24091,6 +24100,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu + +## check other pthread functions { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_timedlock in -lpthread" >&5 printf %s "checking for pthread_mutex_timedlock in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_mutex_timedlock+y} @@ -27923,66 +27934,6 @@ else fi -# Check whether --enable-dynamic-module was given. -if test ${enable_dynamic_module+y} -then : - enableval=$enable_dynamic_module; enable_dynamic_module_is=$enableval -else case e in #( - e) enable_dynamic_module_is=yes - ;; -esac -fi - -if test "x${enable_shared}" = "xno" -then - enable_dynamic_module_is="no" -fi - -if test "x${enable_dynamic_module_is}" = "xyes" -then - -printf "%s\n" "#define HAWK_ENABLE_DYNAMIC_MODULE 1" >>confdefs.h - -fi - if test "x${enable_dynamic_module_is}" = "xyes"; then - ENABLE_DYNAMIC_MODULE_TRUE= - ENABLE_DYNAMIC_MODULE_FALSE='#' -else - ENABLE_DYNAMIC_MODULE_TRUE='#' - ENABLE_DYNAMIC_MODULE_FALSE= -fi - - -# Check whether --enable-static-module was given. -if test ${enable_static_module+y} -then : - enableval=$enable_static_module; enable_static_module_is=$enableval -else case e in #( - e) enable_static_module_is=no - ;; -esac -fi - -if test "x${enable_shared}" = "xno" -a "x${enable_static}" = "xyes" -then - enable_static_module_is="yes" -fi - -if test "x${enable_static_module_is}" = "xyes" -then - -printf "%s\n" "#define HAWK_ENABLE_STATIC_MODULE 1" >>confdefs.h - -fi - if test "x${enable_static_module_is}" = "xyes"; then - ENABLE_STATIC_MODULE_TRUE= - ENABLE_STATIC_MODULE_FALSE='#' -else - ENABLE_STATIC_MODULE_TRUE='#' - ENABLE_STATIC_MODULE_FALSE= -fi - - # Check whether --enable-libltdl was given. if test ${enable_libltdl+y} then : @@ -28043,36 +27994,85 @@ else fi +# Check whether --enable-static-module was given. +if test ${enable_static_module+y} +then : + enableval=$enable_static_module; enable_static_module_is=$enableval +else case e in #( + e) enable_static_module_is=no + ;; +esac +fi -# Check whether --enable-mod-ffi was given. +if test "x${enable_shared}" = "xno" -a "x${enable_static}" = "xyes" +then + enable_static_module_is="yes" +fi +if test "x${enable_static_module_is}" = "xyes" +then + +printf "%s\n" "#define HAWK_ENABLE_STATIC_MODULE 1" >>confdefs.h + +fi + if test "x${enable_static_module_is}" = "xyes"; then + ENABLE_STATIC_MODULE_TRUE= + ENABLE_STATIC_MODULE_FALSE='#' +else + ENABLE_STATIC_MODULE_TRUE='#' + ENABLE_STATIC_MODULE_FALSE= +fi + + + + + # Check whether --enable-mod-ffi was given. if test ${enable_mod_ffi+y} then : enableval=$enable_mod_ffi; enable_mod_ffi_is=$enableval else case e in #( e) enable_mod_ffi_is=auto - ;; + ;; esac fi -if test "x${enable_mod_ffi_is}" = "xauto" -then - if test "x${ac_cv_header_ffi_h}" != "xyes" + if test "x${enable_mod_ffi_is}" = "xauto" -o "x${enable_mod_ffi_is}" = "xauto:static" then - enable_mod_ffi_is="no" - elif test "x${ac_cv_lib_ffi_ffi_call}" != "xyes" - then - enable_mod_ffi_is="no" - else - enable_mod_ffi_is="yes" + + test "x${ac_cv_header_ffi_h}" = "xyes" -a "x${ac_cv_lib_ffi_ffi_call}" = "xyes" + + + if test $? -eq 0 + then + enable_mod_ffi_is=`echo "$enable_mod_ffi_is" | sed 's|^auto|yes|g'` + else + enable_mod_ffi_is=no + fi fi -fi -if test "x${enable_mod_ffi_is}" = "xyes" -then + + if test "x${enable_mod_ffi_is}" = "xyes:static" + then + enable_mod_ffi_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_ffi_static_is="yes" + fi + fi + + + + if test "x${enable_mod_ffi_is}" = "xyes" + then printf "%s\n" "#define HAWK_ENABLE_MOD_FFI 1" >>confdefs.h -fi - if test "${enable_mod_ffi_is}" = "yes"; then + fi + if test "x${enable_mod_ffi_static_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_FFI_STATIC 1" >>confdefs.h + + fi + if test "${enable_mod_ffi_is}" = "yes"; then ENABLE_MOD_FFI_TRUE= ENABLE_MOD_FFI_FALSE='#' else @@ -28080,26 +28080,430 @@ else ENABLE_MOD_FFI_FALSE= fi + if test "${enable_mod_ffi_static_is}" = "yes"; then + ENABLE_MOD_FFI_STATIC_TRUE= + ENABLE_MOD_FFI_STATIC_FALSE='#' +else + ENABLE_MOD_FFI_STATIC_TRUE='#' + ENABLE_MOD_FFI_STATIC_FALSE= +fi -# Check whether --enable-mod-mysql was given. + + + + + + # Check whether --enable-mod-memc was given. +if test ${enable_mod_memc+y} +then : + enableval=$enable_mod_memc; enable_mod_memc_is=$enableval +else case e in #( + e) enable_mod_memc_is=auto + ;; +esac +fi + + if test "x${enable_mod_memc_is}" = "xauto" -o "x${enable_mod_memc_is}" = "xauto:static" + then + + test "x${ac_cv_header_libmemcached_memcached_h}" = "xyes" -a "x${ac_cv_lib_memcached_memcached}" = "xyes" + + + if test $? -eq 0 + then + enable_mod_memc_is=`echo "$enable_mod_memc_is" | sed 's|^auto|yes|g'` + else + enable_mod_memc_is=no + fi + fi + + if test "x${enable_mod_memc_is}" = "xyes:static" + then + enable_mod_memc_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_memc_static_is="yes" + fi + fi + + + + if test "x${enable_mod_memc_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_MEMC 1" >>confdefs.h + + fi + if test "x${enable_mod_memc_static_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_MEMC_STATIC 1" >>confdefs.h + + fi + if test "${enable_mod_memc_is}" = "yes"; then + ENABLE_MOD_MEMC_TRUE= + ENABLE_MOD_MEMC_FALSE='#' +else + ENABLE_MOD_MEMC_TRUE='#' + ENABLE_MOD_MEMC_FALSE= +fi + + if test "${enable_mod_memc_static_is}" = "yes"; then + ENABLE_MOD_MEMC_STATIC_TRUE= + ENABLE_MOD_MEMC_STATIC_FALSE='#' +else + ENABLE_MOD_MEMC_STATIC_TRUE='#' + ENABLE_MOD_MEMC_STATIC_FALSE= +fi + + + + + + + # Check whether --enable-mod-mysql was given. if test ${enable_mod_mysql+y} then : enableval=$enable_mod_mysql; enable_mod_mysql_is=$enableval else case e in #( e) enable_mod_mysql_is=auto - ;; + ;; +esac +fi + + if test "x${enable_mod_mysql_is}" = "xauto" -o "x${enable_mod_mysql_is}" = "xauto:static" + then + + ## if --with_mysql not given but the mysql module needs to detect the mysql client library + if test -z "${with_mysql}"; then with_mysql=yes; fi + + MYSQL_CONFIG="no" + + +# Check whether --with-mysql was given. +if test ${with_mysql+y} +then : + withval=$with_mysql; + if test "$withval" = "no"; then + want_mysql="no" + elif test "$withval" = "yes"; then + want_mysql="yes" + else + want_mysql="yes" + MYSQL_CONFIG="$withval" + fi + +else case e in #( + e) want_mysql="no" + ;; esac fi -if test "x${enable_mod_mysql_is}" = "xauto" || test "x${enable_mod_mysql_is}" = "xyes" -then - if test ${with_mysql+y} - then - ## as if --with-mysql is specified for AX_LIB_MYSQL below - with_mysql=yes + MYSQL_CFLAGS="" + MYSQL_LDFLAGS="" + MYSQL_LIBS="" + MYSQL_VERSION="" + + + if test "$want_mysql" = "yes"; then + + 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 +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +printf %s "checking for $ac_word... " >&6; } +if test ${ac_cv_path_MYSQL_CONFIG+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) case $MYSQL_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_MYSQL_CONFIG="$MYSQL_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then + ac_cv_path_MYSQL_CONFIG="$as_dir$ac_word$ac_exec_ext" + printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac ;; +esac +fi +MYSQL_CONFIG=$ac_cv_path_MYSQL_CONFIG +if test -n "$MYSQL_CONFIG"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MYSQL_CONFIG" >&5 +printf "%s\n" "$MYSQL_CONFIG" >&6; } +else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } +fi + + + test -n "$MYSQL_CONFIG" && break +done + + + if test -x "$MYSQL_CONFIG"; then + MYSQL_CFLAGS="`$MYSQL_CONFIG --cflags`" + _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=`printf "%s\n" "ac_cv_lib_$_lib_name""_main" | sed "$as_sed_sh"` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for main in -l$_lib_name" >&5 +printf %s "checking for main in -l$_lib_name... " >&6; } +if eval test \${$as_ac_Lib+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS +LIBS="-l$_lib_name $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +int +main (void) +{ +return main (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + eval "$as_ac_Lib=yes" +else case e in #( + e) eval "$as_ac_Lib=no" ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS ;; +esac +fi +eval ac_res=\$$as_ac_Lib + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Lib"\" = x"yes" +then : + + MYSQL_LIBS="-l${_lib_name} ${MYSQL_LIBS}" + +else case e in #( + e) + as_fn_error $? "Not found $_lib_name library" "$LINENO" 5 + ;; +esac +fi + + ;; + -L*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} $i" + ;; + -R*) + + MYSQL_LDFLAGS="${MYSQL_LDFLAGS} -Wl,$i" + ;; + -l*) + + _lib_name="`echo "$i" | cut -b3-`" + as_ac_Lib=`printf "%s\n" "ac_cv_lib_$_lib_name""_main" | sed "$as_sed_sh"` +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for main in -l$_lib_name" >&5 +printf %s "checking for main in -l$_lib_name... " >&6; } +if eval test \${$as_ac_Lib+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS +LIBS="-l$_lib_name $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +int +main (void) +{ +return main (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + eval "$as_ac_Lib=yes" +else case e in #( + e) eval "$as_ac_Lib=no" ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS ;; +esac +fi +eval ac_res=\$$as_ac_Lib + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Lib"\" = x"yes" +then : + + MYSQL_LIBS="${MYSQL_LIBS} ${i}" + +else case e in #( + e) + as_fn_error $? "Not found $i library" "$LINENO" 5 + ;; +esac +fi + + ;; + esac + done + + LDFLAGS="${_save_mysql_ldflags}" + CFLAGS="${_save_mysql_cflags}" + unset _save_mysql_ldflags + unset _save_mysql_cflags + + MYSQL_VERSION=`$MYSQL_CONFIG --version` + + +printf "%s\n" "#define HAVE_MYSQL 1" >>confdefs.h + + + found_mysql="yes" + else + found_mysql="no" + fi + fi + + + mysql_version_req= + + if test "$found_mysql" = "yes" -a -n "$mysql_version_req"; then + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if MySQL version is >= $mysql_version_req" >&5 +printf %s "checking if MySQL version is >= $mysql_version_req... " >&6; } + + mysql_version_req_major=`expr $mysql_version_req : '\([0-9]*\)'` + mysql_version_req_minor=`expr $mysql_version_req : '[0-9]*\.\([0-9]*\)'` + mysql_version_req_micro=`expr $mysql_version_req : '[0-9]*\.[0-9]*\.\([0-9]*\)'` + if test "x$mysql_version_req_micro" = "x"; then + mysql_version_req_micro="0" + fi + + mysql_version_req_number=`expr $mysql_version_req_major \* 1000000 \ + \+ $mysql_version_req_minor \* 1000 \ + \+ $mysql_version_req_micro` + + mysql_version_major=`expr $MYSQL_VERSION : '\([0-9]*\)'` + mysql_version_minor=`expr $MYSQL_VERSION : '[0-9]*\.\([0-9]*\)'` + mysql_version_micro=`expr $MYSQL_VERSION : '[0-9]*\.[0-9]*\.\([0-9]*\)'` + if test "x$mysql_version_micro" = "x"; then + mysql_version_micro="0" + fi + + mysql_version_number=`expr $mysql_version_major \* 1000000 \ + \+ $mysql_version_minor \* 1000 \ + \+ $mysql_version_micro` + + mysql_version_check=`expr $mysql_version_number \>\= $mysql_version_req_number` + if test "$mysql_version_check" = "1"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + fi + fi + + + + + + + test "x${found_mysql}" = "xyes" + + + if test $? -eq 0 + then + enable_mod_mysql_is=`echo "$enable_mod_mysql_is" | sed 's|^auto|yes|g'` + else + enable_mod_mysql_is=no + fi fi + if test "x${enable_mod_mysql_is}" = "xyes:static" + then + enable_mod_mysql_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_mysql_static_is="yes" + fi + fi + + + + if test "x${enable_mod_mysql_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_MYSQL 1" >>confdefs.h + + fi + if test "x${enable_mod_mysql_static_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_MYSQL_STATIC 1" >>confdefs.h + + fi + if test "${enable_mod_mysql_is}" = "yes"; then + ENABLE_MOD_MYSQL_TRUE= + ENABLE_MOD_MYSQL_FALSE='#' +else + ENABLE_MOD_MYSQL_TRUE='#' + ENABLE_MOD_MYSQL_FALSE= +fi + + if test "${enable_mod_mysql_static_is}" = "yes"; then + ENABLE_MOD_MYSQL_STATIC_TRUE= + ENABLE_MOD_MYSQL_STATIC_FALSE='#' +else + ENABLE_MOD_MYSQL_STATIC_TRUE='#' + ENABLE_MOD_MYSQL_STATIC_FALSE= +fi + + + + +if test "x${enable_mod_mysql_is}" = "xyes" +then + if test -z "${with_mysql}"; then with_mysql=yes; fi MYSQL_CONFIG="no" @@ -28374,47 +28778,53 @@ printf "%s\n" "no" >&6; } fi -if test "x${enable_mod_mysql_is}" = "xauto" -then - if test "x${found_mysql}" != "xyes" - then - enable_mod_mysql_is="no" - else - enable_mod_mysql_is="yes" - fi -fi -if test "x${enable_mod_mysql_is}" = "xyes" -then -printf "%s\n" "#define HAWK_ENABLE_MOD_MYSQL 1" >>confdefs.h - -fi - if test "${enable_mod_mysql_is}" = "yes"; then - ENABLE_MOD_MYSQL_TRUE= - ENABLE_MOD_MYSQL_FALSE='#' -else - ENABLE_MOD_MYSQL_TRUE='#' - ENABLE_MOD_MYSQL_FALSE= -fi - - -# Check whether --enable-mod-sed was given. + # Check whether --enable-mod-sed was given. if test ${enable_mod_sed+y} then : enableval=$enable_mod_sed; enable_mod_sed_is=$enableval else case e in #( - e) enable_mod_sed_is=yes - ;; + e) enable_mod_sed_is=yes:static + ;; esac fi -if test "x${enable_mod_sed_is}" = "xyes" -then + if test "x${enable_mod_sed_is}" = "xauto" -o "x${enable_mod_sed_is}" = "xauto:static" + then + true + + if test $? -eq 0 + then + enable_mod_sed_is=`echo "$enable_mod_sed_is" | sed 's|^auto|yes|g'` + else + enable_mod_sed_is=no + fi + fi + + if test "x${enable_mod_sed_is}" = "xyes:static" + then + enable_mod_sed_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_sed_static_is="yes" + fi + fi + + + + if test "x${enable_mod_sed_is}" = "xyes" + then printf "%s\n" "#define HAWK_ENABLE_MOD_SED 1" >>confdefs.h -fi - if test "${enable_mod_sed_is}" = "yes"; then + fi + if test "x${enable_mod_sed_static_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_SED_STATIC 1" >>confdefs.h + + fi + if test "${enable_mod_sed_is}" = "yes"; then ENABLE_MOD_SED_TRUE= ENABLE_MOD_SED_FALSE='#' else @@ -28422,36 +28832,67 @@ else ENABLE_MOD_SED_FALSE= fi + if test "${enable_mod_sed_static_is}" = "yes"; then + ENABLE_MOD_SED_STATIC_TRUE= + ENABLE_MOD_SED_STATIC_FALSE='#' +else + ENABLE_MOD_SED_STATIC_TRUE='#' + ENABLE_MOD_SED_STATIC_FALSE= +fi -# Check whether --enable-mod-uci was given. + + + + + + # Check whether --enable-mod-uci was given. if test ${enable_mod_uci+y} then : enableval=$enable_mod_uci; enable_mod_uci_is=$enableval else case e in #( e) enable_mod_uci_is=auto - ;; + ;; esac fi -if test "x${enable_mod_uci_is}" = "xauto" -then - if test "x${ac_cv_header_uci_h}" != "xyes" + if test "x${enable_mod_uci_is}" = "xauto" -o "x${enable_mod_uci_is}" = "xauto:static" then - enable_mod_uci_is="no" - elif test "x${ac_cv_lib_uci_uci_alloc_context}" != "xyes" - then - enable_mod_uci_is="no" - else - enable_mod_uci_is="yes" + + test "x${ac_cv_header_uci_h}" = "xyes" -a "x${ac_cv_lib_uci_uci_alloc_context}" = "xyes" + + + if test $? -eq 0 + then + enable_mod_uci_is=`echo "$enable_mod_uci_is" | sed 's|^auto|yes|g'` + else + enable_mod_uci_is=no + fi fi -fi -if test "x${enable_mod_uci_is}" = "xyes" -then + + if test "x${enable_mod_uci_is}" = "xyes:static" + then + enable_mod_uci_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_uci_static_is="yes" + fi + fi + + + + if test "x${enable_mod_uci_is}" = "xyes" + then printf "%s\n" "#define HAWK_ENABLE_MOD_UCI 1" >>confdefs.h -fi - if test "${enable_mod_uci_is}" = "yes"; then + fi + if test "x${enable_mod_uci_static_is}" = "xyes" + then + +printf "%s\n" "#define HAWK_ENABLE_MOD_UCI_STATIC 1" >>confdefs.h + + fi + if test "${enable_mod_uci_is}" = "yes"; then ENABLE_MOD_UCI_TRUE= ENABLE_MOD_UCI_FALSE='#' else @@ -28459,45 +28900,18 @@ else ENABLE_MOD_UCI_FALSE= fi - -# Check whether --enable-mod-memc was given. -if test ${enable_mod_memc+y} -then : - enableval=$enable_mod_memc; enable_mod_memc_is=$enableval -else case e in #( - e) enable_mod_memc_is=auto - ;; -esac -fi - -if test "x${enable_mod_memc_is}" = "xauto" -then - if test "x${ac_cv_header_libmemcached_memcached_h}" != "xyes" - then - enable_mod_memc_is="no" - elif test "x${ac_cv_lib_memcached_memcached}" != "xyes" - then - enable_mod_memc_is="no" - else - enable_mod_memc_is="yes" - fi -fi -if test "x${enable_mod_memc_is}" = "xyes" -then - -printf "%s\n" "#define HAWK_ENABLE_MOD_MEMC 1" >>confdefs.h - -fi - if test "${enable_mod_memc_is}" = "yes"; then - ENABLE_MOD_MEMC_TRUE= - ENABLE_MOD_MEMC_FALSE='#' + if test "${enable_mod_uci_static_is}" = "yes"; then + ENABLE_MOD_UCI_STATIC_TRUE= + ENABLE_MOD_UCI_STATIC_FALSE='#' else - ENABLE_MOD_MEMC_TRUE='#' - ENABLE_MOD_MEMC_FALSE= + ENABLE_MOD_UCI_STATIC_TRUE='#' + ENABLE_MOD_UCI_STATIC_FALSE= fi + + # Check whether --enable-pthread-flags was given. if test ${enable_pthread_flags+y} then : @@ -28719,14 +29133,6 @@ if test -z "${ENABLE_CXX_TRUE}" && test -z "${ENABLE_CXX_FALSE}"; then as_fn_error $? "conditional \"ENABLE_CXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_DYNAMIC_MODULE_TRUE}" && test -z "${ENABLE_DYNAMIC_MODULE_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_DYNAMIC_MODULE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_STATIC_MODULE_TRUE}" && test -z "${ENABLE_STATIC_MODULE_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_STATIC_MODULE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${ENABLE_LIBLTDL_TRUE}" && test -z "${ENABLE_LIBLTDL_FALSE}"; then as_fn_error $? "conditional \"ENABLE_LIBLTDL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -28735,24 +29141,48 @@ if test -z "${ENABLE_LIBUNWIND_TRUE}" && test -z "${ENABLE_LIBUNWIND_FALSE}"; th as_fn_error $? "conditional \"ENABLE_LIBUNWIND\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_STATIC_MODULE_TRUE}" && test -z "${ENABLE_STATIC_MODULE_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_STATIC_MODULE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_MOD_FFI_TRUE}" && test -z "${ENABLE_MOD_FFI_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MOD_FFI\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_MOD_FFI_STATIC_TRUE}" && test -z "${ENABLE_MOD_FFI_STATIC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_FFI_STATIC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_MOD_MEMC_TRUE}" && test -z "${ENABLE_MOD_MEMC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_MEMC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_MOD_MEMC_STATIC_TRUE}" && test -z "${ENABLE_MOD_MEMC_STATIC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_MEMC_STATIC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_MOD_MYSQL_TRUE}" && test -z "${ENABLE_MOD_MYSQL_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MOD_MYSQL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_MOD_MYSQL_STATIC_TRUE}" && test -z "${ENABLE_MOD_MYSQL_STATIC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_MYSQL_STATIC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_MOD_SED_TRUE}" && test -z "${ENABLE_MOD_SED_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MOD_SED\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_MOD_SED_STATIC_TRUE}" && test -z "${ENABLE_MOD_SED_STATIC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_SED_STATIC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_MOD_UCI_TRUE}" && test -z "${ENABLE_MOD_UCI_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MOD_UCI\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${ENABLE_MOD_MEMC_TRUE}" && test -z "${ENABLE_MOD_MEMC_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_MOD_MEMC\" was never defined. +if test -z "${ENABLE_MOD_UCI_STATIC_TRUE}" && test -z "${ENABLE_MOD_UCI_STATIC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_MOD_UCI_STATIC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi diff --git a/configure.ac b/configure.ac index 0be9d8ed..0b47c8a1 100644 --- a/configure.ac +++ b/configure.ac @@ -313,14 +313,13 @@ AC_SEARCH_LIBS([lt_dlopen], [ltdl], [ LIBS="$save_LIBS" AC_SUBST(LTDL_LIBS) -AC_CHECK_LIB([ffi], [ffi_call], - [ - FFI_LIBS="-lffi" - AC_DEFINE([HAVE_FFI_LIB], [1], [libffi library is available]) - ] -) +AC_CHECK_LIB([ffi], [ffi_call], [ + FFI_LIBS="-lffi" + AC_DEFINE([HAVE_FFI_LIB], [1], [libffi library is available]) +]) AC_SUBST(FFI_LIBS) + OLDLIBS="$LIBS" LIBS="$FFI_LIBS $LIBS" AC_CHECK_FUNCS([ffi_prep_cif_var]) @@ -328,12 +327,10 @@ LIBS="$OLDLIBS" if test "x${ac_cv_header_libunwind_h}" = "xyes" then - AC_CHECK_LIB([unwind], [unw_backtrace], - [ + AC_CHECK_LIB([unwind], [unw_backtrace], [ UNWIND_LIBS="-lunwind" AC_DEFINE([HAVE_UNWIND_LIB], [1], [libunwind is available]) - ] - ) + ]) AC_SUBST(UNWIND_LIBS) fi @@ -369,8 +366,10 @@ then fi AC_SUBST(SOCKET_LIBS) -dnl pthread -AX_PTHREAD() +## check pthread +AX_PTHREAD + +## check other pthread functions AC_CHECK_LIB([pthread], [pthread_mutex_timedlock], [ AC_DEFINE([HAVE_PTHREAD_MUTEX_TIMEDLOCK],1,[pthreads has pthread_mutex_timedlock()]) ]) @@ -914,40 +913,6 @@ test "${ax_cv_cxx_namespaces}" = "yes" || enable_cxx_is="no" AM_CONDITIONAL(ENABLE_CXX, test "${enable_cxx_is}" = "yes" ) -dnl ===== enable-dynamic-module ===== -AC_ARG_ENABLE([dynamic-module], - [AS_HELP_STRING([--enable-dynamic-module],[enable dynamic module capability(default. yes)])], - enable_dynamic_module_is=$enableval, - enable_dynamic_module_is=yes -) -if test "x${enable_shared}" = "xno" -then - enable_dynamic_module_is="no" -fi - -if test "x${enable_dynamic_module_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_DYNAMIC_MODULE],[1],[enable dynamic module capability]) -fi -AM_CONDITIONAL(ENABLE_DYNAMIC_MODULE, test "x${enable_dynamic_module_is}" = "xyes") - -dnl ===== enable-static-module ===== -AC_ARG_ENABLE([static-module], - [AS_HELP_STRING([--enable-static-module],[build modules statically into the main library(default. no)])], - enable_static_module_is=$enableval, - enable_static_module_is=no -) -if test "x${enable_shared}" = "xno" -a "x${enable_static}" = "xyes" -then - enable_static_module_is="yes" -fi - -if test "x${enable_static_module_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_STATIC_MODULE],[1],[link modules statically into the main library]) -fi -AM_CONDITIONAL(ENABLE_STATIC_MODULE, test "x${enable_static_module_is}" = "xyes") - dnl ===== enable-libltdl ===== AC_ARG_ENABLE([libltdl], [AS_HELP_STRING([--enable-libltdl],[use libltdl(default. no)])], @@ -982,127 +947,53 @@ then fi AM_CONDITIONAL(ENABLE_LIBUNWIND, test "x${enable_libunwind_is}" = "xyes") - -dnl ===== enable-mod-ffi ===== -AC_ARG_ENABLE([mod-ffi], - [AS_HELP_STRING([--enable-mod-ffi],[enable mod/ffi. one of auto, yes, no (default. auto)])], - enable_mod_ffi_is=$enableval, - enable_mod_ffi_is=auto +dnl ===== enable-static-module ===== +AC_ARG_ENABLE([static-module], + [AS_HELP_STRING([--enable-static-module],[build basic modules statically into the main library(default. no)])], + enable_static_module_is=$enableval, + enable_static_module_is=no ) -if test "x${enable_mod_ffi_is}" = "xauto" +if test "x${enable_shared}" = "xno" -a "x${enable_static}" = "xyes" then - if test "x${ac_cv_header_ffi_h}" != "xyes" - then - enable_mod_ffi_is="no" - elif test "x${ac_cv_lib_ffi_ffi_call}" != "xyes" - then - enable_mod_ffi_is="no" - else - enable_mod_ffi_is="yes" - fi + enable_static_module_is="yes" fi -if test "x${enable_mod_ffi_is}" = "xyes" +if test "x${enable_static_module_is}" = "xyes" then - AC_DEFINE([HAWK_ENABLE_MOD_FFI],[1],[build mod/ffi]) + AC_DEFINE([HAWK_ENABLE_STATIC_MODULE],[1],[link modules statically into the main library]) fi -AM_CONDITIONAL(ENABLE_MOD_FFI, test "${enable_mod_ffi_is}" = "yes") +AM_CONDITIONAL(ENABLE_STATIC_MODULE, test "x${enable_static_module_is}" = "xyes") -dnl ===== enable-mod-mysql ===== -AC_ARG_ENABLE([mod-mysql], - [AS_HELP_STRING([--enable-mod-mysql],[enable mod/mysql. one of auto, yes, no (default. auto)])], - enable_mod_mysql_is=$enableval, - enable_mod_mysql_is=auto -) +dnl ===== enable-mod-xxx options ===== -if test "x${enable_mod_mysql_is}" = "xauto" || test "x${enable_mod_mysql_is}" = "xyes" +HAWK_MOD([ffi],[auto],[ + test "x${ac_cv_header_ffi_h}" = "xyes" -a "x${ac_cv_lib_ffi_ffi_call}" = "xyes" +]) + +HAWK_MOD([memc],[auto],[ + test "x${ac_cv_header_libmemcached_memcached_h}" = "xyes" -a "x${ac_cv_lib_memcached_memcached}" = "xyes" +]) + +HAWK_MOD([mysql],[auto],[ + ## if --with_mysql not given but the mysql module needs to detect the mysql client library + if test -z "${with_mysql}"; then with_mysql=yes; fi + AX_LIB_MYSQL() + test "x${found_mysql}" = "xyes" +]) +if test "x${enable_mod_mysql_is}" = "xyes" then - if test ${with_mysql+y} - then - ## as if --with-mysql is specified for AX_LIB_MYSQL below - with_mysql=yes - fi - + if test -z "${with_mysql}"; then with_mysql=yes; fi AX_LIB_MYSQL() fi -if test "x${enable_mod_mysql_is}" = "xauto" -then - if test "x${found_mysql}" != "xyes" - then - enable_mod_mysql_is="no" - else - enable_mod_mysql_is="yes" - fi -fi -if test "x${enable_mod_mysql_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_MOD_MYSQL],[1],[build mod/mysql]) -fi -AM_CONDITIONAL(ENABLE_MOD_MYSQL, test "${enable_mod_mysql_is}" = "yes") - -dnl ===== enable-mod-sed ===== -AC_ARG_ENABLE([mod-sed], - [AS_HELP_STRING([--enable-mod-sed],[enable mod/sed. one of yes, no (default. yes)])], - enable_mod_sed_is=$enableval, - enable_mod_sed_is=yes -) -if test "x${enable_mod_sed_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_MOD_SED],[1],[build mod/sed]) -fi -AM_CONDITIONAL(ENABLE_MOD_SED, test "${enable_mod_sed_is}" = "yes") - -dnl ===== enable-mod-uci ===== -AC_ARG_ENABLE([mod-uci], - [AS_HELP_STRING([--enable-mod-uci],[enable mod/uci. one of auto, yes, no (default. auto)])], - enable_mod_uci_is=$enableval, - enable_mod_uci_is=auto -) -if test "x${enable_mod_uci_is}" = "xauto" -then - if test "x${ac_cv_header_uci_h}" != "xyes" - then - enable_mod_uci_is="no" - elif test "x${ac_cv_lib_uci_uci_alloc_context}" != "xyes" - then - enable_mod_uci_is="no" - else - enable_mod_uci_is="yes" - fi -fi -if test "x${enable_mod_uci_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_MOD_UCI],[1],[build mod/uci]) -fi -AM_CONDITIONAL(ENABLE_MOD_UCI, test "${enable_mod_uci_is}" = "yes") - -dnl ===== enable-mod-memc ===== -AC_ARG_ENABLE([mod-memc], - [AS_HELP_STRING([--enable-mod-memc],[enable mod/memc. one of auto, yes, no (default. auto)])], - enable_mod_memc_is=$enableval, - enable_mod_memc_is=auto -) -if test "x${enable_mod_memc_is}" = "xauto" -then - if test "x${ac_cv_header_libmemcached_memcached_h}" != "xyes" - then - enable_mod_memc_is="no" - elif test "x${ac_cv_lib_memcached_memcached}" != "xyes" - then - enable_mod_memc_is="no" - else - enable_mod_memc_is="yes" - fi -fi -if test "x${enable_mod_memc_is}" = "xyes" -then - AC_DEFINE([HAWK_ENABLE_MOD_MEMC],[1],[build mod/memc]) -fi -AM_CONDITIONAL(ENABLE_MOD_MEMC, test "${enable_mod_memc_is}" = "yes") +HAWK_MOD([sed],[yes:static],[true]) +HAWK_MOD([uci],[auto],[ + test "x${ac_cv_header_uci_h}" = "xyes" -a "x${ac_cv_lib_uci_uci_alloc_context}" = "xyes" +]) dnl ==== include pthread options to the default flags ==== -dnl keep this as the last option as it changes the default compile flags. dnl otherwise, other tests may get affected if this option is on. +dnl keep this as the last option as it changes the default compile flags. +dnl otherwise, other tests may get affected if this option is on. AC_ARG_ENABLE([pthread-flags], [AS_HELP_STRING([--enable-pthread-flags],[add thread flags to CFLAGS, CXXFLAGS, LIBS(default. yes)])], enable_pthread_flags_is=$enableval,enable_pthread_flags_is=yes) if test "$enable_pthread_flags_is" = "yes" diff --git a/lib/Makefile.am b/lib/Makefile.am index aa0b3ddc..8e624c14 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -5,8 +5,8 @@ CPPFLAGS_ALL_COMMON = \ -I$(abs_srcdir) \ -I$(includedir) -CFLAGS_ALL_COMMON = -CXXFLAGS_ALL_COMMON = +CFLAGS_ALL_COMMON = +CXXFLAGS_ALL_COMMON = if ENABLE_STATIC_MODULE LDFLAGS_ALL_COMMON = -L$(abs_builddir)/../mod -L$(abs_builddir) -L$(libdir) @@ -214,9 +214,9 @@ endif if ENABLE_STATIC_MODULE -################################################## -# STATIC MODULES BUILT INTO MAIN LIBRARY -################################################## +####################################################### +# BASIC MODULES STATICALLY BUILT INTO MAIN LIBRARY +####################################################### libhawk_la_SOURCES += \ mod-hawk.c mod-hawk.h \ mod-math.c mod-math.h \ @@ -224,30 +224,10 @@ libhawk_la_SOURCES += \ mod-sys.c mod-sys.h libhawk_la_LIBADD += $(SOCKET_LIBS) -if ENABLE_MOD_FFI -libhawk_la_LIBADD += ../mod/libhawk-ffi.la -endif - -if ENABLE_MOD_MYSQL -libhawk_la_LIBADD += ../mod/libhawk-mysql.la -endif - -if ENABLE_MOD_SED -libhawk_la_LIBADD += ../mod/libhawk-sed.la -endif - -if ENABLE_MOD_UCI -libhawk_la_LIBADD += ../mod/libhawk-uci.la -endif - -if ENABLE_MOD_MEMC -libhawk_la_LIBADD += ../mod/libhawk-memc.la -endif - else -################################################## -# DYNAMIC MODULES -################################################## +####################################################### +# BUILD BASIC MODULES AS SHARED OBJECTS +####################################################### CPPFLAGS_MOD_COMMON = $(CPPFLAGS_ALL_COMMON) CFLAGS_MOD_COMMON = $(CFLAGS_ALL_COMMON) @@ -255,9 +235,6 @@ CXXFLAGS_MOD_COMMON = $(CXXFLAGS_ALL_COMMON) LDFLAGS_MOD_COMMON = $(LDFLAGS_ALL_COMMON) LIBADD_MOD_COMMON = libhawk.la -#pkglibdir = $(libdir) -#pkglib_LTLIBRARIES = - pkglib_LTLIBRARIES += libhawk-hawk.la libhawk_hawk_la_SOURCES = mod-hawk.c mod-hawk.h libhawk_hawk_la_CPPFLAGS = $(CPPFLAGS_MOD_COMMON) @@ -292,6 +269,35 @@ libhawk_sys_la_LIBADD = $(LIBADD_MOD_COMMON) $(SOCKET_LIBS) endif +####################################################### +# ADDITIONAL MODULES BUILT STATICALLY INTO MAIN LIBRARY +####################################################### + +if ENABLE_MOD_FFI_STATIC +libhawk_la_SOURCES += ../mod/mod-ffi.c ../mod/mod-ffi.h +libhawk_la_LIBADD += $(FFI_LIBS) +endif + +if ENABLE_MOD_MEMC_STATIC +libhawk_la_SOURCES += ../mod/mod-memc.c ../mod/mod-memc.h +libhawk_la_LIBADD += $(MEMCACHED_LIBS) +endif + +if ENABLE_MOD_MYSQL_STATIC +libhawk_la_SOURCES += ../mod/mod-mysql.c ../mod/mod-mysql.h +libhawk_la_CPPFLAGS += $(MYSQL_CFLAGS) ## put CFLAGS in CPPFLAGS as MYSQL_CFLAGS contains -I options only +libhawk_la_LDFLAGS += $(MYSQL_LDFLAGS) +libhawk_la_LIBADD += $(MYSQL_LIBS) +endif + +if ENABLE_MOD_SED_STATIC +libhawk_la_SOURCES += ../mod/mod-sed.c ../mod/mod-sed.h +endif + +if ENABLE_MOD_UCI_STATIC +libhawk_la_SOURCES += ../mod/mod-uci.c ../mod/mod-uci.h +libhawk_la_LIBADD += $(UCI_LIBS) +endif ############################################################## # installation diff --git a/lib/Makefile.in b/lib/Makefile.in index 5484dcdc..bdc80a8e 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -98,9 +98,9 @@ host_triplet = @host@ @ENABLE_CXX_TRUE@am__append_7 = Hawk.hpp Hawk-Sed.hpp @ENABLE_CXX_TRUE@am__append_8 = Hawk.cpp Std.cpp Sed.cpp Std-Sed.cpp -################################################## -# STATIC MODULES BUILT INTO MAIN LIBRARY -################################################## +####################################################### +# BASIC MODULES STATICALLY BUILT INTO MAIN LIBRARY +####################################################### @ENABLE_STATIC_MODULE_TRUE@am__append_9 = \ @ENABLE_STATIC_MODULE_TRUE@ mod-hawk.c mod-hawk.h \ @ENABLE_STATIC_MODULE_TRUE@ mod-math.c mod-math.h \ @@ -108,24 +108,31 @@ host_triplet = @host@ @ENABLE_STATIC_MODULE_TRUE@ mod-sys.c mod-sys.h @ENABLE_STATIC_MODULE_TRUE@am__append_10 = $(SOCKET_LIBS) -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_11 = ../mod/libhawk-ffi.la -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_12 = ../mod/libhawk-mysql.la -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_13 = ../mod/libhawk-sed.la -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_14 = ../mod/libhawk-uci.la -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_15 = ../mod/libhawk-memc.la - -#pkglibdir = $(libdir) -#pkglib_LTLIBRARIES = -@ENABLE_STATIC_MODULE_FALSE@am__append_16 = libhawk-hawk.la \ +@ENABLE_STATIC_MODULE_FALSE@am__append_11 = libhawk-hawk.la \ @ENABLE_STATIC_MODULE_FALSE@ libhawk-math.la libhawk-str.la \ @ENABLE_STATIC_MODULE_FALSE@ libhawk-sys.la + +####################################################### +# ADDITIONAL MODULES BUILT STATICALLY INTO MAIN LIBRARY +####################################################### +@ENABLE_MOD_FFI_STATIC_TRUE@am__append_12 = ../mod/mod-ffi.c ../mod/mod-ffi.h +@ENABLE_MOD_FFI_STATIC_TRUE@am__append_13 = $(FFI_LIBS) +@ENABLE_MOD_MEMC_STATIC_TRUE@am__append_14 = ../mod/mod-memc.c ../mod/mod-memc.h +@ENABLE_MOD_MEMC_STATIC_TRUE@am__append_15 = $(MEMCACHED_LIBS) +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__append_16 = ../mod/mod-mysql.c ../mod/mod-mysql.h +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__append_17 = $(MYSQL_CFLAGS) ## put CFLAGS in CPPFLAGS as MYSQL_CFLAGS contains -I options only +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__append_18 = $(MYSQL_LDFLAGS) +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__append_19 = $(MYSQL_LIBS) +@ENABLE_MOD_SED_STATIC_TRUE@am__append_20 = ../mod/mod-sed.c ../mod/mod-sed.h +@ENABLE_MOD_UCI_STATIC_TRUE@am__append_21 = ../mod/mod-uci.c ../mod/mod-uci.h +@ENABLE_MOD_UCI_STATIC_TRUE@am__append_22 = $(UCI_LIBS) subdir = lib ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ @@ -226,11 +233,19 @@ libhawk_sys_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ @ENABLE_LIBLTDL_FALSE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) @ENABLE_LIBUNWIND_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) @ENABLE_STATIC_MODULE_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1) +@ENABLE_MOD_FFI_STATIC_TRUE@am__DEPENDENCIES_6 = \ +@ENABLE_MOD_FFI_STATIC_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_MEMC_STATIC_TRUE@am__DEPENDENCIES_7 = \ +@ENABLE_MOD_MEMC_STATIC_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__DEPENDENCIES_8 = \ +@ENABLE_MOD_MYSQL_STATIC_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_UCI_STATIC_TRUE@am__DEPENDENCIES_9 = \ +@ENABLE_MOD_UCI_STATIC_TRUE@ $(am__DEPENDENCIES_1) libhawk_la_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ - $(am__DEPENDENCIES_4) $(am__DEPENDENCIES_5) $(am__append_11) \ - $(am__append_12) $(am__append_13) $(am__append_14) \ - $(am__append_15) + $(am__DEPENDENCIES_4) $(am__DEPENDENCIES_5) \ + $(am__DEPENDENCIES_6) $(am__DEPENDENCIES_7) \ + $(am__DEPENDENCIES_8) $(am__DEPENDENCIES_9) am__libhawk_la_SOURCES_DIST = hawk.h hawk-arr.h hawk-chr.h hawk-cli.h \ hawk-cmn.h hawk-dir.h hawk-ecs.h hawk-fio.h hawk-fmt.h \ hawk-gem.h hawk-glob.h hawk-htb.h hawk-json.h hawk-map.h \ @@ -251,7 +266,11 @@ am__libhawk_la_SOURCES_DIST = hawk.h hawk-arr.h hawk-chr.h hawk-cli.h \ val-prv.h val.c xma.c cli-imp.h cli.c fio.c mtx.c pio.c sio.c \ syscall.h tio.c std.c std-json.c std-sed.c Hawk.cpp Std.cpp \ Sed.cpp Std-Sed.cpp mod-hawk.c mod-hawk.h mod-math.c \ - mod-math.h mod-str.c mod-str.h mod-sys.c mod-sys.h + mod-math.h mod-str.c mod-str.h mod-sys.c mod-sys.h \ + ../mod/mod-ffi.c ../mod/mod-ffi.h ../mod/mod-memc.c \ + ../mod/mod-memc.h ../mod/mod-mysql.c ../mod/mod-mysql.h \ + ../mod/mod-sed.c ../mod/mod-sed.h ../mod/mod-uci.c \ + ../mod/mod-uci.h am__objects_1 = am__objects_2 = $(am__objects_1) @ENABLE_CXX_TRUE@am__objects_3 = libhawk_la-Hawk.lo libhawk_la-Std.lo \ @@ -260,6 +279,17 @@ am__objects_2 = $(am__objects_1) @ENABLE_STATIC_MODULE_TRUE@ libhawk_la-mod-math.lo \ @ENABLE_STATIC_MODULE_TRUE@ libhawk_la-mod-str.lo \ @ENABLE_STATIC_MODULE_TRUE@ libhawk_la-mod-sys.lo +am__dirstamp = $(am__leading_dot)dirstamp +@ENABLE_MOD_FFI_STATIC_TRUE@am__objects_5 = \ +@ENABLE_MOD_FFI_STATIC_TRUE@ ../mod/libhawk_la-mod-ffi.lo +@ENABLE_MOD_MEMC_STATIC_TRUE@am__objects_6 = \ +@ENABLE_MOD_MEMC_STATIC_TRUE@ ../mod/libhawk_la-mod-memc.lo +@ENABLE_MOD_MYSQL_STATIC_TRUE@am__objects_7 = \ +@ENABLE_MOD_MYSQL_STATIC_TRUE@ ../mod/libhawk_la-mod-mysql.lo +@ENABLE_MOD_SED_STATIC_TRUE@am__objects_8 = \ +@ENABLE_MOD_SED_STATIC_TRUE@ ../mod/libhawk_la-mod-sed.lo +@ENABLE_MOD_UCI_STATIC_TRUE@am__objects_9 = \ +@ENABLE_MOD_UCI_STATIC_TRUE@ ../mod/libhawk_la-mod-uci.lo am_libhawk_la_OBJECTS = $(am__objects_2) libhawk_la-arr.lo \ libhawk_la-chr.lo libhawk_la-dir.lo libhawk_la-ecs.lo \ libhawk_la-err.lo libhawk_la-err-sys.lo libhawk_la-fmt.lo \ @@ -281,7 +311,8 @@ am_libhawk_la_OBJECTS = $(am__objects_2) libhawk_la-arr.lo \ libhawk_la-fio.lo libhawk_la-mtx.lo libhawk_la-pio.lo \ libhawk_la-sio.lo libhawk_la-tio.lo libhawk_la-std.lo \ libhawk_la-std-json.lo libhawk_la-std-sed.lo $(am__objects_3) \ - $(am__objects_4) + $(am__objects_4) $(am__objects_5) $(am__objects_6) \ + $(am__objects_7) $(am__objects_8) $(am__objects_9) libhawk_la_OBJECTS = $(am_libhawk_la_OBJECTS) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) @@ -298,7 +329,12 @@ am__v_at_1 = DEFAULT_INCLUDES = depcomp = $(SHELL) $(top_srcdir)/ac/depcomp am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/libhawk_hawk_la-mod-hawk.Plo \ +am__depfiles_remade = ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Plo \ + ../mod/$(DEPDIR)/libhawk_la-mod-memc.Plo \ + ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Plo \ + ../mod/$(DEPDIR)/libhawk_la-mod-sed.Plo \ + ../mod/$(DEPDIR)/libhawk_la-mod-uci.Plo \ + ./$(DEPDIR)/libhawk_hawk_la-mod-hawk.Plo \ ./$(DEPDIR)/libhawk_la-Hawk.Plo ./$(DEPDIR)/libhawk_la-Sed.Plo \ ./$(DEPDIR)/libhawk_la-Std-Sed.Plo \ ./$(DEPDIR)/libhawk_la-Std.Plo ./$(DEPDIR)/libhawk_la-arr.Plo \ @@ -635,7 +671,7 @@ pkginclude_HEADERS = hawk.h hawk-arr.h hawk-chr.h hawk-cli.h \ hawk-mtx.h hawk-rbt.h hawk-pac1.h hawk-pio.h hawk-skad.h \ hawk-utl.h hawk-sed.h hawk-sio.h hawk-std.h hawk-str.h \ hawk-tio.h hawk-tre.h hawk-upac.h hawk-xma.h $(am__append_7) -pkglib_LTLIBRARIES = libhawk.la $(am__append_16) +pkglib_LTLIBRARIES = libhawk.la $(am__append_11) libhawk_la_SOURCES = $(pkginclude_HEADERS) arr.c chr.c dir.c ecs-imp.h \ ecs.c err-prv.h err.c err-sys.c fmt-imp.h fmt.c fnc-prv.h \ fnc.c gem.c gem-glob.c gem-nwif.c gem-nwif2.c hawk-prv.h \ @@ -649,16 +685,19 @@ libhawk_la_SOURCES = $(pkginclude_HEADERS) arr.c chr.c dir.c ecs-imp.h \ utl-ass.c utl-cmgr.c utl-rnd.c utl-sort.c utl-str.c utl-sys.c \ utl-xstr.c utl.c val-prv.h val.c xma.c cli-imp.h cli.c fio.c \ mtx.c pio.c sio.c syscall.h tio.c std.c std-json.c std-sed.c \ - $(am__append_8) $(am__append_9) + $(am__append_8) $(am__append_9) $(am__append_12) \ + $(am__append_14) $(am__append_16) $(am__append_20) \ + $(am__append_21) libhawk_la_CPPFLAGS = $(CPPFLAGS_ALL_COMMON) $(CPPFLAGS_PFMOD) \ - $(am__append_3) + $(am__append_3) $(am__append_17) libhawk_la_CFLAGS = $(CFLAGS_ALL_COMMON) libhawk_la_CXXFLAGS = $(CXXFLAGS_ALL_COMMON) -libhawk_la_LDFLAGS = $(LDFLAGS_ALL_COMMON) -version-info 1:0:0 ## -no-undefined +libhawk_la_LDFLAGS = $(LDFLAGS_ALL_COMMON) -version-info 1:0:0# \ + $(am__append_18) libhawk_la_LIBADD = $(LIBM) $(SOCKET_LIBS) $(am__append_4) \ $(am__append_5) $(am__append_6) $(am__append_10) \ - $(am__append_11) $(am__append_12) $(am__append_13) \ - $(am__append_14) $(am__append_15) + $(am__append_13) $(am__append_15) $(am__append_19) \ + $(am__append_22) @ENABLE_CXX_FALSE@libhawk_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ @ENABLE_CXX_FALSE@ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) \ @ENABLE_CXX_FALSE@ $(CFLAGS) $(libhawk_la_LDFLAGS) $(LDFLAGS) -o $@ @@ -670,9 +709,9 @@ libhawk_la_LIBADD = $(LIBM) $(SOCKET_LIBS) $(am__append_4) \ @ENABLE_CXX_TRUE@ $(CXXFLAGS) $(libhawk_la_LDFLAGS) $(LDFLAGS) -o $@ -################################################## -# DYNAMIC MODULES -################################################## +####################################################### +# BUILD BASIC MODULES AS SHARED OBJECTS +####################################################### @ENABLE_STATIC_MODULE_FALSE@CPPFLAGS_MOD_COMMON = $(CPPFLAGS_ALL_COMMON) @ENABLE_STATIC_MODULE_FALSE@CFLAGS_MOD_COMMON = $(CFLAGS_ALL_COMMON) @ENABLE_STATIC_MODULE_FALSE@CXXFLAGS_MOD_COMMON = $(CXXFLAGS_ALL_COMMON) @@ -796,16 +835,39 @@ libhawk-str.la: $(libhawk_str_la_OBJECTS) $(libhawk_str_la_DEPENDENCIES) $(EXTRA libhawk-sys.la: $(libhawk_sys_la_OBJECTS) $(libhawk_sys_la_DEPENDENCIES) $(EXTRA_libhawk_sys_la_DEPENDENCIES) $(AM_V_CCLD)$(libhawk_sys_la_LINK) $(am_libhawk_sys_la_rpath) $(libhawk_sys_la_OBJECTS) $(libhawk_sys_la_LIBADD) $(LIBS) +../mod/$(am__dirstamp): + @$(MKDIR_P) ../mod + @: >>../mod/$(am__dirstamp) +../mod/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) ../mod/$(DEPDIR) + @: >>../mod/$(DEPDIR)/$(am__dirstamp) +../mod/libhawk_la-mod-ffi.lo: ../mod/$(am__dirstamp) \ + ../mod/$(DEPDIR)/$(am__dirstamp) +../mod/libhawk_la-mod-memc.lo: ../mod/$(am__dirstamp) \ + ../mod/$(DEPDIR)/$(am__dirstamp) +../mod/libhawk_la-mod-mysql.lo: ../mod/$(am__dirstamp) \ + ../mod/$(DEPDIR)/$(am__dirstamp) +../mod/libhawk_la-mod-sed.lo: ../mod/$(am__dirstamp) \ + ../mod/$(DEPDIR)/$(am__dirstamp) +../mod/libhawk_la-mod-uci.lo: ../mod/$(am__dirstamp) \ + ../mod/$(DEPDIR)/$(am__dirstamp) libhawk.la: $(libhawk_la_OBJECTS) $(libhawk_la_DEPENDENCIES) $(EXTRA_libhawk_la_DEPENDENCIES) $(AM_V_GEN)$(libhawk_la_LINK) -rpath $(pkglibdir) $(libhawk_la_OBJECTS) $(libhawk_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) + -rm -f ../mod/*.$(OBJEXT) + -rm -f ../mod/*.lo distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@../mod/$(DEPDIR)/libhawk_la-mod-ffi.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@../mod/$(DEPDIR)/libhawk_la-mod-memc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@../mod/$(DEPDIR)/libhawk_la-mod-mysql.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@../mod/$(DEPDIR)/libhawk_la-mod-sed.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@../mod/$(DEPDIR)/libhawk_la-mod-uci.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhawk_hawk_la-mod-hawk.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhawk_la-Hawk.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhawk_la-Sed.Plo@am__quote@ # am--include-marker @@ -1337,6 +1399,41 @@ libhawk_la-mod-sys.lo: mod-sys.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o libhawk_la-mod-sys.lo `test -f 'mod-sys.c' || echo '$(srcdir)/'`mod-sys.c +../mod/libhawk_la-mod-ffi.lo: ../mod/mod-ffi.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -MT ../mod/libhawk_la-mod-ffi.lo -MD -MP -MF ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Tpo -c -o ../mod/libhawk_la-mod-ffi.lo `test -f '../mod/mod-ffi.c' || echo '$(srcdir)/'`../mod/mod-ffi.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Tpo ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../mod/mod-ffi.c' object='../mod/libhawk_la-mod-ffi.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o ../mod/libhawk_la-mod-ffi.lo `test -f '../mod/mod-ffi.c' || echo '$(srcdir)/'`../mod/mod-ffi.c + +../mod/libhawk_la-mod-memc.lo: ../mod/mod-memc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -MT ../mod/libhawk_la-mod-memc.lo -MD -MP -MF ../mod/$(DEPDIR)/libhawk_la-mod-memc.Tpo -c -o ../mod/libhawk_la-mod-memc.lo `test -f '../mod/mod-memc.c' || echo '$(srcdir)/'`../mod/mod-memc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../mod/$(DEPDIR)/libhawk_la-mod-memc.Tpo ../mod/$(DEPDIR)/libhawk_la-mod-memc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../mod/mod-memc.c' object='../mod/libhawk_la-mod-memc.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o ../mod/libhawk_la-mod-memc.lo `test -f '../mod/mod-memc.c' || echo '$(srcdir)/'`../mod/mod-memc.c + +../mod/libhawk_la-mod-mysql.lo: ../mod/mod-mysql.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -MT ../mod/libhawk_la-mod-mysql.lo -MD -MP -MF ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Tpo -c -o ../mod/libhawk_la-mod-mysql.lo `test -f '../mod/mod-mysql.c' || echo '$(srcdir)/'`../mod/mod-mysql.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Tpo ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../mod/mod-mysql.c' object='../mod/libhawk_la-mod-mysql.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o ../mod/libhawk_la-mod-mysql.lo `test -f '../mod/mod-mysql.c' || echo '$(srcdir)/'`../mod/mod-mysql.c + +../mod/libhawk_la-mod-sed.lo: ../mod/mod-sed.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -MT ../mod/libhawk_la-mod-sed.lo -MD -MP -MF ../mod/$(DEPDIR)/libhawk_la-mod-sed.Tpo -c -o ../mod/libhawk_la-mod-sed.lo `test -f '../mod/mod-sed.c' || echo '$(srcdir)/'`../mod/mod-sed.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../mod/$(DEPDIR)/libhawk_la-mod-sed.Tpo ../mod/$(DEPDIR)/libhawk_la-mod-sed.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../mod/mod-sed.c' object='../mod/libhawk_la-mod-sed.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o ../mod/libhawk_la-mod-sed.lo `test -f '../mod/mod-sed.c' || echo '$(srcdir)/'`../mod/mod-sed.c + +../mod/libhawk_la-mod-uci.lo: ../mod/mod-uci.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -MT ../mod/libhawk_la-mod-uci.lo -MD -MP -MF ../mod/$(DEPDIR)/libhawk_la-mod-uci.Tpo -c -o ../mod/libhawk_la-mod-uci.lo `test -f '../mod/mod-uci.c' || echo '$(srcdir)/'`../mod/mod-uci.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../mod/$(DEPDIR)/libhawk_la-mod-uci.Tpo ../mod/$(DEPDIR)/libhawk_la-mod-uci.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../mod/mod-uci.c' object='../mod/libhawk_la-mod-uci.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhawk_la_CPPFLAGS) $(CPPFLAGS) $(libhawk_la_CFLAGS) $(CFLAGS) -c -o ../mod/libhawk_la-mod-uci.lo `test -f '../mod/mod-uci.c' || echo '$(srcdir)/'`../mod/mod-uci.c + .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ @@ -1394,6 +1491,7 @@ mostlyclean-libtool: clean-libtool: -rm -rf .libs _libs + -rm -rf ../mod/.libs ../mod/_libs install-pkgincludeHEADERS: $(pkginclude_HEADERS) @$(NORMAL_INSTALL) @list='$(pkginclude_HEADERS)'; test -n "$(pkgincludedir)" || list=; \ @@ -1536,6 +1634,8 @@ clean-generic: distclean-generic: -$(am__rm_f) $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) ../mod/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) ../mod/$(am__dirstamp) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -1547,6 +1647,11 @@ clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \ mostlyclean-am distclean: distclean-am + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-memc.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-sed.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-uci.Plo -rm -f ./$(DEPDIR)/libhawk_hawk_la-mod-hawk.Plo -rm -f ./$(DEPDIR)/libhawk_la-Hawk.Plo -rm -f ./$(DEPDIR)/libhawk_la-Sed.Plo @@ -1659,6 +1764,11 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-ffi.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-memc.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-mysql.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-sed.Plo + -rm -f ../mod/$(DEPDIR)/libhawk_la-mod-uci.Plo -rm -f ./$(DEPDIR)/libhawk_hawk_la-mod-hawk.Plo -rm -f ./$(DEPDIR)/libhawk_la-Hawk.Plo -rm -f ./$(DEPDIR)/libhawk_la-Sed.Plo diff --git a/lib/hawk-cfg.h.in b/lib/hawk-cfg.h.in index 960bbb92..3945ca2b 100644 --- a/lib/hawk-cfg.h.in +++ b/lib/hawk-cfg.h.in @@ -699,9 +699,6 @@ /* configure command */ #undef HAWK_CONFIGURE_CMD -/* enable dynamic module capability */ -#undef HAWK_ENABLE_DYNAMIC_MODULE - /* use libltdl when loading a dynamic module */ #undef HAWK_ENABLE_LIBLTDL @@ -711,18 +708,33 @@ /* build mod/ffi */ #undef HAWK_ENABLE_MOD_FFI +/* build mod/ffi statically linked into the main library */ +#undef HAWK_ENABLE_MOD_FFI_STATIC + /* build mod/memc */ #undef HAWK_ENABLE_MOD_MEMC +/* build mod/memc statically linked into the main library */ +#undef HAWK_ENABLE_MOD_MEMC_STATIC + /* build mod/mysql */ #undef HAWK_ENABLE_MOD_MYSQL +/* build mod/mysql statically linked into the main library */ +#undef HAWK_ENABLE_MOD_MYSQL_STATIC + /* build mod/sed */ #undef HAWK_ENABLE_MOD_SED +/* build mod/sed statically linked into the main library */ +#undef HAWK_ENABLE_MOD_SED_STATIC + /* build mod/uci */ #undef HAWK_ENABLE_MOD_UCI +/* build mod/uci statically linked into the main library */ +#undef HAWK_ENABLE_MOD_UCI_STATIC + /* link modules statically into the main library */ #undef HAWK_ENABLE_STATIC_MODULE diff --git a/lib/parse.c b/lib/parse.c index ac69917b..88a8cfa3 100644 --- a/lib/parse.c +++ b/lib/parse.c @@ -7479,23 +7479,23 @@ int hawk_putsrcoochars (hawk_t* hawk, const hawk_ooch_t* str, hawk_oow_t len) #include "mod-str.h" #include "mod-sys.h" -#if defined(HAWK_ENABLE_MOD_FFI) +#if defined(HAWK_ENABLE_MOD_FFI_STATIC) #include "../mod/mod-ffi.h" #endif -#if defined(HAWK_ENABLE_MOD_MYSQL) +#if defined(HAWK_ENABLE_MOD_MYSQL_STATIC) #include "../mod/mod-mysql.h" #endif -#if defined(HAWK_ENABLE_MOD_SED) +#if defined(HAWK_ENABLE_MOD_SED_STATIC) #include "../mod/mod-sed.h" #endif -#if defined(HAWK_ENABLE_MOD_UCI) +#if defined(HAWK_ENABLE_MOD_UCI_STATIC) #include "../mod/mod-uci.h" #endif -#if defined(HAWK_ENABLE_MOD_MEMC) +#if defined(HAWK_ENABLE_MOD_MEMC_STATIC) #include "../mod/mod-memc.h" #endif @@ -7511,23 +7511,23 @@ static struct int (*modload) (hawk_mod_t* mod, hawk_t* hawk); } static_modtab[] = { -#if defined(HAWK_ENABLE_MOD_FFI) +#if defined(HAWK_ENABLE_MOD_FFI_STATIC) { HAWK_T("ffi"), hawk_mod_ffi }, #endif { HAWK_T("hawk"), hawk_mod_hawk }, { HAWK_T("math"), hawk_mod_math }, -#if defined(HAWK_ENABLE_MOD_MYSQL) +#if defined(HAWK_ENABLE_MOD_MYSQL_STATIC) { HAWK_T("mysql"), hawk_mod_mysql }, #endif -#if defined(HAWK_ENABLE_MOD_SED) +#if defined(HAWK_ENABLE_MOD_SED_STATIC) { HAWK_T("sed"), hawk_mod_sed }, #endif { HAWK_T("str"), hawk_mod_str }, { HAWK_T("sys"), hawk_mod_sys }, -#if defined(HAWK_ENABLE_MOD_UCI) +#if defined(HAWK_ENABLE_MOD_UCI_STATIC) { HAWK_T("uci"), hawk_mod_uci }, #endif -#if defined(HAWK_ENABLE_MOD_MEMC) +#if defined(HAWK_ENABLE_MOD_MEMC_STATIC) { HAWK_T("memc"), hawk_mod_memc }, #endif }; diff --git a/m4/hawk_mod.m4 b/m4/hawk_mod.m4 new file mode 100644 index 00000000..c970a907 --- /dev/null +++ b/m4/hawk_mod.m4 @@ -0,0 +1,48 @@ +# this file is not supposed to be used standalone +# as it repies on --enable-static-module option value. +# +# HAWK_MOD(name,default-value,auto-decision-action) + +AC_DEFUN([HAWK_MOD], +[ + AC_ARG_ENABLE([mod-$1], + [AS_HELP_STRING([--enable-mod-$1],[enable mod/$1. one of auto, auto:static, yes, yes:static, no (default. $2)])], + enable_mod_$1_is=$enableval, + enable_mod_$1_is=$2 + ) + if test "x${enable_mod_$1_is}" = "xauto" -o "x${enable_mod_$1_is}" = "xauto:static" + then + $3 + + if test $? -eq 0 + then + enable_mod_$1_is=`echo "[$]enable_mod_$1_is" | sed 's|^auto|yes|g'` + else + enable_mod_$1_is=no + fi + fi + + if test "x${enable_mod_$1_is}" = "xyes:static" + then + enable_mod_$1_is=yes + if test "x${enable_static_module_is}" = "xyes" + then + enable_mod_$1_static_is="yes" + fi + fi + + m4_pushdef([UPNAME], m4_translit([$1], [abcdefghijklmnopqrstuvwxyz], [ABCDEFGHIJKLMNOPQRSTUVWXYZ])) + + if test "x${enable_mod_$1_is}" = "xyes" + then + AC_DEFINE([HAWK_ENABLE_MOD_[]UPNAME],[1],[build mod/$1]) + fi + if test "x${enable_mod_$1_static_is}" = "xyes" + then + AC_DEFINE([HAWK_ENABLE_MOD_[]UPNAME[]_STATIC],[1],[build mod/$1 statically linked into the main library]) + fi + AM_CONDITIONAL(ENABLE_MOD_[]UPNAME, test "${enable_mod_$1_is}" = "yes") + AM_CONDITIONAL(ENABLE_MOD_[]UPNAME[]_STATIC, test "${enable_mod_$1_static_is}" = "yes") + + m4_popdef([UPNAME]) +]) diff --git a/mod/Makefile.am b/mod/Makefile.am index de4cd1f5..494470f0 100644 --- a/mod/Makefile.am +++ b/mod/Makefile.am @@ -9,115 +9,69 @@ CPPFLAGS_COMMON = \ CFLAGS_COMMON = -################################################## -if ENABLE_STATIC_MODULE -################################################## +LDFLAGS_COMMON_STATIC =-L$(libdir) +LIBADD_COMMON_STATIC = -#------------------------------------------------- -# STATIC MODULES BUILT INTO MAIN LIBRARY -#------------------------------------------------- -LDFLAGS_COMMON =-L$(libdir) -LIBADD_COMMON = - -noinst_LTLIBRARIES = - -if ENABLE_MOD_FFI -noinst_LTLIBRARIES += libhawk-ffi.la -endif - -if ENABLE_MOD_MYSQL -noinst_LTLIBRARIES += libhawk-mysql.la -endif - -if ENABLE_MOD_SED -noinst_LTLIBRARIES += libhawk-sed.la -endif - -if ENABLE_MOD_UCI -noinst_LTLIBRARIES += libhawk-uci.la -endif - -if ENABLE_MOD_MEMC -noinst_LTLIBRARIES += libhawk-memc.la -endif - -################################################## -else -################################################## - -#------------------------------------------------- -# DYNAMIC MODULES -#------------------------------------------------- -LDFLAGS_COMMON = -L../lib -L$(libdir) -version-info 1:0:0 ## -no-undefined -LIBADD_COMMON = -lhawk +LDFLAGS_COMMON_DYNAMIC = -L../lib -L$(libdir) -version-info 1:0:0 ## -no-undefined +LIBADD_COMMON_DYNAMIC = -lhawk pkgmodexecdir = $(libdir) pkgmodexec_LTLIBRARIES = +#------------------------------------------------- +# ACTUAL MODULES TO BUILD AS SHARED OBJECTS +#------------------------------------------------- if ENABLE_MOD_FFI +if !ENABLE_MOD_FFI_STATIC pkgmodexec_LTLIBRARIES += libhawk-ffi.la -endif - -if ENABLE_MOD_MYSQL -pkgmodexec_LTLIBRARIES += libhawk-mysql.la -endif - -if ENABLE_MOD_SED -pkgmodexec_LTLIBRARIES += libhawk-sed.la -endif - -if ENABLE_MOD_UCI -pkgmodexec_LTLIBRARIES += libhawk-uci.la -endif - -if ENABLE_MOD_MEMC -pkgmodexec_LTLIBRARIES += libhawk-memc.la -endif - -################################################## -endif -################################################## - - -#------------------------------------------------- -# ACTUAL MODULES -#------------------------------------------------- -if ENABLE_MOD_FFI libhawk_ffi_la_SOURCES = mod-ffi.c mod-ffi.h libhawk_ffi_la_CPPFLAGS = $(CPPFLAGS_COMMON) libhawk_ffi_la_CFLAGS = $(CFLAGS_COMMON) -libhawk_ffi_la_LDFLAGS = $(LDFLAGS_COMMON) -libhawk_ffi_la_LIBADD = $(LIBADD_COMMON) $(FFI_LIBS) +libhawk_ffi_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +libhawk_ffi_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(FFI_LIBS) endif - -if ENABLE_MOD_MYSQL -libhawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h -libhawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) -libhawk_mysql_la_CFLAGS = $(CFLAGS_COMMON) -libhawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON) $(MYSQL_LDFLAGS) -libhawk_mysql_la_LIBADD = $(LIBADD_COMMON) $(MYSQL_LIBS) -endif - -if ENABLE_MOD_SED -libhawk_sed_la_SOURCES = mod-sed.c mod-sed.h -libhawk_sed_la_CPPFLAGS = $(CPPFLAGS_COMMON) -libhawk_sed_la_CFLAGS = $(CFLAGS_COMMON) -libhawk_sed_la_LDFLAGS = $(LDFLAGS_COMMON) -libhawk_sed_la_LIBADD = $(LIBADD_COMMON) -endif - -if ENABLE_MOD_UCI -libhawk_uci_la_SOURCES = mod-uci.c mod-uci.h -libhawk_uci_la_CPPFLAGS = $(CPPFLAGS_COMMON) -libhawk_uci_la_CFLAGS = $(CFLAGS_COMMON) -libhawk_uci_la_LDFLAGS = $(LDFLAGS_COMMON) -libhawk_uci_la_LIBADD = $(LIBADD_COMMON) $(UCI_LIBS) endif if ENABLE_MOD_MEMC +if !ENABLE_MOD_MEMC_STATIC +pkgmodexec_LTLIBRARIES += libhawk-memc.la libhawk_memc_la_SOURCES = mod-memc.c mod-memc.h libhawk_memc_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MEMCACHED_CFLAGS) libhawk_memc_la_CFLAGS = $(CFLAGS_COMMON) -libhawk_memc_la_LDFLAGS = $(LDFLAGS_COMMON) $(MEMCACHED_LDFLAGS) -libhawk_memc_la_LIBADD = $(LIBADD_COMMON) $(MEMCACHED_LIBS) +libhawk_memc_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) $(MEMCACHED_LDFLAGS) +libhawk_memc_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(MEMCACHED_LIBS) +endif +endif + +if ENABLE_MOD_MYSQL +if !ENABLE_MOD_MYSQL_STATIC +pkgmodexec_LTLIBRARIES += libhawk-mysql.la +libhawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h +libhawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) +libhawk_mysql_la_CFLAGS = $(CFLAGS_COMMON) +libhawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) $(MYSQL_LDFLAGS) +libhawk_mysql_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(MYSQL_LIBS) +endif +endif + +if ENABLE_MOD_SED +if !ENABLE_MOD_SED_STATIC +pkgmodexec_LTLIBRARIES += libhawk-sed.la +libhawk_sed_la_SOURCES = mod-sed.c mod-sed.h +libhawk_sed_la_CPPFLAGS = $(CPPFLAGS_COMMON) +libhawk_sed_la_CFLAGS = $(CFLAGS_COMMON) +libhawk_sed_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +libhawk_sed_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) +endif +endif + +if ENABLE_MOD_UCI +if !ENABLE_MOD_UCI_STATIC +pkgmodexec_LTLIBRARIES += libhawk-uci.la +libhawk_uci_la_SOURCES = mod-uci.c mod-uci.h +libhawk_uci_la_CPPFLAGS = $(CPPFLAGS_COMMON) +libhawk_uci_la_CFLAGS = $(CFLAGS_COMMON) +libhawk_uci_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +libhawk_uci_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(UCI_LIBS) +endif endif diff --git a/mod/Makefile.in b/mod/Makefile.in index 72fb4589..813f67c5 100644 --- a/mod/Makefile.in +++ b/mod/Makefile.in @@ -90,23 +90,22 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_1 = libhawk-ffi.la -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_2 = libhawk-mysql.la -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_3 = libhawk-sed.la -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_4 = libhawk-uci.la -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_TRUE@am__append_5 = libhawk-memc.la -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_FALSE@am__append_6 = libhawk-ffi.la -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_FALSE@am__append_7 = libhawk-mysql.la -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_FALSE@am__append_8 = libhawk-sed.la -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_FALSE@am__append_9 = libhawk-uci.la -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_FALSE@am__append_10 = libhawk-memc.la + +#------------------------------------------------- +# ACTUAL MODULES TO BUILD AS SHARED OBJECTS +#------------------------------------------------- +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@am__append_1 = libhawk-ffi.la +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@am__append_2 = libhawk-memc.la +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@am__append_3 = libhawk-mysql.la +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@am__append_4 = libhawk-sed.la +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@am__append_5 = libhawk-uci.la subdir = mod ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ @@ -145,14 +144,12 @@ am__uninstall_files_from_dir = { \ $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } am__installdirs = "$(DESTDIR)$(pkgmodexecdir)" -LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkgmodexec_LTLIBRARIES) +LTLIBRARIES = $(pkgmodexec_LTLIBRARIES) am__DEPENDENCIES_1 = -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_DEPENDENCIES = \ -@ENABLE_MOD_FFI_TRUE@ $(am__DEPENDENCIES_1) \ -@ENABLE_MOD_FFI_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@ $(am__DEPENDENCIES_1) am__libhawk_ffi_la_SOURCES_DIST = mod-ffi.c mod-ffi.h -@ENABLE_MOD_FFI_TRUE@am_libhawk_ffi_la_OBJECTS = \ -@ENABLE_MOD_FFI_TRUE@ libhawk_ffi_la-mod-ffi.lo +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@am_libhawk_ffi_la_OBJECTS = libhawk_ffi_la-mod-ffi.lo libhawk_ffi_la_OBJECTS = $(am_libhawk_ffi_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -162,69 +159,56 @@ libhawk_ffi_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libhawk_ffi_la_CFLAGS) $(CFLAGS) $(libhawk_ffi_la_LDFLAGS) \ $(LDFLAGS) -o $@ -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_FALSE@am_libhawk_ffi_la_rpath = \ -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_FALSE@ -rpath \ -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) -@ENABLE_MOD_FFI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libhawk_ffi_la_rpath = -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_DEPENDENCIES = \ -@ENABLE_MOD_MEMC_TRUE@ $(am__DEPENDENCIES_1) \ -@ENABLE_MOD_MEMC_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@am_libhawk_ffi_la_rpath = \ +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@ -rpath \ +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@ $(pkgmodexecdir) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@ $(am__DEPENDENCIES_1) am__libhawk_memc_la_SOURCES_DIST = mod-memc.c mod-memc.h -@ENABLE_MOD_MEMC_TRUE@am_libhawk_memc_la_OBJECTS = \ -@ENABLE_MOD_MEMC_TRUE@ libhawk_memc_la-mod-memc.lo +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@am_libhawk_memc_la_OBJECTS = libhawk_memc_la-mod-memc.lo libhawk_memc_la_OBJECTS = $(am_libhawk_memc_la_OBJECTS) libhawk_memc_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libhawk_memc_la_CFLAGS) $(CFLAGS) $(libhawk_memc_la_LDFLAGS) \ $(LDFLAGS) -o $@ -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_FALSE@am_libhawk_memc_la_rpath = \ -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_FALSE@ -rpath \ -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) -@ENABLE_MOD_MEMC_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libhawk_memc_la_rpath = -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_DEPENDENCIES = \ -@ENABLE_MOD_MYSQL_TRUE@ $(am__DEPENDENCIES_1) \ -@ENABLE_MOD_MYSQL_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@am_libhawk_memc_la_rpath = \ +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@ -rpath \ +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@ $(pkgmodexecdir) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@ $(am__DEPENDENCIES_1) am__libhawk_mysql_la_SOURCES_DIST = mod-mysql.c mod-mysql.h -@ENABLE_MOD_MYSQL_TRUE@am_libhawk_mysql_la_OBJECTS = \ -@ENABLE_MOD_MYSQL_TRUE@ libhawk_mysql_la-mod-mysql.lo +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@am_libhawk_mysql_la_OBJECTS = libhawk_mysql_la-mod-mysql.lo libhawk_mysql_la_OBJECTS = $(am_libhawk_mysql_la_OBJECTS) libhawk_mysql_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libhawk_mysql_la_CFLAGS) $(CFLAGS) \ $(libhawk_mysql_la_LDFLAGS) $(LDFLAGS) -o $@ -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_FALSE@am_libhawk_mysql_la_rpath = \ -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_FALSE@ -rpath \ -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) -@ENABLE_MOD_MYSQL_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libhawk_mysql_la_rpath = -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_DEPENDENCIES = \ -@ENABLE_MOD_SED_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@am_libhawk_mysql_la_rpath = \ +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@ -rpath \ +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@ $(pkgmodexecdir) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am__libhawk_sed_la_SOURCES_DIST = mod-sed.c mod-sed.h -@ENABLE_MOD_SED_TRUE@am_libhawk_sed_la_OBJECTS = \ -@ENABLE_MOD_SED_TRUE@ libhawk_sed_la-mod-sed.lo +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@am_libhawk_sed_la_OBJECTS = libhawk_sed_la-mod-sed.lo libhawk_sed_la_OBJECTS = $(am_libhawk_sed_la_OBJECTS) libhawk_sed_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libhawk_sed_la_CFLAGS) $(CFLAGS) $(libhawk_sed_la_LDFLAGS) \ $(LDFLAGS) -o $@ -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_FALSE@am_libhawk_sed_la_rpath = \ -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_FALSE@ -rpath \ -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) -@ENABLE_MOD_SED_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libhawk_sed_la_rpath = -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_DEPENDENCIES = \ -@ENABLE_MOD_UCI_TRUE@ $(am__DEPENDENCIES_1) \ -@ENABLE_MOD_UCI_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@am_libhawk_sed_la_rpath = \ +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@ -rpath \ +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@ $(pkgmodexecdir) +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@ $(am__DEPENDENCIES_1) am__libhawk_uci_la_SOURCES_DIST = mod-uci.c mod-uci.h -@ENABLE_MOD_UCI_TRUE@am_libhawk_uci_la_OBJECTS = \ -@ENABLE_MOD_UCI_TRUE@ libhawk_uci_la-mod-uci.lo +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@am_libhawk_uci_la_OBJECTS = libhawk_uci_la-mod-uci.lo libhawk_uci_la_OBJECTS = $(am_libhawk_uci_la_OBJECTS) libhawk_uci_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(libhawk_uci_la_CFLAGS) $(CFLAGS) $(libhawk_uci_la_LDFLAGS) \ $(LDFLAGS) -o $@ -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_FALSE@am_libhawk_uci_la_rpath = \ -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_FALSE@ -rpath \ -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_FALSE@ $(pkgmodexecdir) -@ENABLE_MOD_UCI_TRUE@@ENABLE_STATIC_MODULE_TRUE@am_libhawk_uci_la_rpath = +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@am_libhawk_uci_la_rpath = \ +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@ -rpath \ +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@ $(pkgmodexecdir) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -461,63 +445,38 @@ CPPFLAGS_COMMON = \ -I$(includedir) CFLAGS_COMMON = - -################################################## -################################################## - -#------------------------------------------------- -# DYNAMIC MODULES -#------------------------------------------------- -@ENABLE_STATIC_MODULE_FALSE@LDFLAGS_COMMON = -L../lib -L$(libdir) -version-info 1:0:0 ## -no-undefined - -################################################## -################################################## - -#------------------------------------------------- -# STATIC MODULES BUILT INTO MAIN LIBRARY -#------------------------------------------------- -@ENABLE_STATIC_MODULE_TRUE@LDFLAGS_COMMON = -L$(libdir) -@ENABLE_STATIC_MODULE_FALSE@LIBADD_COMMON = -lhawk -@ENABLE_STATIC_MODULE_TRUE@LIBADD_COMMON = -@ENABLE_STATIC_MODULE_TRUE@noinst_LTLIBRARIES = $(am__append_1) \ -@ENABLE_STATIC_MODULE_TRUE@ $(am__append_2) $(am__append_3) \ -@ENABLE_STATIC_MODULE_TRUE@ $(am__append_4) $(am__append_5) -@ENABLE_STATIC_MODULE_FALSE@pkgmodexecdir = $(libdir) -@ENABLE_STATIC_MODULE_FALSE@pkgmodexec_LTLIBRARIES = $(am__append_6) \ -@ENABLE_STATIC_MODULE_FALSE@ $(am__append_7) $(am__append_8) \ -@ENABLE_STATIC_MODULE_FALSE@ $(am__append_9) $(am__append_10) - -################################################## -################################################## - -#------------------------------------------------- -# ACTUAL MODULES -#------------------------------------------------- -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_SOURCES = mod-ffi.c mod-ffi.h -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_CPPFLAGS = $(CPPFLAGS_COMMON) -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_CFLAGS = $(CFLAGS_COMMON) -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_LDFLAGS = $(LDFLAGS_COMMON) -@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_LIBADD = $(LIBADD_COMMON) $(FFI_LIBS) -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_CFLAGS = $(CFLAGS_COMMON) -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON) $(MYSQL_LDFLAGS) -@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_LIBADD = $(LIBADD_COMMON) $(MYSQL_LIBS) -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_SOURCES = mod-sed.c mod-sed.h -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_CPPFLAGS = $(CPPFLAGS_COMMON) -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_CFLAGS = $(CFLAGS_COMMON) -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_LDFLAGS = $(LDFLAGS_COMMON) -@ENABLE_MOD_SED_TRUE@libhawk_sed_la_LIBADD = $(LIBADD_COMMON) -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_SOURCES = mod-uci.c mod-uci.h -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_CPPFLAGS = $(CPPFLAGS_COMMON) -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_CFLAGS = $(CFLAGS_COMMON) -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_LDFLAGS = $(LDFLAGS_COMMON) -@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_LIBADD = $(LIBADD_COMMON) $(UCI_LIBS) -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_SOURCES = mod-memc.c mod-memc.h -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MEMCACHED_CFLAGS) -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_CFLAGS = $(CFLAGS_COMMON) -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_LDFLAGS = $(LDFLAGS_COMMON) $(MEMCACHED_LDFLAGS) -@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_LIBADD = $(LIBADD_COMMON) $(MEMCACHED_LIBS) +LDFLAGS_COMMON_STATIC = -L$(libdir) +LIBADD_COMMON_STATIC = +LDFLAGS_COMMON_DYNAMIC = -L../lib -L$(libdir) -version-info 1:0:0 ## -no-undefined +LIBADD_COMMON_DYNAMIC = -lhawk +pkgmodexecdir = $(libdir) +pkgmodexec_LTLIBRARIES = $(am__append_1) $(am__append_2) \ + $(am__append_3) $(am__append_4) $(am__append_5) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_SOURCES = mod-ffi.c mod-ffi.h +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_CPPFLAGS = $(CPPFLAGS_COMMON) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_CFLAGS = $(CFLAGS_COMMON) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +@ENABLE_MOD_FFI_STATIC_FALSE@@ENABLE_MOD_FFI_TRUE@libhawk_ffi_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(FFI_LIBS) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_SOURCES = mod-memc.c mod-memc.h +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MEMCACHED_CFLAGS) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_CFLAGS = $(CFLAGS_COMMON) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) $(MEMCACHED_LDFLAGS) +@ENABLE_MOD_MEMC_STATIC_FALSE@@ENABLE_MOD_MEMC_TRUE@libhawk_memc_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(MEMCACHED_LIBS) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_SOURCES = mod-mysql.c mod-mysql.h +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_CPPFLAGS = $(CPPFLAGS_COMMON) $(MYSQL_CFLAGS) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_CFLAGS = $(CFLAGS_COMMON) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) $(MYSQL_LDFLAGS) +@ENABLE_MOD_MYSQL_STATIC_FALSE@@ENABLE_MOD_MYSQL_TRUE@libhawk_mysql_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(MYSQL_LIBS) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_SOURCES = mod-sed.c mod-sed.h +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_CPPFLAGS = $(CPPFLAGS_COMMON) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_CFLAGS = $(CFLAGS_COMMON) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +@ENABLE_MOD_SED_STATIC_FALSE@@ENABLE_MOD_SED_TRUE@libhawk_sed_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_SOURCES = mod-uci.c mod-uci.h +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_CPPFLAGS = $(CPPFLAGS_COMMON) +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_CFLAGS = $(CFLAGS_COMMON) +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_LDFLAGS = $(LDFLAGS_COMMON_DYNAMIC) +@ENABLE_MOD_UCI_STATIC_FALSE@@ENABLE_MOD_UCI_TRUE@libhawk_uci_la_LIBADD = $(LIBADD_COMMON_DYNAMIC) $(UCI_LIBS) all: all-am .SUFFIXES: @@ -552,15 +511,6 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -clean-noinstLTLIBRARIES: - -$(am__rm_f) $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - echo rm -f $${locs}; \ - $(am__rm_f) $${locs} - install-pkgmodexecLTLIBRARIES: $(pkgmodexec_LTLIBRARIES) @$(NORMAL_INSTALL) @list='$(pkgmodexec_LTLIBRARIES)'; test -n "$(pkgmodexecdir)" || list=; \ @@ -815,8 +765,8 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ - clean-pkgmodexecLTLIBRARIES mostlyclean-am +clean-am: clean-generic clean-libtool clean-pkgmodexecLTLIBRARIES \ + mostlyclean-am distclean: distclean-am -rm -f ./$(DEPDIR)/libhawk_ffi_la-mod-ffi.Plo @@ -895,20 +845,19 @@ uninstall-am: uninstall-pkgmodexecLTLIBRARIES .MAKE: install-am install-strip .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ - clean-generic clean-libtool clean-noinstLTLIBRARIES \ - clean-pkgmodexecLTLIBRARIES cscopelist-am ctags ctags-am \ - distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-pkgmodexecLTLIBRARIES install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ - uninstall-pkgmodexecLTLIBRARIES + clean-generic clean-libtool clean-pkgmodexecLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkgmodexecLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am uninstall-pkgmodexecLTLIBRARIES .PRECIOUS: Makefile diff --git a/pkgs/hawk.spec.in b/pkgs/hawk.spec.in index c9b60426..1a92da72 100644 --- a/pkgs/hawk.spec.in +++ b/pkgs/hawk.spec.in @@ -5,10 +5,12 @@ %define __brp_remove_la_files /bin/true %define source_date_epoch_from_changelog 0 -%define enable_mod_ffi 0 -%define enable_mod_mysql 0 +%define enable_mod_ffi 1 +%define enable_mod_memc 1 +%define enable_mod_mysql 1 +%define enable_mod_uci 0 -Summary: HAWK Interpreter +Summary: Hawk Interpreter Name: @PACKAGE_NAME@ Version: @PACKAGE_VERSION@ Release: 1%{?dist} @@ -21,24 +23,64 @@ Source0: %{name}-%{version}.tar.gz %if %{enable_mod_ffi} ## prep_cif_var() available since 3.0.11 -BuildRequires: libffi-devel >= 3.0.11 +BuildRequires: libffi-devel%{?_isa} >= 3.0.11 +%endif +%if %{enable_mod_memc} +BuildRequires: libmemcached-devel%{?_isa} >= 1.0.18 %endif %if %{enable_mod_mysql} -BuildRequires: mysql-devel +BuildRequires: mariadb-connector-c-devel%{?_isa} +%endif +%if %{enable_mod_uci} +BuildRequires: libuci-devel%{?_isa} %endif BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) %description -HAWK Interpreter +Hawk Interpreter + +%if %{enable_mod_ffi} +%package ffi +Summary: Hawk ffi module +Group: System Environment/Libraries +Requires: @PACKAGE_NAME@ = %{version} +Requires: libffi%{?_isa} >= 3.0.11 + +%description ffi +This package contains the ffi module file for Hawk. +%endif + +%if %{enable_mod_memc} +%package memc +Summary: Hawk memc module +Group: System Environment/Libraries +Requires: @PACKAGE_NAME@ = %{version} +Requires: libmemcached-libs%{?_isa} >= 1.0.18 + +%description memc +This package contains the memc module file for Hawk. +%endif + +%if %{enable_mod_mysql} +%package mysql +Summary: Hawk mysql module +Group: System Environment/Libraries +Requires: @PACKAGE_NAME@ = %{version} +## tricky to specify the right mysql/mariadb client library. +Requires: mariadb-connector-c%{?_isa} + +%description mysql +This package contains the mysql module file for Hawk. +%endif %package devel -Summary: Development files for HAWK +Summary: Development files for Hawk Group: System Environment/Libraries Requires: @PACKAGE_NAME@ = %{version} %description devel -The header files and libraries for developing applications with HAWK. +The header files and libraries for developing applications with Hawk. %prep %setup -q @@ -51,10 +93,9 @@ CFLAGS="${RPM_OPT_FLAGS} -fPIC" CXXFLAGS="${RPM_OPT_FLAGS} -fPIC" ./configure \ --prefix=%{_prefix} \ --libdir=%{_libdir} \ --sysconfdir=%{_sysconfdir} \ - --enable-static=yes \ - --enable-shared=no \ + --enable-static=yes \ + --enable-shared=yes \ --enable-static-module=yes \ - --enable-dynamic-module=yes \ --enable-wide-char="yes:2w" \ --enable-intmax=no \ --enable-fltmax=no \ @@ -67,6 +108,11 @@ CFLAGS="${RPM_OPT_FLAGS} -fPIC" CXXFLAGS="${RPM_OPT_FLAGS} -fPIC" ./configure \ %else --enable-mod-ffi=no \ %endif +%if %{enable_mod_memc} + --enable-mod-memcached=yes \ +%else + --enable-mod-memcached=no \ +%endif %if %{enable_mod_mysql} --with-mysql=yes \ --enable-mod-mysql=yes \ @@ -74,8 +120,7 @@ CFLAGS="${RPM_OPT_FLAGS} -fPIC" CXXFLAGS="${RPM_OPT_FLAGS} -fPIC" ./configure \ --with-mysql=no \ --enable-mod-mysql=no \ %endif - --enable-mod-memcached=no \ - --enable-mod-sed=yes \ + --enable-mod-sed=yes:static \ --enable-mod-uci=no ##CC=gcc44 CXX=g++44 make @@ -86,6 +131,7 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig rm -f %{buildroot}%{_bindir}/uni-case rm -f %{buildroot}%{_bindir}/uni-prop rm -f %{buildroot}%{_bindir}/hawk[0-9][0-9] ## delete binaries from the samples directory +rm -rf %{buildroot}%{_libdir}/libhawk-*.la %{buildroot}%{_libdir}/libhawk-*.a ## delete static libraries of dynamic modules %check make check @@ -102,9 +148,25 @@ rm -rf "%{buildroot}" %files %defattr(-,root,root) %{_bindir}/hawk +%{_libdir}/libhawk.so* + +%if %{enable_mod_ffi} +%files ffi +%{_libdir}/libhawk-ffi.so* +%endif + +%if %{enable_mod_memc} +%files memc +%{_libdir}/libhawk-memc.so* +%endif + +%if %{enable_mod_mysql} +%files mysql +%{_libdir}/libhawk-mysql.so* +%endif %files devel %defattr(-,root,root) %{_includedir}/* -%{_libdir}/*.a -%{_libdir}/*.la +%{_libdir}/libhawk.a +%{_libdir}/libhawk.la diff --git a/samples/Makefile.in b/samples/Makefile.in index 176a7e89..e49393af 100644 --- a/samples/Makefile.in +++ b/samples/Makefile.in @@ -98,7 +98,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ diff --git a/t/Makefile.in b/t/Makefile.in index e1f51300..1f10d3c9 100644 --- a/t/Makefile.in +++ b/t/Makefile.in @@ -98,7 +98,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ diff --git a/tools/Makefile.in b/tools/Makefile.in index 604afb3a..f4f76140 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -97,7 +97,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \ $(top_srcdir)/m4/ax_cxx_namespaces.m4 \ $(top_srcdir)/m4/ax_lib_mysql.m4 $(top_srcdir)/m4/ax_numval.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/hawk_mod.m4 \ $(top_srcdir)/m4/hawk_try_cflags.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \