#
export DESTDIR := $(R)
-.PHONY: install.bindir
-install.bindir:
- @[ -d $(R)$(bindir) ] || $(INSTALL) -d -m 755 $(R)$(bindir)
-
-.PHONY: install.sbindir
-install.sbindir:
- @[ -d $(R)$(sbindir) ] || $(INSTALL) -d -m 755 $(R)$(sbindir)
-
-.PHONY: install.dirs
-install.dirs: install.bindir install.sbindir
- @$(INSTALL) -d -m 755 $(R)$(mandir)
- @$(INSTALL) -d -m 755 $(R)$(RUNDIR)
- @$(INSTALL) -d -m 700 $(R)$(logdir)
- @$(INSTALL) -d -m 700 $(R)$(radacctdir)
- @$(INSTALL) -d -m 755 $(R)$(datadir)
- @$(INSTALL) -d -m 755 $(R)$(dictdir)
-
DICTIONARIES := $(wildcard share/dictionary*)
install.share: $(addprefix $(R)$(dictdir)/,$(notdir $(DICTIONARIES)))
#
ALL_INSTALL := $(patsubst %rlm_test.la,,$(ALL_INSTALL))
-install: install.dirs install.share install.man
+install: install.share install.man
+ @$(INSTALL) -d -m 700 $(R)$(logdir)
+ @$(INSTALL) -d -m 700 $(R)$(radacctdir)
ifneq ($(RADMIN),)
ifneq ($(RGROUP),)
$(eval -include ${${TGT}_DEPS}))
endif
+# Build rules for installation subdirectories
+$(foreach D,$(sort $(dir ${ALL_INSTALL})),\
+ $(eval $(call ADD_INSTALL_RULE.dir,${D})))
+
+
scan: ${ALL_PLISTS}
.PHONY: clean.scan
install: $${${1}_INSTALLDIR}/$(notdir ${1})
# Install executable ${1}
- $${${1}_INSTALLDIR}/$(notdir ${1}): $${${1}_BUILD}/${1}
+ $${${1}_INSTALLDIR}/$(notdir ${1}): $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR}
@$(ECHO) INSTALL ${1}
- $(Q)$${PROGRAM_INSTALL} -d -m 755 $${${1}_INSTALLDIR}
$(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/bin/${1} $${${1}_INSTALLDIR}/
$(Q)$${${1}_POSTINSTALL}
install: $${${1}_INSTALLDIR}/$(notdir ${1})
# Install static library ${1}
- $${${1}_INSTALLDIR}/$(notdir ${1}): ${1}
+ $${${1}_INSTALLDIR}/$(notdir ${1}): ${1} | $${${1}_INSTALLDIR}
@$(ECHO) INSTALL ${1}
- $(Q)$${PROGRAM_INSTALL} -d -m 755 $${${1}_INSTALLDIR}
$(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/
$(Q)$${${1}_POSTINSTALL}
install: $${${1}_INSTALLDIR}/$(notdir ${1})
# Install libtool library ${1}
- $${${1}_INSTALLDIR}/$(notdir ${1}): $${${1}_BUILD}/${1}
+ $${${1}_INSTALLDIR}/$(notdir ${1}): $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR}
@$(ECHO) INSTALL ${1}
- $(Q)$${PROGRAM_INSTALL} -d -m 755 $${${1}_INSTALLDIR}
$(Q)$${PROGRAM_INSTALL} -c -m 755 $${LOCAL_FLAGS_MIN} $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/
$(Q)$${${1}_POSTINSTALL}
install: ${2}/$(notdir ${1})
# Install manual page ${1}
- ${2}/$(notdir ${1}): ${1}
+ ${2}/$(notdir ${1}): ${1} | ${2}
@$(ECHO) INSTALL $(notdir ${1})
- $(Q)[ -d ${2} ] || $${PROGRAM_INSTALL} -d -m 755 ${2}
$(Q)$${PROGRAM_INSTALL} -c -m 644 ${1} ${2}/
endef
+# ADD_INSTALL_RULE.dir - Parameterized "function" that adds a new rule
+# and phony target for installing a directory
+#
+# USE WITH EVAL
+#
+define ADD_INSTALL_RULE.dir
+ # Install directory
+ .PHONY: ${1}
+ ${1}:
+ @$(ECHO) INSTALL -d -m 755 ${1}
+ $(Q)$${PROGRAM_INSTALL} -d -m 755 ${1}
+endef
+
+
# ADD_INSTALL_TARGET - Parameterized "function" that adds a new rule
# which installs everything for the target.
#
-install: install.sbindir $(R)$(sbindir)/checkrad
+install: $(R)$(sbindir)/checkrad
-$(R)$(sbindir)/checkrad: src/main/checkrad
+$(R)$(sbindir)/checkrad: src/main/checkrad | $(R)$(sbindir)
@echo INSTALL $(notdir $<)
@$(INSTALL) -m 755 $< $(R)$(sbindir)
-install: install.bindir $(R)$(bindir)/radlast
+install: $(R)$(bindir)/radlast
-$(R)$(bindir)/radlast: src/main/radlast
+$(R)$(bindir)/radlast: src/main/radlast | $(R)$(bindir)
@echo INSTALL $(notdir $<)
@$(INSTALL) -m 755 $< $(R)$(bindir)
-install: install.bindir $(R)$(bindir)/radtest
+install: $(R)$(bindir)/radtest
-$(R)$(bindir)/radtest: src/main/radtest
+$(R)$(bindir)/radtest: src/main/radtest | $(R)$(bindir)
@echo INSTALL $(notdir $<)
@$(INSTALL) -m 755 $< $(R)$(bindir)
-install: install.bindir $(R)$(bindir)/radzap
+install: $(R)$(bindir)/radzap
-$(R)$(bindir)/radzap: src/main/radzap
+$(R)$(bindir)/radzap: src/main/radzap | $(R)$(bindir)
@echo INSTALL $(notdir $<)
@$(INSTALL) -m 755 $< $(R)$(bindir)
TGT_LDLIBS := @mod_ldflags@
ifneq "$(TARGETNAME)" ""
-install: install.bindir $(R)$(bindir)/rad_counter
+install: $(R)$(bindir)/rad_counter
-$(R)$(bindir)/rad_counter: src/modules/rlm_counter/rad_counter
+$(R)$(bindir)/rad_counter: src/modules/rlm_counter/rad_counter | $(R)$(bindir)
@$(INSTALL) -m 755 src/modules/rlm_counter/rad_counter $(R)$(bindir)/
endif