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