Link with libradius, too
[freeradius.git] / src / modules / rlm_eap / Makefile.in
index 2cef9de..1e20588 100644 (file)
@@ -1,37 +1,55 @@
+#
+# $Id$
+#
+
 TARGET      = @targetname@
-SRCS        = rlm_eap.c eap.c mem.c state.c
+SRCS        = rlm_eap.c eap.c mem.c
 HEADERS     = eap.h rlm_eap.h
-RLM_CFLAGS  = $(INCLTDL)
-#RLM_LIBS    = $(shell for x in types/rlm_eap*/rlm_eap*.la;do echo -dlpreopen $$x;done)
-RLM_INSTALL = install-types
-RLM_SUBDIRS = @eaptypes@
+RLM_CFLAGS  = $(INCLTDL) -Ilibeap
+CLIENTLIBS  = libeap/$(LIBPREFIX)freeradius-eap.la
+RLM_LIBS    = libeap/$(LIBPREFIX)freeradius-eap.la $(LIBLTDL)
+RLM_INSTALL = install-subdirs
+RLM_SUBDIRS = libeap @eaptypes@
+RLM_UTILS   = radeapclient
 
+#
+# Not using shared libraries, add in ALL known static modules
+# at build time.
+#
+#ifneq ($(USE_SHARED_LIBS),yes)
+#RLM_LIBS  += $(shell for x in types/rlm_eap*/rlm_eap*.la;do echo -dlpreopen $$x;done)
+#endif
 
-$(STATIC_OBJS): $(HEADERS)
+.PHONY: all install-subdirs common
 
 #
-#  Statically link MD5 and LEAP.  They don't require any extra magic.
+# We need $(LIBPREFIX)freeradius-eap.la before we can build anything else
 #
-#STATIC_OBJS   += $(shell ls -1 types/rlm_eap_leap/rlm_eap_md5.a types/rlm_eap_md5/rlm_eap_leap.a 2>/dev/null)
+all: common
 
-$(DYNAMIC_OBJS): $(HEADERS)
+$(LT_OBJS): $(HEADERS)
 
-all: 
-       @$(MAKE) $(MFLAGS) static dynamic
-       @$(MAKE) $(MFLAGS) WHAT_TO_MAKE=$@ common
+radeapclient: radeapclient.lo $(CLIENTLIBS)
+       $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(RLM_LDFLAGS) -o radeapclient radeapclient.lo $(LIBRADIUS) $(CLIENTLIBS) $(LIBS) $(OPENSSL_LIBS)
 
-allclean:
-       @$(MAKE) $(MFLAGS) WHAT_TO_MAKE=clean common
+radeapclient.lo: radeapclient.c $(HEADERS)
+       $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) $(RLM_CFLAGS) -c radeapclient.c
 
-install-types:
+install-subdirs:
        @$(MAKE) $(MFLAGS) WHAT_TO_MAKE=install common
+       $(LIBTOOL) --mode=install $(INSTALL) -m 755 $(INSTALLSTRIP) radeapclient$(EXEEXT) $(R)$(bindir)
 
-common:
-       @for dir in $(RLM_SUBDIRS); do  \
-               echo "Making $(WHAT_TO_MAKE) in $$dir..."; \
-               (cd $$dir && $(MAKE) $(MFLAGS) $(WHAT_TO_MAKE)) || exit 1;\
-       done
+.PHONY: common $(RLM_SUBDIRS)
+
+common: $(RLM_SUBDIRS)
+
+types: libeap
+
+$(RLM_SUBDIRS):
+       @echo "Making $(WHAT_TO_MAKE) in $@..."
+       @$(MAKE) $(MFLAGS) -C $@ $(WHAT_TO_MAKE)
+
+libeap/$(LIBPREFIX)freeradius-eap.la: libeap
 
 ## this uses the RLM_CFLAGS and RLM_LIBS and SRCS defs to make TARGET.
 include ../rules.mak
-