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.
164 lines
5.0 KiB
Makefile
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
|