INCLTDL = @INCLTDL@
USE_SHARED_LIBS = @USE_SHARED_LIBS@
-USER_STATIC_LIBS = @USE_STATIC_LIBS@
+USE_STATIC_LIBS = @USE_STATIC_LIBS@
+STATIC_MODULES = @STATIC_MODULES@
fi
AC_CONFIG_SUBDIRS(libltdl)
+dnl #
+dnl # Allow the user to specify a list of modules to be linked
+dnl # statically to the server.
+dnl #
+STATIC_MODULES=
+AC_ARG_WITH(static_modules,
+[ --with-static-modules=QUOTED-MODULE-LIST],[
+ for i in $withval; do
+ STATIC_MODULES="$STATIC_MODULES -dlpreopen ../modules/rlm_$i/rlm_$i.la"
+ done
+])
+
dnl See what include-style is used by the make program.
dnl AC_MSG_CHECKING(include style for make)
dnl echo "include /dev/null" > testmake.$$
AC_SUBST(USE_SHARED_LIBS)
USE_STATIC_LIBS=$enable_static
AC_SUBST(USE_STATIC_LIBS)
+AC_SUBST(STATIC_MODULES)
AC_OUTPUT(\
./Make.inc \
CFLAGS += -I../include
LDFLAGS += -L../lib
LIBS += -lradius
-MODULE_LIBS =
+MODULE_LIBS = $(STATIC_MODULES)
+
+#
+# Not using shared libraries, add in ALL known static modules
+# at build time.
+#
+ifneq ($(USE_SHARED_LIBS),yes)
+MODULE_LIBS += $(shell for x in ../modules/rlm_*/rlm_*.la;do echo -dlpreopen $$x;done)
+endif
all: radiusd radwho radzap raduse radclient