Pango! yay. Patch mostly by Mohammed Sameer, fixed some memleaks and ifdeffed by...
[mikachu/openbox.git] / Makefile.am
1 SUBDIRS = m4 po
2
3 themedir        = $(datadir)/themes
4 localedir       = $(datadir)/locale
5 configdir       = $(sysconfdir)/xdg
6 rcdir           = $(configdir)/openbox
7 desktopfilesdir = $(datadir)/gnome/wm-properties
8 pkgconfigdir    = $(libdir)/pkgconfig
9 pubincludedir   = $(includedir)/openbox/@OB_VERSION@/openbox
10 pixmapdir       = $(datadir)/pixmaps
11 xsddir          = $(datadir)/openbox
12 userscriptdir   = $(datadir)/openbox
13
14 theme = TheBear
15
16 AUTOMAKE_OPTIONS = subdir-objects foreign
17
18 ACLOCAL_AMFLAGS = -I m4
19
20 INCLUDES = -I.
21
22 noinst_PROGRAMS = \
23         render/rendertest
24
25 lib_LTLIBRARIES = \
26         parser/libobparser.la \
27         render/libobrender.la
28
29 bin_PROGRAMS = \
30         openbox/openbox \
31         tools/kdetrayproxy/kdetrayproxy \
32         tools/gnome-panel-control/gnome-panel-control
33
34 ## render ##
35
36 render_rendertest_CPPFLAGS = \
37         $(XFT_CFLAGS) \
38         $(GLIB_CFLAGS) \
39         -DG_LOG_DOMAIN=\"RenderTest\"
40 render_rendertest_LDADD = \
41         parser/libobparser.la \
42         render/libobrender.la \
43         $(XFT_LIBS) \
44         $(GLIB_LIBS) \
45         $(PANGO_LIBS) \
46         $(XML_LIBS) \
47         $(X_LIBS)
48 render_rendertest_SOURCES = render/test.c
49
50 render_libobrender_la_CPPFLAGS = \
51         $(X_CFLAGS) \
52         $(XFT_CFLAGS) \
53         $(GLIB_CFLAGS) \
54         $(XML_CFLAGS) \
55         $(PANGO_CFLAGS) \
56         -DG_LOG_DOMAIN=\"ObRender\" \
57         -DDEFAULT_THEME=\"$(theme)\"
58 render_libobrender_la_LDFLAGS = \
59         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
60 render_libobrender_la_SOURCES = \
61         gettext.h \
62         render/color.h \
63         render/color.c \
64         render/font.h \
65         render/font.c \
66         render/geom.h \
67         render/gradient.h \
68         render/gradient.c \
69         render/icon.h \
70         render/image.h \
71         render/image.c \
72         render/instance.h \
73         render/instance.c \
74         render/mask.h \
75         render/mask.c \
76         render/render.h \
77         render/render.c \
78         render/theme.h \
79         render/theme.c
80
81 ## parser ##
82
83 parser_libobparser_la_CPPFLAGS = \
84         $(GLIB_CFLAGS) \
85         $(XML_CFLAGS) \
86         -DG_LOG_DOMAIN=\"ObParser\" \
87         -DLOCALEDIR=\"$(localedir)\" \
88         -DDATADIR=\"$(datadir)\" \
89         -DCONFIGDIR=\"$(configdir)\"
90 parser_libobparser_la_LDFLAGS = \
91         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
92 parser_libobparser_la_SOURCES = \
93         parser/parse.h \
94         parser/parse.c
95
96 ## openbox ##
97
98 openbox_openbox_CPPFLAGS = \
99         $(X_CFLAGS) \
100         $(SM_CFLAGS) \
101         $(XFT_CFLAGS) \
102         $(GLIB_CFLAGS) \
103         $(LIBSN_CFLAGS) \
104         $(XML_CFLAGS) \
105         -DLOCALEDIR=\"$(localedir)\" \
106         -DDATADIR=\"$(datadir)\" \
107         -DCONFIGDIR=\"$(configdir)\" \
108         -DG_LOG_DOMAIN=\"Openbox\"
109 openbox_openbox_LDADD = \
110         $(SM_LIBS) \
111         $(XFT_LIBS) \
112         $(XINERAMA_LIBS) \
113         $(XKB_LIBS) \
114         $(XRANDR_LIBS) \
115         $(VIDMODE_LIBS) \
116         $(XSHAPE_LIBS) \
117         $(GLIB_LIBS) \
118         $(PANGO_LIBS) \
119         $(X_LIBS) \
120         $(LIBSN_LIBS) \
121         $(XML_LIBS) \
122         $(EFENCE_LIBS) \
123         $(LIBINTL) \
124         render/libobrender.la \
125         parser/libobparser.la
126 openbox_openbox_LDFLAGS = -export-dynamic
127 openbox_openbox_SOURCES = \
128         gettext.h \
129         openbox/action.c \
130         openbox/action.h \
131         openbox/client.c \
132         openbox/client.h \
133         openbox/client_list_menu.c \
134         openbox/client_list_menu.h \
135         openbox/client_menu.c \
136         openbox/client_menu.h \
137         openbox/config.c \
138         openbox/config.h \
139         openbox/debug.c \
140         openbox/debug.h \
141         openbox/dock.c \
142         openbox/dock.h \
143         openbox/event.c \
144         openbox/event.h \
145         openbox/extensions.c \
146         openbox/extensions.h \
147         openbox/focus.c \
148         openbox/focus.h \
149         openbox/frame.c \
150         openbox/frame.h \
151         openbox/framerender.c \
152         openbox/framerender.h \
153         openbox/geom.h \
154         openbox/grab.c \
155         openbox/grab.h \
156         openbox/group.c \
157         openbox/group.h \
158         openbox/keyboard.c \
159         openbox/keyboard.h \
160         openbox/keytree.c \
161         openbox/keytree.h \
162         openbox/mainloop.c \
163         openbox/mainloop.h \
164         openbox/menuframe.c \
165         openbox/menuframe.h \
166         openbox/menu.c \
167         openbox/menu.h \
168         openbox/misc.h \
169         openbox/mouse.c \
170         openbox/mouse.h \
171         openbox/moveresize.c \
172         openbox/moveresize.h \
173         openbox/mwm.h \
174         openbox/openbox.c \
175         openbox/openbox.h \
176         openbox/place.c \
177         openbox/place.h \
178         openbox/popup.c \
179         openbox/popup.h \
180         openbox/prop.c \
181         openbox/prop.h \
182         openbox/resist.c \
183         openbox/resist.h \
184         openbox/screen.c \
185         openbox/screen.h \
186         openbox/session.c \
187         openbox/session.h \
188         openbox/stacking.c \
189         openbox/stacking.h \
190         openbox/startupnotify.c \
191         openbox/startupnotify.h \
192         openbox/translate.c \
193         openbox/translate.h \
194         openbox/window.c \
195         openbox/window.h \
196         openbox/xerror.c \
197         openbox/xerror.h
198
199
200 ## kdetrayproxy ##
201
202 tools_kdetrayproxy_kdetrayproxy_CPPFLAGS = \
203         $(X_CFLAGS)
204 tools_kdetrayproxy_kdetrayproxy_LDADD = \
205         $(X_LIBS)
206 tools_kdetrayproxy_kdetrayproxy_SOURCES = \
207         tools/kdetrayproxy/kdetrayproxy.c
208
209
210 ## gnome-panel-control ##
211
212 tools_gnome_panel_control_gnome_panel_control_CPPFLAGS = \
213         $(X_CFLAGS)
214 tools_gnome_panel_control_gnome_panel_control_LDADD = \
215         $(X_LIBS)
216 tools_gnome_panel_control_gnome_panel_control_SOURCES = \
217         tools/gnome-panel-control/gnome-panel-control.c
218
219
220 ## themes ##
221
222 allegro_themedir = $(themedir)/Allegro/openbox-3
223 dist_allegro_theme_DATA = \
224         themes/Allegro/openbox-3/themerc \
225         themes/Allegro/openbox-3/bullet.xbm
226
227 artwiz_themedir = $(themedir)/Artwiz/openbox-3
228 dist_artwiz_theme_DATA = \
229         themes/Artwiz/openbox-3/themerc
230
231 blah41_themedir = $(themedir)/Blah41/openbox-3
232 dist_blah41_theme_DATA = \
233         themes/Blah41/openbox-3/themerc
234
235 om4ob_themedir = $(themedir)/Om4Ob/openbox-3
236 dist_om4ob_theme_DATA = \
237         themes/Om4Ob/openbox-3/themerc \
238         themes/Om4Ob/openbox-3/close_hover.xbm \
239         themes/Om4Ob/openbox-3/close.xbm \
240         themes/Om4Ob/openbox-3/desk_hover.xbm \
241         themes/Om4Ob/openbox-3/desk_toggled.xbm \
242         themes/Om4Ob/openbox-3/desk.xbm \
243         themes/Om4Ob/openbox-3/iconify_hover.xbm \
244         themes/Om4Ob/openbox-3/iconify_pressed.xbm \
245         themes/Om4Ob/openbox-3/iconify.xbm \
246         themes/Om4Ob/openbox-3/max_disabled.xbm \
247         themes/Om4Ob/openbox-3/max_hover.xbm \
248         themes/Om4Ob/openbox-3/max_pressed.xbm \
249         themes/Om4Ob/openbox-3/max_toggled.xbm \
250         themes/Om4Ob/openbox-3/max.xbm \
251         themes/Om4Ob/openbox-3/shade_disabled.xbm \
252         themes/Om4Ob/openbox-3/shade_hover.xbm \
253         themes/Om4Ob/openbox-3/shade_toggled.xbm \
254         themes/Om4Ob/openbox-3/shade.xbm
255
256 thebear_themedir = $(themedir)/TheBear/openbox-3
257 dist_thebear_theme_DATA = \
258         themes/TheBear/openbox-3/themerc
259
260
261 ## public headers ##
262
263 pubinclude_HEADERS = \
264         render/render.h \
265         render/theme.h \
266         parser/parse.h
267
268 nodist_pubinclude_HEADERS = \
269         version.h
270
271 nodist_pkgconfig_DATA = \
272         render/obrender-3.0.pc \
273         parser/obparser-3.0.pc
274
275 ## data ##
276
277 dist_pixmap_DATA = \
278         data/openbox.png
279
280 nodist_rc_DATA = \
281         data/rc.xml \
282         data/menu.xml
283
284 dist_xsd_DATA = \
285         data/rc.xsd \
286         data/menu.xsd
287
288 edit = $(SED) \
289         -e 's!@version\@!$(VERSION)!' \
290         -e 's!@xsddir\@!$(xsddir)!'
291
292 data/rc.xml: Makefile $(srcdir)/data/rc.xml.in data
293         @echo make: creating $@
294         @rm -f $@
295         @mkdir data 2>/dev/null || true
296         @$(edit) $(srcdir)/data/rc.xml.in >$@
297
298 data/menu.xml: Makefile $(srcdir)/data/menu.xml.in data
299         @echo make: creating $@
300         @rm -f $@
301         @mkdir data 2>/dev/null || true
302         @$(edit) $(srcdir)/data/menu.xml.in >$@
303
304 dist_userscript_DATA = \
305         tools/themeupdate/themeupdate.py
306
307 install-data-hook:
308         chmod +x $(DESTDIR)$(userscriptdir)/themeupdate.py
309
310 dist_desktopfiles_DATA = \
311         data/openbox.desktop
312
313 dist_noinst_DATA = \
314         version.h.in \
315         data/rc.xml.in \
316         data/menu.xml.in \
317         render/obrender-3.0.pc.in \
318         parser/obparser-3.0.pc.in
319
320 EXTRA_DIST = \
321         config.rpath \
322         mkinstalldirs \
323         CHANGELOG \
324         COMPLIANCE \
325         README \
326         COPYING \
327         AUTHORS
328
329 CLEANFILES = \
330         data/rc.xml \
331         data/menu.xml
332
333 #doc:
334 #       $(MAKE) -$(MAKEFLAGS) -C doc/doxygen doc
335
336 distclean-local:
337         for d in . m4 po render; do \
338                 for p in core core.* gmon.out *\~ *.orig *.rej .\#*; do \
339                         rm -f "$$d/$$p"; \
340                 done \
341         done
342
343 .PHONY: doc