X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=rules.mk;h=1d9299df905bf97d70d57f78dfee34ce8e452cc1;hp=c844c05dcf4b9602189c0130e64efec911f5763a;hb=8ecee33a2f5fb8562c4db7fa55f50f25a57dc8f3;hpb=c3fba67209e17941cd1024892c5f78c50ed3aecd diff --git a/rules.mk b/rules.mk index c844c05..1d9299d 100644 --- a/rules.mk +++ b/rules.mk @@ -2,6 +2,7 @@ VPATH = $(srcdir) CPPFLAGS += -I$(top_srcdir) -I$(top_srcdir)/lib -I$(builddir) +LDFLAGS += $(CFLAGS) # we need paths to be overridable at build-time DEFS += '-DPREFIX="$(prefix)"' '-DPKG_SHARE_DIR="$(pkgdatadir)"' \ @@ -16,8 +17,7 @@ parser_test = test/parser-test # install targets and components daemons = $(pb_discover) -#parsers = kboot native yaboot (todo) -parsers = kboot +parsers = kboot yaboot uis = $(pb_test) tests = $(parser_test) @@ -33,23 +33,27 @@ rules = utils/99-petitboot.rules list_objs = lib/list/list.o log_objs = lib/log/log.o protocol_objs = lib/pb-protocol/pb-protocol.o +system_objs = lib/system/system.o talloc_objs = lib/talloc/talloc.o waiter_objs = lib/waiter/waiter.o # daemon objs -parser_objs = discover/parser.o discover/parser-utils.o \ +parser_objs = discover/parser.o discover/parser-conf.o discover/paths.o \ $(foreach p, $(parsers), discover/$(p)-parser.o) -discover_objs = discover/udev.o discover/discover-server.o \ - discover/device-handler.o discover/paths.o +discover_objs = discover/udev.o discover/discover-server.o \ + discover/device-handler.o discover/paths.o discover/parser-utils.o # client objs -ui_common_objs = ui/common/discover-client.o +ui_common_objs = ui/common/discover-client.o ui/common/url.o ncurses_objs = twin_objs = ui/twin/pb-twin.o +# Makefiles +makefiles = Makefile $(top_srcdir)/rules.mk + # object collections -lib_objs = $(list_objs) $(log_objs) $(protocol_objs) $(talloc_objs) \ - $(waiter_objs) +lib_objs = $(list_objs) $(log_objs) $(protocol_objs) $(system_objs) \ + $(talloc_objs) $(waiter_objs) daemon_objs = $(lib_objs) $(parser_objs) $(discover_objs) @@ -58,21 +62,25 @@ client_objs = $(lib_objs) $(ui_common_objs) all: $(uis) $(daemons) # ncurses cui -pb_cui_objs = $(client_objs) $(ncurses_objs) ui/ncurses/ps3-cui.o +pb_cui_objs = $(client_objs) $(ncurses_objs) ui/ncurses/ps3-cui.o \ + ui/common/ps3.o +$(pb_cui_objs): $(makefiles) -$(pb_cui): LDFLAGS += -lncurses +$(pb_cui): LDFLAGS += -lps3-utils -lmenu -lform -lncurses $(pb_cui): $(pb_cui_objs) $(LINK.o) -o $@ $^ # test ui pb_test_objs = $(client_objs) ui/test/pb-test.o +$(pb_test_objs): $(makefiles) $(pb_test): $(pb_test_objs) $(LINK.o) -o $@ $^ # twin gui pb_twin_objs = $(client_objs) $(twin_objs) ui/twin/ps3-twin.o +$(pb_twin_objs): $(makefiles) $(pb_twin): LDFLAGS+=$(twin_LDFLAGS) $(LIBTWIN) $(pb_twin): CFLAGS+=$(twin_CFLAGS) @@ -82,12 +90,14 @@ $(pb_twin): $(pb_twin_objs) # discovery daemon pb_discover_objs = $(daemon_objs) discover/pb-discover.o +$(pb_discover_objs): $(makefiles) $(pb_discover): $(pb_discover_objs) $(LINK.o) -o $@ $^ # parser-test -parser_test_objs = $(parser_objs) test/parser-test.o +parser_test_objs = $(lib_objs) $(parser_objs) test/parser-test.o +$(parser_test_objs): $(makefiles) $(parser_test): $(parser_test_objs) $(LINK.o) -o $@ $^ @@ -101,7 +111,7 @@ install: all $(rules) $(INSTALL) $(addprefix $(top_srcdir)/ui/twin/artwork/,$(artwork)) \ $(DESTDIR)$(pkgdatadir)/artwork/ $(INSTALL) -d $(DESTDIR)$(pkgdatadir)/utils - $(INSTALL) $(top_srcdir)/$(rules) $(DESTDIR)$(pkgdatadir)/utils + $(INSTALL) -m 644 $(top_srcdir)/$(rules) $(DESTDIR)$(pkgdatadir)/utils dist: $(PACKAGE)-$(VERSION).tar.gz @@ -116,10 +126,10 @@ $(PACKAGE)-$(VERSION).tar.gz: $(PACKAGE)-$(VERSION) tar czvf $@ $^ $(PACKAGE)-$(VERSION): clean - for f in $$(git-ls-files); do \ + for f in $$(git --git-dir=$(top_srcdir)/.git ls-files); do \ d=$@/$$(dirname $$f); \ mkdir -p $$d; \ - cp -a $$f $$d; \ + cp -a $(top_srcdir)/$$f $$d; \ done clean: