1#
2# Makefile for OpenzWave Mac OS X applications
3# Greg Satz
4
5# GNU make only
6
7# requires libudev-dev
8
9.SUFFIXES:	.d .cpp .o .a
10.PHONY:	default clean install
11
12
13top_srcdir := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))
14top_builddir ?= $(CURDIR)
15export top_builddir
16PREFIX ?= /usr/local
17export PREFIX
18
19all:
20	LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS)
21	LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS)
22
23install:
24	$(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) $(MAKECMDGOALS)
25	$(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS) $(MAKECMDGOALS)
26
27clean:
28	$(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) $(MAKECMDGOALS)
29	$(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS) $(MAKECMDGOALS)
30
31cpp/src/vers.cpp:
32	LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) $(top_srcdir)/cpp/src/vers.cpp
33
34check: xmltest
35
36include $(top_srcdir)/cpp/build/support.mk
37
38ifeq ($(XMLLINT),)
39xmltest:	$(XMLLINT)
40	$(error xmllint command not found.)
41else
42xmltest:	$(XMLLINT)
43	@$(XMLLINT) --noout --schema $(top_srcdir)/config/device_classes.xsd $(top_srcdir)/config/device_classes.xml
44	@$(XMLLINT) --noout --schema $(top_srcdir)/config/options.xsd $(top_srcdir)/config/options.xml
45	@$(XMLLINT) --noout --schema $(top_srcdir)/config/manufacturer_specific.xsd $(top_srcdir)/config/manufacturer_specific.xml
46	@$(XMLLINT) --noout --schema $(top_srcdir)/config/device_configuration.xsd $(top_srcdir)/config/*/*.xml
47	-@cpp/build/testconfig.pl
48endif
49fulltest:
50	-@cpp/build/testconfig.pl --printwarnings
51
52
53
54dist-update:
55	@echo "Updating List of Distribition Files"
56	@$(GIT) ls-files > .distfiles
57	@$(top_srcdir)/makedist
58
59DIST_FORMATS ?= gzip
60
61include $(top_srcdir)/distfiles.mk
62include $(top_srcdir)/dist.mk
63