Files
strongswan-ext/conf/Makefile.am
T
Tobias Brunner bd1c9f1eac conf: Fix out-of-tree build from distribution
It worked from the repository, where strongswan.conf.5.main is generated
in the build dir, but not from the distribution where it is located in
the source dir, so explicitly create it in the source dir.
2014-02-27 12:02:13 +01:00

164 lines
5.0 KiB
Makefile

# make this relative to the location of strongswan.conf
strongswanconfdir = `dirname $(strongswan_conf)`
strongswanddir = $(strongswanconfdir)/strongswan.d
charonconfdir = $(strongswanddir)/charon
# copy these files also to /usr/share
templatesdir = $(pkgdatadir)/templates/config
optionstemplatedir = $(templatesdir)/strongswan.d
pluginstemplatedir = $(templatesdir)/plugins
options = \
options/attest.opt \
options/charon.opt \
options/charon-logging.opt \
options/imcv.opt \
options/manager.opt \
options/medsrv.opt \
options/pacman.opt \
options/pool.opt \
options/starter.opt \
options/tnc.opt \
options/tools.opt
plugins = \
plugins/android_log.opt \
plugins/attr.opt \
plugins/attr-sql.opt \
plugins/certexpire.opt \
plugins/coupling.opt \
plugins/dhcp.opt \
plugins/dnscert.opt \
plugins/duplicheck.opt \
plugins/eap-aka.opt \
plugins/eap-aka-3ggp2.opt \
plugins/eap-dynamic.opt \
plugins/eap-gtc.opt \
plugins/eap-peap.opt \
plugins/eap-radius.opt \
plugins/eap-sim.opt \
plugins/eap-simaka-sql.opt \
plugins/eap-tls.opt \
plugins/eap-tnc.opt \
plugins/eap-ttls.opt \
plugins/error-notify.opt \
plugins/gcrypt.opt \
plugins/ha.opt \
plugins/imc-attestation.opt \
plugins/imc-os.opt \
plugins/imc-scanner.opt \
plugins/imc-swid.opt \
plugins/imc-test.opt \
plugins/imv-attestation.opt \
plugins/imv-os.opt \
plugins/imv-scanner.opt \
plugins/imv-test.opt \
plugins/ipseckey.opt \
plugins/led.opt \
plugins/kernel-klips.opt \
plugins/kernel-libipsec.opt \
plugins/kernel-netlink.opt \
plugins/kernel-pfroute.opt \
plugins/load-tester.opt \
plugins/lookip.opt \
plugins/ntru.opt \
plugins/openssl.opt \
plugins/pkcs11.opt \
plugins/radattr.opt \
plugins/random.opt \
plugins/resolve.opt \
plugins/socket-default.opt \
plugins/sql.opt \
plugins/stroke.opt \
plugins/systime-fix.opt \
plugins/tnc-ifmap.opt \
plugins/tnc-imc.opt \
plugins/tnc-imv.opt \
plugins/tnc-pdp.opt \
plugins/tnccs-11.opt \
plugins/tnccs-20.opt \
plugins/unbound.opt \
plugins/updown.opt \
plugins/whitelist.opt \
plugins/xauth-eap.opt \
plugins/xauth-pam.opt
alloptions = $(options) $(plugins)
confsnippets = $(alloptions:opt=conf)
# we only install snippets for enabled plugins
plugins_install_tmp = $(charon_plugins:%=plugins/%.tmp)
plugins_install_src = $(charon_plugins:%=plugins/%.conf)
# only install snippets for enabled components
# has to be defined via autoconf as we can't do it with automake conditionals
options_install_src = $(strongswan_options:%=options/%.conf)
templates_DATA = strongswan.conf
optionstemplate_DATA = $(options_install_src)
pluginstemplate_DATA = $(plugins_install_src)
man_MANS = \
strongswan.conf.5
BUILT_SOURCES = default.conf strongswan.conf.5.main $(confsnippets)
EXTRA_DIST = format-options.py strongswan.conf default.opt \
default.conf strongswan.conf.5.main $(alloptions) $(confsnippets)
CLEANFILES=$(man_MANS)
.opt.conf:
$(AM_V_GEN) \
case "$<" in \
*plugins/*) \
sed \
-e "s:\@PLUGIN_NAME\@:`basename $< .opt`:" \
$(srcdir)/default.opt | cat - $< | \
$(PYTHON) $(srcdir)/format-options.py -f conf -r charon.plugins > $(srcdir)/$@ \
;; \
*) \
$(PYTHON) $(srcdir)/format-options.py -f conf -r charon.plugins $< > $(srcdir)/$@ \
;; \
esac
# we need another implicit rule to generate files from the generic template only
# if the rules above did not catch it. this requires an intermediate step that
# generates a copy of the generic config template.
$(plugins_install_tmp):
@mkdir -p $(builddir)/plugins
@cp $(srcdir)/default.conf $(builddir)/$@
.tmp.conf:
$(AM_V_GEN) \
sed \
-e "s:\@PLUGIN_NAME\@:`basename $< .tmp`:" \
$(builddir)/$< > $(builddir)/$@
strongswan.conf.5.main: $(alloptions)
$(AM_V_GEN) \
cd $(srcdir) && $(PYTHON) format-options.py -f man $(alloptions) > $@
strongswan.conf.5: strongswan.conf.5.head strongswan.conf.5.main strongswan.conf.5.tail
$(AM_V_GEN) \
cat strongswan.conf.5.head $(srcdir)/strongswan.conf.5.main strongswan.conf.5.tail > $@
clean-local:
rm -f plugins/*.conf plugins/*.tmp
maintainer-clean-local:
cd $(srcdir) && \
rm -f $(confsnippets) default.conf plugins/*.conf plugins/*.tmp
install-data-local: $(plugins_install_src)
test -e "$(DESTDIR)${strongswanconfdir}" || $(INSTALL) -d "$(DESTDIR)$(strongswanconfdir)"
test -e "$(DESTDIR)${strongswanddir}" || $(INSTALL) -d "$(DESTDIR)$(strongswanddir)"
test -e "$(DESTDIR)${charonconfdir}" || $(INSTALL) -d "$(DESTDIR)$(charonconfdir)"
test -e "$(DESTDIR)$(strongswanconfdir)/strongswan.conf" || $(INSTALL) -m 644 $(srcdir)/strongswan.conf $(DESTDIR)$(strongswanconfdir)/strongswan.conf || true
for f in $(options_install_src); do \
name=`basename $$f`; \
test -f "$(DESTDIR)$(strongswanddir)/$$name" || $(INSTALL) -m 644 "$(srcdir)/$$f" "$(DESTDIR)$(strongswanddir)/$$name" || true; \
done
for f in $(plugins_install_src); do \
name=`basename $$f`; \
if test -f "$$f"; then dir=; else dir="$(srcdir)/"; fi; \
test -f "$(DESTDIR)$(charonconfdir)/$$name" || $(INSTALL) -m 644 "$$dir$$f" "$(DESTDIR)$(charonconfdir)/$$name" || true; \
done