VFLAGS = -DRADIUSD_MAJOR_VERSION=$(RADIUSD_MAJOR_VERSION)
VFLAGS += -DRADIUSD_MINOR_VERSION=$(RADIUSD_MINOR_VERSION)
MODULE_LIBS = $(STATIC_MODULES)
-BINARIES = radiusd radwho radclient radmin radconf2xml radattr
+BINARIES = radiusd$(EXEEXT) radwho$(EXEEXT) radclient$(EXEEXT) radmin$(EXEEXT) radconf2xml$(EXEEXT) radattr$(EXEEXT)
#
# The RADIUS sniffer
#
PCAP_LIBS = @PCAP_LIBS@
ifneq ($(PCAP_LIBS),)
-BINARIES += radsniff
+BINARIES += radsniff$(EXEEXT)
endif
#
$(SERVER_OBJS): $(INCLUDES)
-radiusd: $(SERVER_OBJS) $(MODULE_OBJS) $(LIBRADIUS)
+radiusd$(EXEEXT): $(SERVER_OBJS) $(MODULE_OBJS) $(LIBRADIUS)
$(LIBTOOL) --quiet --mode=link $(CC) -export-dynamic -dlopen self \
$(LDFLAGS) $(LINK_MODE) -o $@ $(SERVER_OBJS) \
$(MODULE_LIBS) $(LIBRADIUS) $(LIBS) $(SNMP_LIBS) \
MSCHAP_OBJS := ../modules/rlm_mschap/smbdes.lo ../modules/rlm_mschap/mschap.lo
-radclient: radclient.lo $(MSCHAP_OBJS) $(LIBRADIUS)
+radclient$(EXEEXT): radclient.lo $(MSCHAP_OBJS) $(LIBRADIUS)
@echo LINK $< ...
@$(LIBTOOL) --quiet --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o radclient radclient.lo $(MSCHAP_OBJS) $(LIBRADIUS) $(LIBS)
radsniff.lo: radsniff.c $(INCLUDES) ../include/radsniff.h
-radsniff: radsniff.lo $(LIBRADIUS)
+radsniff$(EXEEXT): radsniff.lo $(LIBRADIUS)
@echo LINK $@ $<
@$(LIBTOOL) --quiet --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o radsniff radsniff.lo $(LIBRADIUS) $(LIBS) $(PCAP_LIBS)
radwho.lo: radwho.c $(INCLUDES)
$(LIBTOOL) --mode=compile $(CC) $(CFLAGS) -c radwho.c
-radwho: radwho.lo util.lo log.lo conffile.lo $(LIBRADIUS)
+radwho$(EXEEXT): radwho.lo util.lo log.lo conffile.lo $(LIBRADIUS)
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o radwho radwho.lo util.lo log.lo conffile.lo $(LIBRADIUS) $(LIBS)
-radmin: radmin.lo $(LIBRADIUS) util.lo log.lo conffile.lo
+radmin$(EXEEXT): radmin.lo $(LIBRADIUS) util.lo log.lo conffile.lo
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o $@ $^ $(LIBREADLINE) $(LIBS)
-radconf2xml: radconf2xml.lo $(LIBRADIUS) util.lo log.lo conffile.lo
+radconf2xml$(EXEEXT): radconf2xml.lo $(LIBRADIUS) util.lo log.lo conffile.lo
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o $@ $^ $(LIBS)
-radattr: radattr.lo $(LIBRADIUS)
+radattr$(EXEEXT): radattr.lo $(LIBRADIUS)
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o radattr radattr.lo $(LIBRADIUS) $(LIBS)
dhclient.lo: dhclient.c $(INCLUDES)
$(LIBTOOL) --mode=compile $(CC) $(CFLAGS) -c dhclient.c
# Don't install this for now.
-dhclient: dhclient.lo $(LIBRADIUS)
+dhclient$(EXEEXT): dhclient.lo $(LIBRADIUS)
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LINK_MODE) -o dhclient dhclient.lo $(LIBRADIUS) $(LIBS)
clean:
$(LT_OBJS): $(HEADERS)
-radeapclient: radeapclient.lo $(CLIENTLIBS)
+## this uses the RLM_CFLAGS and RLM_LIBS and SRCS defs to make TARGET.
+# This needs to be before the radeapclient rule, as the lhs $(EXEECT)
+# expansion is done as soon as the Makefile is loaded
+include ../rules.mak
+
+radeapclient$(EXEEXT): radeapclient.lo $(CLIENTLIBS)
$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(RLM_LDFLAGS) -o radeapclient radeapclient.lo $(LIBRADIUS) $(CLIENTLIBS) $(LIBS) $(OPENSSL_LIBS)
radeapclient.lo: radeapclient.c $(HEADERS)
@$(MAKE) $(MFLAGS) X=$(X)rlm_eap/ -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