[discover client] Add device accessors
[petitboot] / rules.mk
1
2
3 VPATH = $(srcdir)
4
5 CPPFLAGS += -I$(top_srcdir) -I$(top_srcdir)/lib -I$(builddir)
6
7 # we need paths to be overridable at build-time
8 DEFS += '-DPREFIX="$(prefix)"' '-DPKG_SHARE_DIR="$(pkgdatadir)"' \
9         '-DLOCAL_STATE_DIR="$(localstatedir)"'
10
11 #uis = ui/twin/pb-twin
12 uis = ui/test/pb-test
13 #parsers = native yaboot kboot
14 parsers = kboot
15 artwork = background.jpg cdrom.png hdd.png usbpen.png tux.png cursor.gz
16
17 log_objs = lib/log/log.o
18 talloc_objs = lib/talloc/talloc.o
19 list_objs = lib/list/list.o
20 waiter_objs = lib/waiter/waiter.o
21 server_objs = lib/pb-protocol/pb-protocol.o
22 parser_objs = discover/parser.o discover/parser-utils.o \
23               $(foreach p, $(parsers), discover/$(p)-parser.o)
24
25 parser_test_objs = parser-test.o $(parser_objs)
26
27 all: $(uis) discover/pb-discover
28
29 # twin gui
30 ui/twin/pb-twin: LDFLAGS+=$(twin_LDFLAGS)
31 ui/twin/pb-twin: CFLAGS+=$(twin_CFLAGS)
32
33 pb_twin_objs = ui/twin/pb-twin.o ui/common/devices.o
34
35 ui/twin/pb-twin: $(pb_twin_objs)
36         $(LINK.o) -o $@ $^
37
38 # test ui
39 pb_test_objs = ui/test/pb-test.o ui/common/discover-client.o \
40         $(log_objs) $(talloc_objs) $(server_objs) $(list_objs)
41
42 ui/test/pb-test: $(pb_test_objs)
43         $(LINK.o) -o $@ $^
44
45 # discovery daemon
46 #pb_discover_objs = discover/params.o discover/parser.o discover/paths.o \
47 #             discover/yaboot-cfg.o \
48 #             $(foreach p,$(parsers),discover/$(p)-parser.o)
49
50 pb_discover_objs = discover/pb-discover.o discover/udev.o \
51                    discover/discover-server.o discover/device-handler.o \
52                    discover/paths.o $(talloc_objs) $(server_objs) \
53                    $(parser_objs) $(list_objs) $(waiter_objs) $(log_objs)
54
55 discover/pb-discover: $(pb_discover_objs)
56         $(LINK.o) -o $@ $^
57
58
59 parser-test: $(parser_test_objs)
60         $(LINK.o) -o $@ $^
61
62 install: all
63         $(INSTALL) -d $(DESTDIR)$(sbindir)/
64         $(INSTALL) discover/pb-discover $(uis) $(DESTDIR)$(sbindir)/
65         $(INSTALL) -d $(DESTDIR)$(pkgdatadir)/artwork/
66         $(INSTALL) $(addprefix $(top_srcdir)/ui/twin/artwork/,$(artwork)) \
67                 $(DESTDIR)$(pkgdatadir)/artwork/
68
69 dist:   $(PACKAGE)-$(VERSION).tar.gz
70
71 check:  parser-test
72         devices/parser-test.sh
73
74 distcheck: dist
75         tar -xvf $(PACKAGE)-$(VERSION).tar.gz
76         cd $(PACKAGE)-$(VERSION) && make check
77
78 $(PACKAGE)-$(VERSION).tar.gz: $(PACKAGE)-$(VERSION)
79         tar czvf $@ $^
80
81 $(PACKAGE)-$(VERSION): clean
82         for f in $$(git-ls-files); do \
83                 d=$@/$$(dirname $$f); \
84                 mkdir -p $$d; \
85                 cp -a $$f $$d; \
86         done
87 clean:
88         rm -rf $(PACKAGE)-$(VERSION)
89         rm -f $(uis)
90         rm -f $(pb_twin_objs) $(pb_test_objs)
91         rm -f $(pb_discover_objs)
92         rm -f discover/pb-discover
93         rm -f ui/test/pb-test
94