]> git.sur5r.net Git - i3/i3/blob - i3-config-wizard/i3-config-wizard.mk
fix compilation with older xcb-util with -DXCB_COMPAT (Thanks okraits)
[i3/i3] / i3-config-wizard / i3-config-wizard.mk
1 ALL_TARGETS += i3-config-wizard/i3-config-wizard
2 INSTALL_TARGETS += install-i3-config-wizard
3 CLEAN_TARGETS += clean-i3-config-wizard
4
5 i3_config_wizard_SOURCES_GENERATED  = i3-config-wizard/cfgparse.tab.c i3-config-wizard/cfgparse.yy.c
6 i3_config_wizard_SOURCES           := $(filter-out $(i3_config_wizard_SOURCES_GENERATED),$(wildcard i3-config-wizard/*.c))
7 i3_config_wizard_HEADERS           := $(wildcard i3-config-wizard/*.h)
8 i3_config_wizard_CFLAGS             = $(XCB_CFLAGS) $(XCB_KBD_CFLAGS) $(X11_CFLAGS) $(PANGO_CFLAGS)
9 i3_config_wizard_LIBS               = $(XCB_LIBS) $(XCB_KBD_LIBS) $(X11_LIBS) $(PANGO_LIBS)
10
11 i3_config_wizard_OBJECTS := $(i3_config_wizard_SOURCES_GENERATED:.c=.o) $(i3_config_wizard_SOURCES:.c=.o)
12
13
14 i3-config-wizard/%.o: i3-config-wizard/%.c $(i3_config_wizard_HEADERS)
15         echo "[i3-config-wizard] CC $<"
16         $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_config_wizard_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -c -o $@ $<
17
18 i3-config-wizard/cfgparse.yy.c: i3-config-wizard/cfgparse.l i3-config-wizard/cfgparse.tab.o $(i3_config_wizard_HEADERS)
19         echo "[i3-config-wizard] LEX $<"
20         $(FLEX) -i -o $@ $<
21
22 i3-config-wizard/cfgparse.tab.c: i3-config-wizard/cfgparse.y $(i3_config_wizard_HEADERS)
23         echo "[i3-config-wizard] YACC $<"
24         $(BISON) --debug --verbose -b $(basename $< .y) -d $<
25
26 i3-config-wizard/i3-config-wizard: libi3.a $(i3_config_wizard_OBJECTS)
27         echo "[i3-config-wizard] Link i3-config-wizard"
28         $(CC) $(I3_LDFLAGS) $(LDFLAGS) -o $@ $(filter-out libi3.a,$^) $(LIBS) $(i3_config_wizard_LIBS)
29
30 install-i3-config-wizard: i3-config-wizard/i3-config-wizard
31         echo "[i3-config-wizard] Install"
32         $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
33         $(INSTALL) -m 0755 i3-config-wizard/i3-config-wizard $(DESTDIR)$(PREFIX)/bin/
34
35 clean-i3-config-wizard:
36         echo "[i3-config-wizard] Clean"
37         rm -f $(i3_config_wizard_OBJECTS) $(i3_config_wizard_SOURCES_GENERATED) i3-config-wizard/i3-config-wizard i3-config-wizard/cfgparse.{output,dot}