bf6c8c0105220dfc7c97998b278d9ef7193e0eca
[dana/openbox.git] / Makefile.am
1 SUBDIRS = m4 po
2
3 docxbmdir       = $(docdir)/xbm
4 themedir        = $(datadir)/themes
5 localedir       = $(datadir)/locale
6 configdir       = $(sysconfdir)/xdg
7 rcdir           = $(configdir)/openbox
8 xsessionsdir    = $(datadir)/xsessions
9 gnomewmfilesdir = $(datadir)/gnome/wm-properties
10 pkgconfigdir    = $(libdir)/pkgconfig
11 pubincludedir   = $(includedir)/openbox/@OB_VERSION@/openbox
12 pixmapdir       = $(datadir)/pixmaps
13 xsddir          = $(datadir)/openbox
14
15 theme = Clearlooks
16
17 AUTOMAKE_OPTIONS = subdir-objects foreign
18
19 ACLOCAL_AMFLAGS = -I m4
20
21 INCLUDES = -I.
22
23 check_PROGRAMS = \
24         render/rendertest
25
26 lib_LTLIBRARIES = \
27         parser/libobparser.la \
28         render/libobrender.la \
29         obt/libobt.la
30
31 bin_PROGRAMS = \
32         openbox/openbox \
33         tools/gnome-panel-control/gnome-panel-control
34
35 nodist_bin_SCRIPTS = \
36         data/xsession/openbox-session \
37         data/xsession/openbox-gnome-session \
38         data/xsession/openbox-kde-session
39
40 ## render ##
41
42 render_rendertest_CPPFLAGS = \
43         $(PANGO_CFLAGS) \
44         $(XFT_CFLAGS) \
45         $(GLIB_CFLAGS) \
46         -DG_LOG_DOMAIN=\"RenderTest\"
47 render_rendertest_LDADD = \
48         parser/libobparser.la \
49         render/libobrender.la \
50         $(GLIB_LIBS) \
51         $(PANGO_LIBS) \
52         $(XFT_LIBS) \
53         $(XML_LIBS) \
54         $(X_LIBS)
55 render_rendertest_SOURCES = render/test.c
56
57 render_libobrender_la_CPPFLAGS = \
58         $(X_CFLAGS) \
59         $(GLIB_CFLAGS) \
60         $(XML_CFLAGS) \
61         $(PANGO_CFLAGS) \
62         $(XFT_CFLAGS) \
63         -DG_LOG_DOMAIN=\"ObRender\" \
64         -DDEFAULT_THEME=\"$(theme)\"
65 render_libobrender_la_LDFLAGS = \
66         -version-info $(RR_CURRENT):$(RR_REVISION):$(RR_AGE)
67 render_libobrender_la_LIBADD = \
68         parser/libobparser.la \
69         $(X_LIBS) \
70         $(PANGO_LIBS) \
71         $(XFT_LIBS) \
72         $(GLIB_LIBS) \
73         $(XML_LIBS)
74 render_libobrender_la_SOURCES = \
75         gettext.h \
76         render/color.h \
77         render/color.c \
78         render/font.h \
79         render/font.c \
80         render/geom.h \
81         render/gradient.h \
82         render/gradient.c \
83         render/icon.h \
84         render/image.h \
85         render/image.c \
86         render/instance.h \
87         render/instance.c \
88         render/mask.h \
89         render/mask.c \
90         render/render.h \
91         render/render.c \
92         render/theme.h \
93         render/theme.c
94
95 ## parser ##
96
97 parser_libobparser_la_CPPFLAGS = \
98         $(GLIB_CFLAGS) \
99         $(XML_CFLAGS) \
100         -DG_LOG_DOMAIN=\"ObParser\" \
101         -DLOCALEDIR=\"$(localedir)\" \
102         -DDATADIR=\"$(datadir)\" \
103         -DCONFIGDIR=\"$(configdir)\"
104 parser_libobparser_la_LDFLAGS = \
105         -version-info $(RR_CURRENT):$(RR_REVISION):$(RR_AGE)
106 parser_libobparser_la_LIBADD = \
107         $(GLIB_LIBS) \
108         $(XML_LIBS) 
109 parser_libobparser_la_SOURCES = \
110         parser/parse.h \
111         parser/parse.c
112
113 ## obt ##
114
115 obt_libobt_la_CPPFLAGS = \
116         $(XINERAMA_CFLAGS) \
117         $(XKB_CFLAGS) \
118         $(XRANDR_CFLAGS) \
119         $(XSHAPE_CFLAGS) \
120         $(XSYNC_CFLAGS) \
121         $(GLIB_CFLAGS) \
122         -DG_LOG_DOMAIN=\"Obt\" \
123         -DLOCALEDIR=\"$(localedir)\" \
124         -DDATADIR=\"$(datadir)\" \
125         -DCONFIGDIR=\"$(configdir)\"
126 obt_libobt_la_LDFLAGS = \
127         -version-info $(OBT_CURRENT):$(OBT_REVISION):$(OBT_AGE)
128 obt_libobt_la_LIBADD = \
129         $(XINERAMA_LIBS) \
130         $(XKB_LIBS) \
131         $(XRANDR_LIBS) \
132         $(XSHAPE_LIBS) \
133         $(XSYNC_LIBS) \
134         $(GLIB_LIBS)
135 obt_libobt_la_SOURCES = \
136         obt/display.h \
137         obt/display.c \
138         obt/internal.h \
139         obt/keyboard.h \
140         obt/keyboard.c \
141         obt/mainloop.h \
142         obt/mainloop.c \
143         obt/prop.h \
144         obt/prop.c \
145         obt/util.h
146
147 ## openbox ##
148
149 openbox_openbox_CPPFLAGS = \
150         $(SM_CFLAGS) \
151         $(X_CFLAGS) \
152         $(XCURSOR_CFLAGS) \
153         $(SM_CFLAGS) \
154         $(PANGO_CFLAGS) \
155         $(GLIB_CFLAGS) \
156         $(LIBSN_CFLAGS) \
157         $(XML_CFLAGS) \
158         -DLOCALEDIR=\"$(localedir)\" \
159         -DDATADIR=\"$(datadir)\" \
160         -DCONFIGDIR=\"$(configdir)\" \
161         -DG_LOG_DOMAIN=\"Openbox\"
162 openbox_openbox_LDADD = \
163         $(SM_LIBS) \
164         $(GLIB_LIBS) \
165         $(X_LIBS) \
166         $(XCURSOR_LIBS) \
167         $(LIBSN_LIBS) \
168         $(XML_LIBS) \
169         $(EFENCE_LIBS) \
170         $(LIBINTL) \
171         render/libobrender.la \
172         parser/libobparser.la \
173         obt/libobt.la
174 openbox_openbox_LDFLAGS = -export-dynamic
175 openbox_openbox_SOURCES = \
176         gettext.h \
177         openbox/actions/all.c \
178         openbox/actions/all.h \
179         openbox/actions/addremovedesktop.c \
180         openbox/actions/breakchroot.c \
181         openbox/actions/close.c \
182         openbox/actions/cyclewindows.c \
183         openbox/actions/debug.c \
184         openbox/actions/decorations.c \
185         openbox/actions/desktop.c \
186         openbox/actions/dockautohide.c \
187         openbox/actions/directionalwindows.c \
188         openbox/actions/execute.c \
189         openbox/actions/exit.c \
190         openbox/actions/focus.c \
191         openbox/actions/focustobottom.c \
192         openbox/actions/fullscreen.c \
193         openbox/actions/growtoedge.c \
194         openbox/actions/iconify.c \
195         openbox/actions/if.c \
196         openbox/actions/kill.c \
197         openbox/actions/layer.c \
198         openbox/actions/lower.c \
199         openbox/actions/maximize.c \
200         openbox/actions/move.c \
201         openbox/actions/moverelative.c \
202         openbox/actions/moveresizeto.c \
203         openbox/actions/movetoedge.c \
204         openbox/actions/omnipresent.c \
205         openbox/actions/raise.c \
206         openbox/actions/raiselower.c \
207         openbox/actions/reconfigure.c \
208         openbox/actions/resize.c \
209         openbox/actions/resizerelative.c \
210         openbox/actions/restart.c \
211         openbox/actions/shade.c \
212         openbox/actions/showdesktop.c \
213         openbox/actions/showmenu.c \
214         openbox/actions/unfocus.c \
215         openbox/actions.c \
216         openbox/actions.h \
217         openbox/client.c \
218         openbox/client.h \
219         openbox/client_list_menu.c \
220         openbox/client_list_menu.h \
221         openbox/client_list_combined_menu.c \
222         openbox/client_list_combined_menu.h \
223         openbox/client_menu.c \
224         openbox/client_menu.h \
225         openbox/config.c \
226         openbox/config.h \
227         openbox/debug.c \
228         openbox/debug.h \
229         openbox/dock.c \
230         openbox/dock.h \
231         openbox/event.c \
232         openbox/event.h \
233         openbox/focus.c \
234         openbox/focus.h \
235         openbox/focus_cycle.c \
236         openbox/focus_cycle.h \
237         openbox/focus_cycle_indicator.c \
238         openbox/focus_cycle_indicator.h \
239         openbox/focus_cycle_popup.c \
240         openbox/focus_cycle_popup.h \
241         openbox/frame.c \
242         openbox/frame.h \
243         openbox/framerender.c \
244         openbox/framerender.h \
245         openbox/geom.h \
246         openbox/grab.c \
247         openbox/grab.h \
248         openbox/group.c \
249         openbox/group.h \
250         openbox/keyboard.c \
251         openbox/keyboard.h \
252         openbox/keytree.c \
253         openbox/keytree.h \
254         openbox/menuframe.c \
255         openbox/menuframe.h \
256         openbox/menu.c \
257         openbox/menu.h \
258         openbox/misc.h \
259         openbox/mouse.c \
260         openbox/mouse.h \
261         openbox/moveresize.c \
262         openbox/moveresize.h \
263         openbox/mwm.h \
264         openbox/openbox.c \
265         openbox/openbox.h \
266         openbox/ping.c \
267         openbox/ping.h \
268         openbox/place.c \
269         openbox/place.h \
270         openbox/popup.c \
271         openbox/popup.h \
272         openbox/resist.c \
273         openbox/resist.h \
274         openbox/screen.c \
275         openbox/screen.h \
276         openbox/session.c \
277         openbox/session.h \
278         openbox/stacking.c \
279         openbox/stacking.h \
280         openbox/startupnotify.c \
281         openbox/startupnotify.h \
282         openbox/translate.c \
283         openbox/translate.h \
284         openbox/window.c \
285         openbox/window.h
286
287 ## gnome-panel-control ##
288
289 tools_gnome_panel_control_gnome_panel_control_CPPFLAGS = \
290         $(X_CFLAGS)
291 tools_gnome_panel_control_gnome_panel_control_LDADD = \
292         $(X_LIBS)
293 tools_gnome_panel_control_gnome_panel_control_SOURCES = \
294         tools/gnome-panel-control/gnome-panel-control.c
295
296
297 ## default button masks ##
298 dist_docxbm_DATA = \
299         data/xbm/bullet.xbm \
300         data/xbm/close.xbm \
301         data/xbm/desk_toggled.xbm \
302         data/xbm/desk.xbm \
303         data/xbm/iconify.xbm \
304         data/xbm/max_toggled.xbm \
305         data/xbm/max.xbm \
306         data/xbm/shade_toggled.xbm \
307         data/xbm/shade.xbm
308
309
310 ## themes ##
311
312 clearlooks_themedir = $(themedir)/Clearlooks/openbox-3
313 dist_clearlooks_theme_DATA= \
314         themes/Clearlooks/openbox-3/themerc
315
316 clearlooksolive_themedir = $(themedir)/Clearlooks-Olive/openbox-3
317 dist_clearlooksolive_theme_DATA= \
318         themes/Clearlooks-Olive/openbox-3/themerc
319
320 mikachu_themedir = $(themedir)/Mikachu/openbox-3
321 dist_mikachu_theme_DATA= \
322         themes/Mikachu/openbox-3/bullet.xbm \
323         themes/Mikachu/openbox-3/close.xbm \
324         themes/Mikachu/openbox-3/desk.xbm \
325         themes/Mikachu/openbox-3/iconify.xbm \
326         themes/Mikachu/openbox-3/max.xbm \
327         themes/Mikachu/openbox-3/themerc
328
329
330 natura_themedir = $(themedir)/Natura/openbox-3
331 dist_natura_theme_DATA= \
332         themes/Natura/openbox-3/close_hover.xbm \
333         themes/Natura/openbox-3/close.xbm \
334         themes/Natura/openbox-3/desk_toggled.xbm \
335         themes/Natura/openbox-3/desk_hover.xbm \
336         themes/Natura/openbox-3/desk.xbm \
337         themes/Natura/openbox-3/iconify_hover.xbm \
338         themes/Natura/openbox-3/iconify.xbm \
339         themes/Natura/openbox-3/max_hover.xbm \
340         themes/Natura/openbox-3/max_toggled.xbm \
341         themes/Natura/openbox-3/max.xbm \
342         themes/Natura/openbox-3/shade.xbm \
343         themes/Natura/openbox-3/shade_hover.xbm \
344         themes/Natura/openbox-3/themerc
345
346 artwizboxed_themedir = $(themedir)/Artwiz-boxed/openbox-3
347 dist_artwizboxed_theme_DATA= \
348         themes/Artwiz-boxed/openbox-3/themerc
349
350 bear2_themedir = $(themedir)/Bear2/openbox-3
351 dist_bear2_theme_DATA= \
352         themes/Bear2/openbox-3/close_pressed.xbm \
353         themes/Bear2/openbox-3/close.xbm \
354         themes/Bear2/openbox-3/desk_toggled.xbm \
355         themes/Bear2/openbox-3/desk.xbm \
356         themes/Bear2/openbox-3/iconify_pressed.xbm \
357         themes/Bear2/openbox-3/iconify.xbm \
358         themes/Bear2/openbox-3/max_pressed.xbm \
359         themes/Bear2/openbox-3/max_toggled.xbm \
360         themes/Bear2/openbox-3/max.xbm \
361         themes/Bear2/openbox-3/shade_pressed.xbm \
362         themes/Bear2/openbox-3/shade.xbm \
363         themes/Bear2/openbox-3/themerc
364
365 orang_themedir = $(themedir)/Orang/openbox-3
366 dist_orang_theme_DATA= \
367         themes/Orang/openbox-3/themerc
368
369 onyx_themedir = $(themedir)/Onyx/openbox-3
370 dist_onyx_theme_DATA= \
371         themes/Onyx/openbox-3/themerc
372
373 onyxcitrus_themedir = $(themedir)/Onyx-Citrus/openbox-3
374 dist_onyxcitrus_theme_DATA= \
375         themes/Onyx-Citrus/openbox-3/themerc
376
377 syscrash_themedir = $(themedir)/Syscrash/openbox-3
378 dist_syscrash_theme_DATA= \
379         themes/Syscrash/openbox-3/max_disabled.xbm \
380         themes/Syscrash/openbox-3/max_pressed.xbm \
381         themes/Syscrash/openbox-3/max_toggled.xbm \
382         themes/Syscrash/openbox-3/max.xbm \
383         themes/Syscrash/openbox-3/themerc
384
385 ## public headers ##
386
387 pubinclude_HEADERS = \
388         render/color.h \
389         render/font.h \
390         render/geom.h \
391         render/gradient.h \
392         render/image.h \
393         render/instance.h \
394         render/mask.h \
395         render/render.h \
396         render/theme.h \
397         parser/parse.h \
398         obt/display.h \
399         obt/mainloop.h \
400         obt/util.h
401
402 nodist_pubinclude_HEADERS = \
403         version.h
404
405 nodist_pkgconfig_DATA = \
406         render/obrender-4.0.pc \
407         parser/obparser-4.0.pc \
408         obt/obt-4.0.pc
409
410 ## data ##
411
412 dist_pixmap_DATA = \
413         data/openbox.png
414
415 dist_rc_DATA = \
416         data/autostart.sh \
417         data/rc.xml \
418         data/menu.xml
419
420 edit = $(SED) \
421         -e 's!@version\@!$(VERSION)!' \
422         -e 's!@configdir\@!$(configdir)!' \
423         -e 's!@bindir\@!$(bindir)!'
424
425 %.desktop: %.desktop.in Makefile
426         @echo make: creating $@
427         @$(edit) $< >$@ 
428
429 %-session: %-session.in Makefile
430         @echo make: creating $@
431         @$(edit) $< >$@ 
432
433 %.1.in: %.1.sgml
434         @echo make: creating $@
435         @docbook-to-man $< >$@
436
437 %.1: %.1.in Makefile
438         @echo make: creating $@
439         @$(edit) $< >$@ 
440
441 dist_gnomewmfiles_DATA = \
442         data/gnome-wm-properties/openbox.desktop
443
444 nodist_xsessions_DATA = \
445         data/xsession/openbox.desktop \
446         data/xsession/openbox-gnome.desktop \
447         data/xsession/openbox-kde.desktop
448
449 dist_noinst_DATA = \
450         version.h.in \
451         data/rc.xsd \
452         data/menu.xsd \
453         data/xsession/openbox.desktop.in \
454         data/xsession/openbox-gnome.desktop.in \
455         data/xsession/openbox-kde.desktop.in \
456         data/xsession/openbox-session.in \
457         data/xsession/openbox-gnome-session.in \
458         data/xsession/openbox-kde-session.in \
459         doc/openbox.1.sgml \
460         doc/openbox.1.in \
461         doc/openbox-session.1.sgml \
462         doc/openbox-session.1.in \
463         doc/openbox-gnome-session.1.sgml \
464         doc/openbox-gnome-session.1.in \
465         doc/openbox-kde-session.1.sgml \
466         doc/openbox-kde-session.1.in \
467         render/obrender-4.0.pc.in \
468         parser/obparser-4.0.pc.in \
469         obt/obt-4.0.pc.in \
470         tools/themeupdate/themeupdate.py \
471         tests/hideshow.py \
472         tests/Makefile \
473         tests/aspect.c \
474         tests/fullscreen.c \
475         tests/grav.c \
476         tests/grouptran.c \
477         tests/icons.c \
478         tests/modal2.c \
479         tests/modal3.c \
480         tests/modal.c \
481         tests/noresize.c \
482         tests/override.c \
483         tests/positioned.c \
484         tests/strut.c \
485         tests/title.c \
486         tests/urgent.c
487
488 dist_doc_DATA = \
489         COMPLIANCE \
490         README \
491         AUTHORS \
492         CHANGELOG \
493         COPYING \
494         data/rc.xsd \
495         data/menu.xsd \
496         doc/rc-mouse-focus.xml
497
498 nodist_man_MANS = \
499         doc/openbox.1 \
500         doc/openbox-session.1 \
501         doc/openbox-gnome-session.1 \
502         doc/openbox-kde-session.1
503
504 EXTRA_DIST = \
505         config.rpath
506
507 # make clean doesn't delete these for some reason, even though they are
508 # built by make
509 CLEANFILES = \
510         doc/openbox.1 \
511         doc/openbox-session.1 \
512         doc/openbox-gnome-session.1 \
513         doc/openbox-kde-session.1 \
514         data/xsession/openbox-session \
515         data/xsession/openbox-gnome-session \
516         data/xsession/openbox-kde-session \
517         data/xsession/openbox.desktop \
518         data/xsession/openbox-gnome.desktop \
519         data/xsession/openbox-kde.desktop
520
521 #doc:
522 #       $(MAKE) -$(MAKEFLAGS) -C doc/doxygen doc
523
524 distclean-local:
525         for d in . m4 po render parser obt openbox; do \
526                 for p in core core.* gmon.out *\~ *.orig *.rej .\#*; do \
527                         rm -f "$$d/$$p"; \
528                 done \
529         done
530
531 .PHONY: doc