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