@@ -67,12 +67,18 @@ DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -mimpure-text], [ DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic -Wl,-G,-z,textoff], [ DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -Wl,-G,-z,textoff], [ DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -dynamiclib -flat_namespace -undefined suppress -bind_at_load], [ DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib -flat_namespace -undefined suppress -bind_at_load], [ - AC_MSG_RESULT(cant) - AC_MSG_ERROR([We are unable to make shared objects.]) + DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-Wl,-dynamiclib -Wl,-flat_namespace -Wl,-undefined,suppress -Wl,-bind_at_load], [ + DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamic -flat_namespace -undefined suppress], [ + DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamic], [ + AC_MSG_RESULT(cant) + AC_MSG_ERROR([We are unable to make shared objects.]) + ]) + ]) + ]) ]) ]) ]) ]) ]) @@ -182,11 +188,11 @@ fi if test -n "$6"; then AC_DEFINE($6, [1], [Define to 1 if you have $2 from $5]) fi LDFLAGS="$LDFLAGS $LIBSPECFLAGS" - LIBS="$LIBS -l$1" + LIBS="-l$1 $LIBS" ], [ CFLAGS="$OLDCFLAGS" CPPFLAGS="$OLDCPPFLAGS" AC_MSG_ERROR(Could not find $3) ]) @@ -194,5 +200,23 @@ AC_MSG_ERROR(Could not find $5) ], $LIBSPECFLAGS) ;; esac ]) + +AC_DEFUN(DC_ASK_SMALL, [ + SMALL=0 + AC_ARG_ENABLE(small, AC_HELP_STRING([--enable-small], [Enable small build of libconfig. (disabled)]), [ + case $enableval in + yes) + SMALL=1 + ;; + esac + ]) + + if test $SMALL = 0; then + dnl Use opennet if it's available AND not small + DC_ASK_OPTLIB(opennet, fopen_net, opennet.h, [ Enable opennet support (auto)], libopennet, HAVE_LIBOPENNET, HAVE_OPENNET_H) + else + AC_DEFINE(ENABLE_SMALL, [1], [Define to 1 if you want to produce a minimalistic build.]) + fi +])