summaryrefslogtreecommitdiffstats
path: root/src/bin/keactrl/Makefile.am
blob: f8a1d569e48ccc63694e00c3784562dc60b76911 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
SUBDIRS = . tests

# Install keactrl in sbin and the keactrl.conf required by the keactrl
# in etc. keactrl will look for its configuration file in the etc folder.
# If the default location needs to be changed it may be achieved by
# setting KEACTRL_CONF environment variable.
sbin_SCRIPTS  = keactrl
KEA_CONFIGFILES = kea-dhcp4.conf kea-dhcp6.conf kea-dhcp-ddns.conf \
                  kea-ctrl-agent.conf
if HAVE_SYSREPO
KEA_CONFIGFILES += kea-netconf.conf
endif

CONFIGFILES = keactrl.conf $(KEA_CONFIGFILES)

man_MANS = keactrl.8
DISTCLEANFILES = keactrl keactrl.conf $(man_MANS)
CLEANFILES = $(KEA_CONFIGFILES)
EXTRA_DIST = keactrl.in keactrl.conf.in kea-dhcp4.conf.pre \
             kea-dhcp6.conf.pre kea-dhcp-ddns.conf.pre \
             kea-ctrl-agent.conf.pre kea-netconf.conf.pre \
             $(man_MANS) keactrl.xml

# *.conf files are not really sources used for building other targets, but we need
# these files to be generated before make install is called.
BUILT_SOURCES = $(KEA_CONFIGFILES)

if GENERATE_DOCS

keactrl.8: keactrl.xml
	@XSLTPROC@ --novalid --xinclude @NONET@ -o $@ \
        http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $(srcdir)/keactrl.xml

else

$(man_MANS):
	@echo Man generation disabled.  Creating dummy $@.  Configure with --enable-generate-docs to enable it.
	@echo Man generation disabled.  Remove this file, configure with --enable-generate-docs, and rebuild Kea > $@

endif

kea-dhcp4.conf: kea-dhcp4.conf.pre
	$(top_builddir)/tools/path_replacer.sh \
    $(top_srcdir)/src/bin/keactrl/kea-dhcp4.conf.pre $@

kea-dhcp6.conf: kea-dhcp6.conf.pre
	$(top_builddir)/tools/path_replacer.sh \
    $(top_srcdir)/src/bin/keactrl/kea-dhcp6.conf.pre $@

kea-dhcp-ddns.conf: kea-dhcp-ddns.conf.pre
	$(top_builddir)/tools/path_replacer.sh \
    $(top_srcdir)/src/bin/keactrl/kea-dhcp-ddns.conf.pre $@

kea-ctrl-agent.conf: kea-ctrl-agent.conf.pre
	$(top_builddir)/tools/path_replacer.sh \
    $(top_srcdir)/src/bin/keactrl/kea-ctrl-agent.conf.pre $@

kea-netconf.conf: kea-netconf.conf.pre
	$(top_builddir)/tools/path_replacer.sh \
    $(top_srcdir)/src/bin/keactrl/kea-netconf.conf.pre $@

if INSTALL_CONFIGURATIONS

# Since Kea 1.3.0 release we have 4 different Kea configuration files
# instead of one, i.e. kea-dhcp4.conf, kea-dhcp6.conf, kea-dhcp-ddns.conf
# and kea-ctrl-agent.conf. To facilitate the use of these new files
# the keactrl.conf has been updated in Kea 1.3.0 release. Therefore,
# we install new version of thea keactrl.conf file unconditionally.
# To preserve any user modifications to the old version of the file,
# this old file is backed up as keactrl.conf.bak.
install-data-local:
	$(mkinstalldirs) $(DESTDIR)/@sysconfdir@/@PACKAGE@
	for f in $(CONFIGFILES) ; do	\
		if test -f $(DESTDIR)$(sysconfdir)/@PACKAGE@/$$f && \
		   test $$f = "keactrl.conf"; then \
			mv $(DESTDIR)$(sysconfdir)/@PACKAGE@/$$f \
			   $(DESTDIR)$(sysconfdir)/@PACKAGE@/$$f.bak; \
		fi; \
		if test ! -f $(DESTDIR)$(sysconfdir)/@PACKAGE@/$$f; then \
			${INSTALL_DATA} $$f $(DESTDIR)$(sysconfdir)/@PACKAGE@/; \
		fi; \
	done

endif