]>
Commit | Line | Data |
---|---|---|
1 | ############################################################################### | |
2 | # # | |
3 | # IPFire.org - A linux based firewall # | |
4 | # Copyright (C) 2012-2013 IPFire Network Development Team # | |
5 | # # | |
6 | # This program is free software: you can redistribute it and/or modify # | |
7 | # it under the terms of the GNU General Public License as published by # | |
8 | # the Free Software Foundation, either version 3 of the License, or # | |
9 | # (at your option) any later version. # | |
10 | # # | |
11 | # This program is distributed in the hope that it will be useful, # | |
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
14 | # GNU General Public License for more details. # | |
15 | # # | |
16 | # You should have received a copy of the GNU General Public License # | |
17 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # | |
18 | # # | |
19 | ############################################################################### | |
20 | ||
21 | ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} | |
22 | AM_MAKEFLAGS = --no-print-directory | |
23 | AUTOMAKE_OPTIONS = color-tests | |
24 | ||
25 | # remove target it the command fails | |
26 | .DELETE_ON_ERROR: | |
27 | ||
28 | # keep itermediate files | |
29 | .SECONDARY: | |
30 | ||
31 | bashcompletiondir= $(datadir)/bash-completion/completions | |
32 | libexecdir = $(prefix)/lib | |
33 | pkgconfigdatadir = $(datadir)/pkgconfig | |
34 | pppdir = $(sysconfdir)/ppp | |
35 | systemconfigdir = $(datadir)/network | |
36 | sysctldir = $(prefix)/lib/sysctl.d | |
37 | tmpfilesdir = $(prefix)/lib/tmpfiles.d | |
38 | udevrulesdir = $(udevdir)/rules.d | |
39 | ||
40 | networkdir = $(libexecdir)/network | |
41 | helpersdir = $(networkdir)/helpers | |
42 | ||
43 | macrosdir = $(libexecdir)/firewall/macros | |
44 | ||
45 | hooksdir = $(networkdir)/hooks | |
46 | hooks_configsdir = $(hooksdir)/configs | |
47 | hooks_portsdir = $(hooksdir)/ports | |
48 | hooks_zonesdir = $(hooksdir)/zones | |
49 | ||
50 | triggersdir = $(networkdir)/triggers | |
51 | ||
52 | logdir = $(localestatedir)/log/network | |
53 | ||
54 | CLEANFILES = | |
55 | DISTCLEANFILES = | |
56 | EXTRA_DIST = | |
57 | INSTALL_DIRS = | |
58 | INSTALL_EXEC_HOOKS = | |
59 | UNINSTALL_EXEC_HOOKS = | |
60 | noinst_DATA = | |
61 | ||
62 | AM_CFLAGS = $(OUR_CFLAGS) | |
63 | AM_CPPFLAGS = $(OUR_CPPFLAGS) | |
64 | AM_LDFLAGS = $(OUR_LDFLAGS) | |
65 | ||
66 | DISTCHECK_CONFIGURE_FLAGS = \ | |
67 | --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir) \ | |
68 | --with-udevdir=$$dc_install_base/$(udevdir) | |
69 | ||
70 | install-directories-hook: | |
71 | $(MKDIR_P) $(addprefix $(DESTDIR),$(INSTALL_DIRS)) | |
72 | ||
73 | INSTALL_EXEC_HOOKS += \ | |
74 | install-directories-hook | |
75 | ||
76 | # ------------------------------------------------------------------------------ | |
77 | ||
78 | AM_V_XSLT = $(AM_V_XSLT_$(V)) | |
79 | AM_V_XSLT_ = $(AM_V_XSLT_$(AM_DEFAULT_VERBOSITY)) | |
80 | AM_V_XSLT_0 = @echo " XSLT " $@; | |
81 | ||
82 | # ------------------------------------------------------------------------------ | |
83 | ||
84 | dist_doc_DATA = \ | |
85 | README \ | |
86 | docs/CODING_STYLE \ | |
87 | docs/COPYING | |
88 | ||
89 | dist_sbin_SCRIPTS = \ | |
90 | src/dhclient-script \ | |
91 | src/firewall-config \ | |
92 | src/firewall4 \ | |
93 | src/firewall6 \ | |
94 | src/network | |
95 | ||
96 | network_SCRIPTS = \ | |
97 | src/functions/functions | |
98 | ||
99 | CLEANFILES += \ | |
100 | src/functions/functions | |
101 | ||
102 | EXTRA_DIST += \ | |
103 | src/functions/functions.in | |
104 | ||
105 | dist_network_SCRIPTS = \ | |
106 | src/functions/functions.at \ | |
107 | src/functions/functions.auth \ | |
108 | src/functions/functions.bonding \ | |
109 | src/functions/functions.bridge \ | |
110 | src/functions/functions.cli \ | |
111 | src/functions/functions.cli.firewall \ | |
112 | src/functions/functions.colors \ | |
113 | src/functions/functions.config \ | |
114 | src/functions/functions.conntrack \ | |
115 | src/functions/functions.constants \ | |
116 | src/functions/functions.constants-firewall \ | |
117 | src/functions/functions.db \ | |
118 | src/functions/functions.description \ | |
119 | src/functions/functions.device \ | |
120 | src/functions/functions.dhclient \ | |
121 | src/functions/functions.dhcpd \ | |
122 | src/functions/functions.distro \ | |
123 | src/functions/functions.dns \ | |
124 | src/functions/functions.dummy \ | |
125 | src/functions/functions.editor \ | |
126 | src/functions/functions.firewall \ | |
127 | src/functions/functions.firewall-policy \ | |
128 | src/functions/functions.firewall-zones \ | |
129 | src/functions/functions.he \ | |
130 | src/functions/functions.hook \ | |
131 | src/functions/functions.hostapd \ | |
132 | src/functions/functions.hotplug \ | |
133 | src/functions/functions.http \ | |
134 | src/functions/functions.interrupts \ | |
135 | src/functions/functions.ip \ | |
136 | src/functions/functions.ipsec \ | |
137 | src/functions/functions.ipsec-pool \ | |
138 | src/functions/functions.iptables \ | |
139 | src/functions/functions.ip-tunnel \ | |
140 | src/functions/functions.ipv4 \ | |
141 | src/functions/functions.ipv6 \ | |
142 | src/functions/functions.list \ | |
143 | src/functions/functions.lock \ | |
144 | src/functions/functions.logging \ | |
145 | src/functions/functions.macros \ | |
146 | src/functions/functions.modem \ | |
147 | src/functions/functions.phy \ | |
148 | src/functions/functions.ports \ | |
149 | src/functions/functions.ppp \ | |
150 | src/functions/functions.pppoe-server \ | |
151 | src/functions/functions.radvd \ | |
152 | src/functions/functions.route \ | |
153 | src/functions/functions.routing \ | |
154 | src/functions/functions.serial \ | |
155 | src/functions/functions.service \ | |
156 | src/functions/functions.settings \ | |
157 | src/functions/functions.stp \ | |
158 | src/functions/functions.sysctl \ | |
159 | src/functions/functions.system \ | |
160 | src/functions/functions.triggers \ | |
161 | src/functions/functions.usb \ | |
162 | src/functions/functions.util \ | |
163 | src/functions/functions.vlan \ | |
164 | src/functions/functions.vpn \ | |
165 | src/functions/functions.vpn-security-policies \ | |
166 | src/functions/functions.wireless \ | |
167 | src/functions/functions.wpa_supplicant \ | |
168 | src/functions/functions.zone \ | |
169 | src/network-radvd-config \ | |
170 | src/dhclient-helper \ | |
171 | src/header-config \ | |
172 | src/header-port \ | |
173 | src/header-zone \ | |
174 | src/ppp/dialer \ | |
175 | src/ppp/pppoe-server | |
176 | ||
177 | dist_helpers_SCRIPTS = \ | |
178 | src/helpers/dhcpd-config-helper \ | |
179 | src/helpers/firewall-kernel-init \ | |
180 | src/helpers/hostapd-config-helper \ | |
181 | src/helpers/ipsec-updown \ | |
182 | src/helpers/pppd-angel \ | |
183 | src/helpers/wpa_supplicant | |
184 | ||
185 | bin_PROGRAMS = \ | |
186 | src/inetcalc | |
187 | ||
188 | src_inetcalc_SOURCES = \ | |
189 | src/inetcalc.c | |
190 | ||
191 | dist_hooks_configs_SCRIPTS = \ | |
192 | src/hooks/configs/dhcp \ | |
193 | src/hooks/configs/ipv4-static \ | |
194 | src/hooks/configs/ipv6-auto \ | |
195 | src/hooks/configs/ipv6-static \ | |
196 | src/hooks/configs/pppoe-server | |
197 | ||
198 | dist_hooks_ports_SCRIPTS = \ | |
199 | src/hooks/ports/bonding \ | |
200 | src/hooks/ports/dummy \ | |
201 | src/hooks/ports/ethernet \ | |
202 | src/hooks/ports/vlan \ | |
203 | src/hooks/ports/wireless-ap \ | |
204 | src/hooks/ports/wireless-mesh | |
205 | ||
206 | dist_hooks_zones_SCRIPTS = \ | |
207 | src/hooks/zones/6to4-tunnel \ | |
208 | src/hooks/zones/bridge \ | |
209 | src/hooks/zones/modem \ | |
210 | src/hooks/zones/pppoe \ | |
211 | src/hooks/zones/wireless | |
212 | ||
213 | # ------------------------------------------------------------------------------ | |
214 | ||
215 | ppp_SCRIPTS = \ | |
216 | src/ppp/ip-updown | |
217 | ||
218 | CLEANFILES += \ | |
219 | src/ppp/ip-updown | |
220 | ||
221 | EXTRA_DIST += \ | |
222 | src/ppp/ip-updown.in | |
223 | ||
224 | INSTALL_DIRS += \ | |
225 | $(pppdir) \ | |
226 | $(logdir) | |
227 | ||
228 | ppp-install-hook: | |
229 | ln -svf ip-updown $(DESTDIR)$(pppdir)/ip-pre-up | |
230 | ln -svf ip-updown $(DESTDIR)$(pppdir)/ip-up | |
231 | ln -svf ip-updown $(DESTDIR)$(pppdir)/ip-down | |
232 | ln -svf ip-updown $(DESTDIR)$(pppdir)/ipv6-up | |
233 | ln -svf ip-updown $(DESTDIR)$(pppdir)/ipv6-down | |
234 | ||
235 | ppp-uninstall-hook: | |
236 | rm -f $(DESTDIR)$(pppdir)/ip-{down,pre-up,up} | |
237 | rm -f $(DESTDIR)$(pppdir)/ipv6-{down,up} | |
238 | ||
239 | INSTALL_EXEC_HOOKS += ppp-install-hook | |
240 | UNINSTALL_EXEC_HOOKS += ppp-uninstall-hook | |
241 | ||
242 | # ------------------------------------------------------------------------------ | |
243 | ||
244 | if HAVE_SYSTEMD | |
245 | systemdsystemunit_DATA = \ | |
246 | src/systemd/firewall4.service \ | |
247 | src/systemd/firewall6.service \ | |
248 | src/systemd/firewall-init.service \ | |
249 | src/systemd/network-init.service \ | |
250 | src/systemd/network@.service | |
251 | ||
252 | CLEANFILES += \ | |
253 | $(systemdsystemunit_DATA) | |
254 | ||
255 | INSTALL_DIRS += \ | |
256 | $(systemdsystemunitdir) | |
257 | endif | |
258 | ||
259 | EXTRA_DIST += \ | |
260 | src/systemd/firewall4.service.in \ | |
261 | src/systemd/firewall6.service.in \ | |
262 | src/systemd/firewall-init.service.in \ | |
263 | src/systemd/network-init.service.in \ | |
264 | src/systemd/network@.service.in | |
265 | ||
266 | # ------------------------------------------------------------------------------ | |
267 | ||
268 | systemconfig_vpndir = $(systemconfigdir)/vpn | |
269 | ||
270 | dist_systemconfig_vpn_security_policies_DATA = \ | |
271 | config/vpn/security-policies/performance \ | |
272 | config/vpn/security-policies/system | |
273 | ||
274 | systemconfig_vpn_security_policiesdir = $(systemconfig_vpndir)/security-policies | |
275 | ||
276 | # ------------------------------------------------------------------------------ | |
277 | ||
278 | dist_sysctl_DATA = \ | |
279 | src/sysctl/network.conf | |
280 | ||
281 | # ------------------------------------------------------------------------------ | |
282 | ||
283 | dist_bashcompletion_SCRIPTS = \ | |
284 | src/bash-completion/network | |
285 | ||
286 | # ------------------------------------------------------------------------------ | |
287 | ||
288 | dist_tmpfiles_DATA = \ | |
289 | src/tmpfiles/network.conf | |
290 | ||
291 | # ------------------------------------------------------------------------------ | |
292 | ||
293 | if HAVE_UDEV | |
294 | dist_udev_SCRIPTS = \ | |
295 | src/udev/network-hotplug \ | |
296 | src/udev/network-hotplug-rename \ | |
297 | src/udev/network-hotplug-serial | |
298 | ||
299 | dist_udevrules_DATA = \ | |
300 | src/udev/rules.d/50-serial-whitelist.rules \ | |
301 | src/udev/rules.d/60-net.rules | |
302 | ||
303 | INSTALL_DIRS += \ | |
304 | $(udevdir) \ | |
305 | $(udevrulesdir) | |
306 | endif | |
307 | ||
308 | # ------------------------------------------------------------------------------ | |
309 | ||
310 | pkgconfigdata_DATA = \ | |
311 | src/network.pc | |
312 | ||
313 | CLEANFILES += \ | |
314 | $(pkgconfigdata_DATA) | |
315 | ||
316 | EXTRA_DIST += \ | |
317 | src/network.pc.in | |
318 | ||
319 | # ------------------------------------------------------------------------------ | |
320 | ||
321 | dist_macros_DATA = \ | |
322 | src/macros/DHCP \ | |
323 | src/macros/HTTP \ | |
324 | src/macros/HTTPS \ | |
325 | src/macros/WWW | |
326 | ||
327 | # ------------------------------------------------------------------------------ | |
328 | ||
329 | INSTALL_DIRS += \ | |
330 | $(triggersdir) | |
331 | ||
332 | # ------------------------------------------------------------------------------ | |
333 | ||
334 | MANPAGES = \ | |
335 | man/firewall-settings.8 \ | |
336 | man/network.8 \ | |
337 | man/network-color.8 \ | |
338 | man/network-description.8 \ | |
339 | man/network-device.8 \ | |
340 | man/network-dhcp.8 \ | |
341 | man/network-dns-server.8 \ | |
342 | man/network-performance-tuning.8 \ | |
343 | man/network-port.8 \ | |
344 | man/network-quick-start.8 \ | |
345 | man/network-route.8 \ | |
346 | man/network-route-static.8 \ | |
347 | man/network-settings.8 \ | |
348 | man/network-zone.8 \ | |
349 | man/network-zone-6to4-tunnel.8 \ | |
350 | man/network-zone-bridge.8 \ | |
351 | man/network-zone-config-pppoe-server.8 \ | |
352 | man/network-zone-modem.8 \ | |
353 | man/network-zone-pppoe.8 \ | |
354 | man/network-zone-wireless.8 | |
355 | ||
356 | MANPAGES_XML = $(patsubst %.8,%.xml,$(MANPAGES)) | |
357 | MANPAGES_HTML = $(patsubst %.xml,%.html,$(MANPAGES_XML)) | |
358 | ||
359 | .PHONY: man | |
360 | man: $(MANPAGES) $(MANPAGES_HTML) | |
361 | ||
362 | man_MANS = \ | |
363 | $(MANPAGES) | |
364 | ||
365 | noinst_DATA += \ | |
366 | $(MANPAGES_HTML) | |
367 | ||
368 | CLEANFILES += \ | |
369 | $(man_MANS) \ | |
370 | $(MANPAGES_HTML) | |
371 | ||
372 | EXTRA_DIST += \ | |
373 | $(MANPAGES_XML) \ | |
374 | man/custom-html.xsl | |
375 | ||
376 | XSLTPROC_FLAGS = \ | |
377 | --nonet \ | |
378 | --stringparam man.output.quietly 1 \ | |
379 | --stringparam funcsynopsis.style ansi \ | |
380 | --stringparam man.th.extra1.suppress 1 \ | |
381 | --stringparam man.authors.section.enabled 1 \ | |
382 | --stringparam man.copyright.section.enabled 1 | |
383 | ||
384 | XSLTPROC_COMMAND_MAN = \ | |
385 | $(AM_V_XSLT)$(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) \ | |
386 | http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< | |
387 | ||
388 | XSLTPROC_COMMAND_HTML = \ | |
389 | $(AM_V_XSLT)$(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) $(srcdir)/man/custom-html.xsl $< | |
390 | ||
391 | man/%.8: man/%.xml | |
392 | $(XSLTPROC_COMMAND_MAN) | |
393 | ||
394 | man/%.html: man/%.xml man/custom-html.xsl | |
395 | $(XSLTPROC_COMMAND_HTML) | |
396 | ||
397 | # ------------------------------------------------------------------------------ | |
398 | ||
399 | substitutions = \ | |
400 | '|PACKAGE_NAME=$(PACKAGE_NAME)|' \ | |
401 | '|PACKAGE_URL=$(PACKAGE_URL)|' \ | |
402 | '|PACKAGE_VERSION=$(PACKAGE_VERSION)|' \ | |
403 | '|prefix=$(prefix)|' \ | |
404 | '|exec_prefix=$(exec_prefix)|' \ | |
405 | '|sbindir=$(sbindir)|' \ | |
406 | '|networkdir=$(networkdir)|' \ | |
407 | '|helpersdir=$(helpersdir)|' | |
408 | ||
409 | SED_PROCESS = \ | |
410 | $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ | |
411 | $(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \ | |
412 | < $< > $@ | |
413 | ||
414 | src/functions/functions: src/functions/functions.in Makefile | |
415 | $(SED_PROCESS) | |
416 | ||
417 | src/ppp/ip-updown: src/ppp/ip-updown.in Makefile | |
418 | $(SED_PROCESS) | |
419 | ||
420 | src/systemd/%: src/systemd/%.in Makefile | |
421 | $(SED_PROCESS) | |
422 | ||
423 | src/%.pc: src/%.pc.in Makefile | |
424 | $(SED_PROCESS) | |
425 | ||
426 | INSTALL_DIRS += \ | |
427 | $(sbindir) | |
428 | ||
429 | install-exec-hook: $(INSTALL_EXEC_HOOKS) | |
430 | ||
431 | uninstall-hook: $(UNINSTALL_EXEC_HOOKS) | |
432 | ||
433 | # - testsuite ------------------------------------------------------------------ | |
434 | ||
435 | TESTS_ENVIRONMENT = \ | |
436 | PATH=$(top_builddir)/src:$(PATH) \ | |
437 | functions=$(abs_builddir)/src/functions/functions \ | |
438 | networkdir=$(abs_srcdir)/src/functions \ | |
439 | testdir=$(top_srcdir)/test | |
440 | ||
441 | dist_check_DATA = \ | |
442 | test/constants.sh \ | |
443 | test/test-functions | |
444 | ||
445 | dist_check_SCRIPTS = \ | |
446 | $(TESTS) | |
447 | ||
448 | TESTS = \ | |
449 | test/load-library \ | |
450 | test/functions/ip/ip_detect_protocol \ | |
451 | test/functions/ip/ip_get_prefix \ | |
452 | test/functions/ip/ip_net_is_valid \ | |
453 | test/functions/ip/ip_is_valid \ | |
454 | test/functions/ip/ip_network_is_subnet_of \ | |
455 | test/functions/ip/ip_prefix_is_valid \ | |
456 | test/functions/ip/ip_protocol_is_supported \ | |
457 | test/functions/ip/ip_split_prefix |