build/Makefile.kernel (raw)
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 |
include build/Makefile.incl dir = kernel CPPFLAGS += $(GLIB_CFLAGS) $(GMODULE_CFLAGS) $(XFT_CFLAGS) $(X_CFLAGS) \ -DG_LOG_DOMAIN=\"Openbox\" LIBS += $(GLIB_LIBS) $(GMODULE_LIBS) $(XFT_LIBS) $(X_LIBS) $(XINERAMA_LIBS) \ -lobrender LDFLAGS += -Lrender -export-dynamic target = openbox3 sources = action.c client.c config.c dispatch.c engine.c event.c group.c \ extensions.c focus.c frame.c grab.c menu.c openbox.c \ parse.c plugin.c prop.c screen.c stacking.c timer.c xerror.c \ parse.lex.c parse.tab.c srcdir := $(srcdir)/$(dir) target := $(addprefix $(dir)/,$(target)) objects := $(addprefix $(dir)/,$(sources:.c=.o)) sources := $(addprefix $(srcdir)/,$(sources)) deps := $(addprefix $(depdir)/,$(objects:.o=.d)) depdir := $(depdir)/$(dir) all: $(target) $(target): $(objects) render/libobrender.la $(LINK) -o $@ $^ $(LIBS) $(LDFLAGS) # kill the implicit .c.y rule $(srcdir)/%.c: $(srcdir)/%.y @ $(dir)/%.o: $(srcdir)/%.c $(depdir)/%.d $(COMPILE) -c -o $@ $< %.lex.c: %.l $(FLEX) -o$@ $< %.tab.c: %.y $(BISON) -d -o $@ $< $(depdir)/%.d: $(srcdir)/%.c @echo Building dependancies for $< $(INSTALL) -d $(depdir) @$(CC) $(CPPFLAGS) $(CFLAGS) -w -MM -MF $@ -MQ $(<:.c=.o) $< install: $(INSTALL) -d $(DESTDIR)$(bindir)/ $(INSTALL) $(target) $(DESTDIR)$(bindir)/$(notdir $(target)) uninstall: -$(RM) $(DESTDIR)$(bindir)/$(notdir $(target)) -rmdir $(DESTDIR)$(bindir)/ clean: $(LTCLEAN) $(target) $(RM) $(objects) $(srcdir)/*\~ $(RM) $(filter %.lex.c, $(sources)) $(RM) $(filter %.tab.c, $(sources)) $(RM) $(patsubst %.c,%.h, $(filter %.tab.c, $(sources))) distclean: -include $(deps) .PHONY: all install uninstall clean distclean |