new controls dialog; using gconf instead of hgw
[drnoksnes] / gui / Makefile
1 PKGS:=gtk+-2.0 hildon-1 hildon-fm-2 libhildonmime gconf-2.0 gnome-vfs-2.0 x11
2 CPPFLAGS:=$(shell pkg-config --cflags $(PKGS))
3 LDLIBS:=$(shell pkg-config --libs $(PKGS))
4
5 -include config.mk
6
7 # The about dialog will use this
8 CPPFLAGS+=-DGAME_VERSION=$(GAME_VERSION)
9
10 GETTEXT_PACKAGE:=drnoksnes_plugin
11 ifeq ($(CONF_NLS), 1)
12         CPPFLAGS += -DCONF_NLS=1 -DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\"
13 endif
14
15 # Some hardcoded paths
16 GAME_SHARE_PATH=/usr/share/games/drnoksnes
17 GAME_PLUGIN_PATH=/usr/lib/drnoksnes_plugin.so
18 GAME_CONF_PATH=$(GAME_SHARE_PATH)/drnoksnes.conf
19 GAME_BIN_PATH=/usr/games/drnoksnes
20 GAME_GAME_PATH=/usr/games/wrapper/games/drnoksnes.game
21 GAME_BANNER_PATH=/usr/share/pixmaps/osso-games-startup-drnoksnes.png
22
23 M4:=m4
24 M4DEFS:= -DGAME_VERSION=$(GAME_VERSION) -DGAME_PLUGIN_PATH=$(GAME_PLUGIN_PATH)
25 M4DEFS+= -DGAME_CONF_PATH=$(GAME_CONF_PATH) -DGAME_BIN_PATH=$(GAME_BIN_PATH)
26 M4DEFS+= -DGAME_GAME_PATH=$(GAME_GAME_PATH) -DGAME_BANNER_PATH=$(GAME_BANNER_PATH)
27 ifdef MAEMO_VERSION
28 M4DEFS+= -DMAEMO -DMAEMO_MAJOR=$(MAEMO_VERSION)
29 endif
30
31 XGETTEXT:=xgettext
32 XGETTEXT_OPTS:=--default-domain=$(GETTEXT_PACKAGE) --from-code=UTF-8 \
33         --language=C --msgid-bugs-address=maemo@javispedro.com \
34         --keyword=_ --keyword=N_
35 EXTRA_GETTEXT_SRCS:=buttons.inc
36
37 SRCS:=plugin.c state.c save.c controls.c keys.c settings.c about.c \
38          cellrendererkey.c
39 OBJS:=$(SRCS:.c=.o)
40
41 POT:=$(GETTEXT_PACKAGE).pot
42 PO_FILES:=$(wildcard i18n/*.po)
43 MO_FILES:=$(PO_FILES:.po=.mo)
44 LANGS:=$(basename $(notdir $(PO_FILES)))
45
46 DATA_FILES:=drnoksnes.conf drnoksnes.desktop drnoksnes.game 
47 DATA_FILES+=drnoksnes.service drnoksnes.startup.service
48 DATA_FILES+=drnoksnes.schemas
49
50 all: drnoksnes_plugin.so $(DATA_FILES) $(MO_FILES)
51
52 drnoksnes_plugin.so: $(OBJS)
53         $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
54
55 $(POT): $(SRCS) $(EXTRA_GETTEXT_SRCS)
56         $(XGETTEXT) $(XGETTEXT_OPTS) -o$@ $^
57
58 $(MO_FILES): %.mo: %.po
59         msgfmt -o $@ $<
60
61 $(PO_FILES): %: $(POT)
62         msgmerge -U $@ $(POT)
63         @touch $@
64         
65 clean: 
66         rm -f drnoksnes_plugin.so *.o
67         rm -f $(POT) $(MO_FILES)
68         rm -f $(DATA_FILES)
69
70 %: %.m4
71         $(M4) $(M4DEFS) $^ > $@
72
73 install: all
74         install -d $(DESTDIR)$(GAME_SHARE_PATH)
75         install drnoksnes_plugin.so $(DESTDIR)$(GAME_PLUGIN_PATH)
76         install -m 0644 drnoksnes.conf $(DESTDIR)$(GAME_CONF_PATH)
77         install -m 0644 drnoksnes.desktop $(DESTDIR)/usr/share/applications/hildon/
78         install -m 0644 drnoksnes.game $(DESTDIR)$(GAME_GAME_PATH)
79         install -m 0644 drnoksnes.service $(DESTDIR)/usr/share/dbus-1/services/
80         install -m 0644 drnoksnes.startup.service $(DESTDIR)/usr/share/dbus-1/services/
81         install -m 0644 icons/main_26.png $(DESTDIR)/usr/share/icons/hicolor/26x26/hildon/drnoksnes.png
82         install -m 0644 icons/main_40.png $(DESTDIR)/usr/share/icons/hicolor/40x40/hildon/drnoksnes.png
83         install -m 0644 icons/main_48.png $(DESTDIR)/usr/share/icons/hicolor/48x48/hildon/drnoksnes.png
84         install -m 0644 icons/main_64.png $(DESTDIR)/usr/share/icons/hicolor/scalable/hildon/drnoksnes.png
85         install -m 0644 icons/banner.png $(DESTDIR)$(GAME_BANNER_PATH)
86         install -m 0644 drnoksnes.schemas $(DESTDIR)/usr/share/gconf/schemas/
87 ifneq ($(GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL),1)
88         gconftool-2 --makefile-install-rule $(DESTDIR)/usr/share/gconf/schemas/drnoksnes.schemas > /dev/null
89 endif
90         for lang in $(LANGS); do \
91                 install -d $(DESTDIR)/usr/share/locale/$$lang/LC_MESSAGES ; \
92                 install -m 0644 i18n/$$lang.mo \
93                  $(DESTDIR)/usr/share/locale/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo ; \
94         done
95
96 .PHONY: all clean install
97