]> Pileus Git - ~andy/gtk/blob - gtk/Makefile.am
8a8204ef6fba3d2f0c41789fb30dbe401799dbea
[~andy/gtk] / gtk / Makefile.am
1 # Makefile.am for gtk+/gtk
2 include $(top_srcdir)/Makefile.decl
3
4 xdgmimedir =
5
6 if OS_UNIX
7 xdgmimedir += xdgmime
8 if USE_QUARTZ
9 GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
10 else
11 GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
12 endif
13 endif
14
15 SUBDIRS = theme-bits $(xdgmimedir) . tests
16 DIST_SUBDIRS=theme-bits xdgmime tests
17
18 if HAVE_CUPS
19 GTK_PRINT_BACKENDS=file,cups
20 else
21 GTK_PRINT_BACKENDS=file,lpr
22 endif
23
24 INCLUDES =                                              \
25         -DG_LOG_DOMAIN=\"Gtk\"                          \
26         -DGTK_LIBDIR=\"$(libdir)\"                      \
27         -DGTK_DATADIR=\"$(datadir)\"                    \
28         -DGTK_DATA_PREFIX=\"$(prefix)\"                 \
29         -DGTK_SYSCONFDIR=\"$(sysconfdir)\"              \
30         -DGTK_VERSION=\"$(GTK_VERSION)\"                \
31         -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
32         -DGTK_HOST=\"$(host)\"                          \
33         -DGTK_COMPILATION                               \
34         -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\"  \
35         -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\"    \
36         -I$(top_builddir)                               \
37         -I$(top_builddir)/gtk                           \
38         -I$(top_srcdir) -I../gdk                        \
39         -I$(top_srcdir)/gdk                             \
40         -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf      \
41         -DGDK_PIXBUF_DISABLE_DEPRECATED                 \
42         -DGDK_DISABLE_DEPRECATED                        \
43         -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED            \
44         -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED          \
45         $(GTK_DEBUG_FLAGS)                              \
46         $(GTK_DEP_CFLAGS)                               \
47         $(gtk_clipboard_dnd_c_sources_CFLAGS)           \
48         $(INCLUDED_IMMODULE_DEFINE)
49
50 gtarget=$(gdktarget)
51
52 if PLATFORM_WIN32
53 no_undefined = -no-undefined
54 endif
55
56 if OS_WIN32
57 gtk_def = gtk.def
58 gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
59
60 gtk_win32_res = gtk-win32-res.o
61 gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
62
63 gtk-win32-res.o : gtk-win32.rc
64         $(WINDRES) gtk-win32.rc $@
65
66 install-def-file: gtk.def
67         $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
68 uninstall-def-file:
69         -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
70 else
71 install-def-file:
72 uninstall-def-file:
73 endif
74
75 if MS_LIB_AVAILABLE
76 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
77
78 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
79         lib -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
80
81 install-ms-lib:
82         $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
83
84 uninstall-ms-lib:
85         -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
86 else
87 install-ms-lib:
88 uninstall-ms-lib:
89 endif
90
91 # This places the generated .def file in srcdir, since it is expected to be there.
92 # (The one from a tarball is)
93 gtk.def: gtk.symbols
94         (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gtk.symbols | sed -e '/^$$/d' -e 's/^/    /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gtk.def
95
96 gtkalias.h: gtk.symbols
97           $(PERL) $(srcdir)/makegtkalias.pl < $(srcdir)/gtk.symbols > gtkalias.h
98 gtkaliasdef.c: gtk.symbols
99           $(PERL) $(srcdir)/makegtkalias.pl -def < $(srcdir)/gtk.symbols > gtkaliasdef.c
100
101 check-aliases:
102         @$(TESTS_ENVIRONMENT) $(srcdir)/aliasfilescheck.sh
103
104 .PHONY: check-aliases
105
106 TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
107 TESTS = aliasfilescheck.sh
108 if OS_LINUX
109 TESTS += abicheck.sh pltcheck.sh
110 endif
111
112 libgtkincludedir = $(includedir)/gtk-2.0/gtk
113 libadd =                                                                \
114         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
115         $(top_builddir)/gdk/$(gdktargetlib)                             \
116         $(GTK_DEP_LIBS)
117 deps =
118
119 if OS_UNIX
120 libadd += xdgmime/libxdgmime.la
121 endif
122
123 # libtool stuff: set version and export symbols for resolving
124 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
125 # we use the general approach here
126 libtool_opts =                                                  \
127   -version-info $(LT_VERSION_INFO)                              \
128   -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS)     \
129   -rpath $(libdir) $(libgtk_target_ldflags)
130
131
132 included-modules:
133 if HAVE_INCLUDED_IMMMODULES
134         @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
135
136 libadd += $(INCLUDED_IMMODULE_OBJ)
137 deps += $(INCLUDED_IMMODULE_OBJ)
138
139 $(INCLUDED_IMMODULE_OBJ): included-modules
140         @true
141 endif
142
143 .PHONY: included-modules
144
145 #
146 # setup source file variables
147 #
148
149 # GTK+ header files for public installation (non-generated, or generated
150 # by configure)
151 gtk_public_h_sources =          \
152         gtk.h                   \
153         gtkaboutdialog.h        \
154         gtkaccelgroup.h         \
155         gtkaccellabel.h         \
156         gtkaccelmap.h           \
157         gtkaccessible.h         \
158         gtkaction.h             \
159         gtkactiongroup.h        \
160         gtkadjustment.h         \
161         gtkalignment.h          \
162         gtkarrow.h              \
163         gtkaspectframe.h        \
164         gtkassistant.h          \
165         gtkbbox.h               \
166         gtkbin.h                \
167         gtkbindings.h           \
168         gtkbox.h                \
169         gtkbuilder.h            \
170         gtkbuildable.h          \
171         gtkbutton.h             \
172         gtkcalendar.h           \
173         gtkcelleditable.h       \
174         gtkcelllayout.h         \
175         gtkcellrenderer.h       \
176         gtkcellrendereraccel.h  \
177         gtkcellrenderercombo.h  \
178         gtkcellrendererpixbuf.h \
179         gtkcellrendererprogress.h \
180         gtkcellrendererspin.h   \
181         gtkcellrenderertext.h   \
182         gtkcellrenderertoggle.h \
183         gtkcellview.h           \
184         gtkcheckbutton.h        \
185         gtkcheckmenuitem.h      \
186         gtkclipboard.h          \
187         gtkcolorbutton.h        \
188         gtkcolorsel.h           \
189         gtkcolorseldialog.h     \
190         gtkcombobox.h           \
191         gtkcomboboxentry.h      \
192         gtkcontainer.h          \
193         gtkcurve.h              \
194         gtkdebug.h              \
195         gtkdialog.h             \
196         gtkdnd.h                \
197         gtkdrawingarea.h        \
198         gtkeditable.h           \
199         gtkentry.h              \
200         gtkentrycompletion.h    \
201         gtkenums.h              \
202         gtkeventbox.h           \
203         gtkexpander.h           \
204         gtkfilechooser.h        \
205         gtkfilechooserbutton.h  \
206         gtkfilechooserdialog.h  \
207         gtkfilechooserwidget.h  \
208         gtkfilefilter.h         \
209         gtkfixed.h              \
210         gtkfontbutton.h         \
211         gtkfontsel.h            \
212         gtkframe.h              \
213         gtkgamma.h              \
214         gtkgc.h                 \
215         gtkhandlebox.h          \
216         gtkhbbox.h              \
217         gtkhbox.h               \
218         gtkhpaned.h             \
219         gtkhruler.h             \
220         gtkhscale.h             \
221         gtkhscrollbar.h         \
222         gtkhseparator.h         \
223         gtkiconfactory.h        \
224         gtkicontheme.h          \
225         gtkiconview.h           \
226         gtkimage.h              \
227         gtkimagemenuitem.h      \
228         gtkimcontext.h          \
229         gtkimcontextsimple.h    \
230         gtkimmodule.h           \
231         gtkimmulticontext.h     \
232         gtkinputdialog.h        \
233         gtkinvisible.h          \
234         gtkitem.h               \
235         gtklabel.h              \
236         gtklayout.h             \
237         gtklinkbutton.h         \
238         gtkliststore.h          \
239         gtkmain.h               \
240         gtkmenu.h               \
241         gtkmenubar.h            \
242         gtkmenuitem.h           \
243         gtkmenushell.h          \
244         gtkmenutoolbutton.h     \
245         gtkmessagedialog.h      \
246         gtkmisc.h               \
247         gtkmodules.h            \
248         gtkmountoperation.h     \
249         gtknotebook.h           \
250         gtkobject.h             \
251         gtkpagesetup.h          \
252         gtkpaned.h              \
253         gtkpapersize.h          \
254         gtkplug.h               \
255         gtkprintcontext.h       \
256         gtkprintoperation.h     \
257         gtkprintoperationpreview.h      \
258         gtkprintsettings.h      \
259         gtkprivate.h            \
260         gtkprogressbar.h        \
261         gtkradioaction.h        \
262         gtkradiobutton.h        \
263         gtkradiomenuitem.h      \
264         gtkradiotoolbutton.h    \
265         gtkrange.h              \
266         gtkrc.h                 \
267         gtkrecentaction.h       \
268         gtkrecentchooser.h      \
269         gtkrecentchooserdialog.h \
270         gtkrecentchoosermenu.h  \
271         gtkrecentchooserwidget.h \
272         gtkrecentfilter.h       \
273         gtkrecentmanager.h      \
274         gtkruler.h              \
275         gtkscale.h              \
276         gtkscalebutton.h        \
277         gtkscrollbar.h          \
278         gtkscrolledwindow.h     \
279         gtkselection.h          \
280         gtkseparator.h          \
281         gtkseparatormenuitem.h  \
282         gtkseparatortoolitem.h  \
283         gtkshow.h               \
284         gtksettings.h           \
285         gtksizegroup.h          \
286         gtksocket.h             \
287         gtkspinbutton.h         \
288         gtkstatusbar.h          \
289         gtkstatusicon.h         \
290         gtkstock.h              \
291         gtkstyle.h              \
292         gtktable.h              \
293         gtktearoffmenuitem.h    \
294         gtktestutils.h          \
295         gtktextbuffer.h         \
296         gtktextbufferrichtext.h \
297         gtktextchild.h          \
298         gtktextdisplay.h        \
299         gtktextiter.h           \
300         gtktextmark.h           \
301         gtktexttag.h            \
302         gtktexttagtable.h       \
303         gtktextview.h           \
304         gtktoggleaction.h       \
305         gtktogglebutton.h       \
306         gtktoggletoolbutton.h   \
307         gtktoolbar.h            \
308         gtktoolbutton.h         \
309         gtktoolitem.h           \
310         gtktoolshell.h          \
311         gtktooltip.h            \
312         gtktreednd.h            \
313         gtktreemodel.h          \
314         gtktreemodelfilter.h    \
315         gtktreemodelsort.h      \
316         gtktreeselection.h      \
317         gtktreesortable.h       \
318         gtktreestore.h          \
319         gtktreeview.h           \
320         gtktreeviewcolumn.h     \
321         gtktypeutils.h          \
322         gtkuimanager.h          \
323         gtkvbbox.h              \
324         gtkvbox.h               \
325         gtkviewport.h           \
326         gtkvolumebutton.h       \
327         gtkvpaned.h             \
328         gtkvruler.h             \
329         gtkvscale.h             \
330         gtkvscrollbar.h         \
331         gtkvseparator.h         \
332         gtkwidget.h             \
333         gtkwindow.h
334
335 if OS_UNIX
336 gtk_unix_print_public_h_sources =    \
337         gtkpagesetupunixdialog.h        \
338         gtkprintunixdialog.h            \
339         gtkprinter.h                    \
340         gtkprintjob.h                   \
341         gtkunixprint.h
342 endif
343
344 # Installed header files without compatibility guarantees
345 # that are not included in gtk/gtk.h
346 gtk_semi_private_h_sources =    \
347         gtktextlayout.h         \
348         gtkfilesystem.h
349
350 # GTK+ header files that don't get installed
351 gtk_private_h_sources =         \
352         gtkquery.h              \
353         gtksearchengine.h       \
354         gtksearchenginesimple.h \
355         gtkdndcursors.h         \
356         gtkentryprivate.h       \
357         gtkbuilderprivate.h     \
358         gtkfilechooserdefault.h \
359         gtkfilechooserembed.h   \
360         gtkfilechooserentry.h   \
361         gtkfilechooserprivate.h \
362         gtkfilechoosersettings.h \
363         gtkfilechooserutils.h   \
364         gtkfilesystemmodel.h    \
365         gtkfilesystemunix.h     \
366         gtkhsv.h                \
367         gtkiconcache.h          \
368         gtkintl.h               \
369         gtkkeyhash.h            \
370         gtkmnemonichash.h       \
371         gtkpathbar.h            \
372         gtkplugprivate.h        \
373         gtkprintoperation-private.h\
374         gtkprintutils.h         \
375         gtkrbtree.h             \
376         gtkrecentchooserdefault.h \
377         gtkrecentchooserprivate.h \
378         gtkrecentchooserutils.h \
379         gtksocketprivate.h      \
380         gtktextbtree.h          \
381         gtktextbufferserialize.h\
382         gtktextchildprivate.h   \
383         gtktextiterprivate.h    \
384         gtktextmarkprivate.h    \
385         gtktextsegment.h        \
386         gtktexttagprivate.h     \
387         gtktexttypes.h          \
388         gtktextutil.h           \
389         gtkthemes.h             \
390         gtktoggleactionprivate.h\
391         gtktreedatalist.h       \
392         gtktreeprivate.h        \
393         gtkwindow-decorate.h
394
395 # GTK+ C sources to build the library from
396 gtk_base_c_sources =            \
397         gtkquery.c              \
398         gtksearchengine.c       \
399         gtksearchenginesimple.c \
400         fnmatch.c               \
401         gtkaboutdialog.c        \
402         gtkaccelgroup.c         \
403         gtkaccellabel.c         \
404         gtkaccelmap.c           \
405         gtkaccessible.c         \
406         gtkaction.c             \
407         gtkactiongroup.c        \
408         gtkadjustment.c         \
409         gtkalignment.c          \
410         gtkarrow.c              \
411         gtkaspectframe.c        \
412         gtkassistant.c          \
413         gtkbbox.c               \
414         gtkbin.c                \
415         gtkbindings.c           \
416         gtkbox.c                \
417         gtkbuildable.c          \
418         gtkbuilder.c            \
419         gtkbuilderparser.c      \
420         gtkbutton.c             \
421         gtkcalendar.c           \
422         gtkcelleditable.c       \
423         gtkcelllayout.c         \
424         gtkcellrenderer.c       \
425         gtkcellrendereraccel.c  \
426         gtkcellrenderercombo.c  \
427         gtkcellrendererpixbuf.c \
428         gtkcellrendererprogress.c \
429         gtkcellrendererspin.c   \
430         gtkcellrenderertext.c   \
431         gtkcellrenderertoggle.c \
432         gtkcellview.c           \
433         gtkcheckbutton.c        \
434         gtkcheckmenuitem.c      \
435         gtkcolorbutton.c        \
436         gtkcolorsel.c           \
437         gtkcolorseldialog.c     \
438         gtkcombobox.c           \
439         gtkcomboboxentry.c      \
440         gtkcontainer.c          \
441         gtkcurve.c              \
442         gtkdialog.c             \
443         gtkdrawingarea.c        \
444         gtkeditable.c           \
445         gtkentry.c              \
446         gtkentrycompletion.c    \
447         gtkeventbox.c           \
448         gtkexpander.c           \
449         gtkfilechooser.c        \
450         gtkfilechooserbutton.c  \
451         gtkfilechooserdefault.c \
452         gtkfilechooserdialog.c  \
453         gtkfilechooserembed.c   \
454         gtkfilechooserentry.c   \
455         gtkfilechoosersettings.c \
456         gtkfilechooserutils.c   \
457         gtkfilechooserwidget.c  \
458         gtkfilefilter.c         \
459         gtkfilesystem.c         \
460         gtkfilesystemmodel.c    \
461         gtkfixed.c              \
462         gtkfontbutton.c         \
463         gtkfontsel.c            \
464         gtkframe.c              \
465         gtkgamma.c              \
466         gtkgc.c                 \
467         gtkhandlebox.c          \
468         gtkhbbox.c              \
469         gtkhbox.c               \
470         gtkhpaned.c             \
471         gtkhruler.c             \
472         gtkhscale.c             \
473         gtkhscrollbar.c         \
474         gtkhseparator.c         \
475         gtkhsv.c                \
476         gtkiconcache.c          \
477         gtkiconcachevalidator.c \
478         gtkiconfactory.c        \
479         gtkicontheme.c          \
480         gtkiconview.c           \
481         gtkimage.c              \
482         gtkimagemenuitem.c      \
483         gtkimcontext.c          \
484         gtkimcontextsimple.c    \
485         gtkimmodule.c           \
486         gtkimmulticontext.c     \
487         gtkinputdialog.c        \
488         gtkinvisible.c          \
489         gtkitem.c               \
490         gtkkeyhash.c            \
491         gtklabel.c              \
492         gtklayout.c             \
493         gtklinkbutton.c         \
494         gtkliststore.c          \
495         gtkmain.c               \
496         gtkmarshal.c            \
497         gtkmarshalers.c         \
498         gtkmenu.c               \
499         gtkmenubar.c            \
500         gtkmenuitem.c           \
501         gtkmenushell.c          \
502         gtkmenutoolbutton.c     \
503         gtkmessagedialog.c      \
504         gtkmisc.c               \
505         gtkmnemonichash.c       \
506         gtkmodules.c            \
507         gtkmountoperation.c     \
508         gtknotebook.c           \
509         gtkobject.c             \
510         gtkpagesetup.c          \
511         gtkpaned.c              \
512         gtkpapersize.c          \
513         gtkpathbar.c            \
514         gtkplug.c               \
515         gtkprintcontext.c       \
516         gtkprintoperation.c     \
517         gtkprintoperationpreview.c      \
518         gtkprintsettings.c      \
519         gtkprintutils.c         \
520         gtkprogressbar.c        \
521         gtkradioaction.c        \
522         gtkradiobutton.c        \
523         gtkradiomenuitem.c      \
524         gtkradiotoolbutton.c    \
525         gtkrange.c              \
526         gtkrbtree.c             \
527         gtkrc.c                 \
528         gtkrecentaction.c       \
529         gtkrecentchooserdefault.c \
530         gtkrecentchooserdialog.c \
531         gtkrecentchoosermenu.c  \
532         gtkrecentchooserwidget.c \
533         gtkrecentchooserutils.c \
534         gtkrecentchooser.c      \
535         gtkrecentfilter.c       \
536         gtkrecentmanager.c      \
537         gtkruler.c              \
538         gtkscale.c              \
539         gtkscalebutton.c        \
540         gtkscrollbar.c          \
541         gtkscrolledwindow.c     \
542         gtkselection.c          \
543         gtkseparator.c          \
544         gtkseparatormenuitem.c  \
545         gtkseparatortoolitem.c  \
546         gtksettings.c           \
547         gtksizegroup.c          \
548         gtkshow.c               \
549         gtksocket.c             \
550         gtkspinbutton.c         \
551         gtkstatusbar.c          \
552         gtkstatusicon.c         \
553         gtkstock.c              \
554         gtkstyle.c              \
555         gtktable.c              \
556         gtktearoffmenuitem.c    \
557         gtktestutils.c          \
558         gtktextbtree.c          \
559         gtktextbuffer.c         \
560         gtktextbufferrichtext.c \
561         gtktextbufferserialize.c\
562         gtktextchild.c          \
563         gtktextdisplay.c        \
564         gtktextiter.c           \
565         gtktextlayout.c         \
566         gtktextmark.c           \
567         gtktextsegment.c        \
568         gtktexttag.c            \
569         gtktexttagtable.c       \
570         gtktexttypes.c          \
571         gtktextutil.c           \
572         gtktextview.c           \
573         gtkthemes.c             \
574         gtktoggleaction.c       \
575         gtktogglebutton.c       \
576         gtktoggletoolbutton.c   \
577         gtktoolbar.c            \
578         gtktoolbutton.c         \
579         gtktoolitem.c           \
580         gtktoolshell.c          \
581         gtktooltip.c            \
582         gtktreedatalist.c       \
583         gtktreednd.c            \
584         gtktreemodel.c          \
585         gtktreemodelfilter.c    \
586         gtktreemodelsort.c      \
587         gtktreeselection.c      \
588         gtktreesortable.c       \
589         gtktreestore.c          \
590         gtktreeview.c           \
591         gtktreeviewcolumn.c     \
592         gtktypebuiltins.c       \
593         gtktypeutils.c          \
594         gtkuimanager.c          \
595         gtkvbbox.c              \
596         gtkvbox.c               \
597         gtkvolumebutton.c       \
598         gtkviewport.c           \
599         gtkvpaned.c             \
600         gtkvruler.c             \
601         gtkvscale.c             \
602         gtkvscrollbar.c         \
603         gtkvseparator.c         \
604         gtkwidget.c             \
605         gtkwindow-decorate.c    \
606         gtkwindow.c             \
607         $(gtk_clipboard_dnd_c_sources)
608
609 # Broken
610 gtk_public_h_sources += \
611         gtktext.h               \
612         gtktree.h               \
613         gtktreeitem.h
614 gtk_base_c_sources += \
615         gtktext.c               \
616         gtktree.c               \
617         gtktreeitem.c
618
619 # Deprecated
620 gtk_public_h_sources += \
621         gtkclist.h              \
622         gtkcombo.h              \
623         gtkctree.h              \
624         gtkfilesel.h            \
625         gtkitemfactory.h        \
626         gtklist.h               \
627         gtklistitem.h           \
628         gtkoldeditable.h        \
629         gtkoptionmenu.h         \
630         gtkpixmap.h             \
631         gtkpreview.h            \
632         gtkprogress.h           \
633         gtksignal.h             \
634         gtktipsquery.h          \
635         gtktooltips.h
636 gtk_base_c_sources += \
637         gtkclist.c              \
638         gtkcombo.c              \
639         gtkctree.c              \
640         gtkfilesel.c            \
641         gtkitemfactory.c        \
642         gtklist.c               \
643         gtklistitem.c           \
644         gtkoldeditable.c        \
645         gtkoptionmenu.c         \
646         gtkpixmap.c             \
647         gtkpreview.c            \
648         gtkprogress.c           \
649         gtksignal.c             \
650         gtktipsquery.c          \
651         gtktooltips.c
652
653 gtk_c_sources = $(gtk_base_c_sources)
654 gtk_all_c_sources = $(gtk_base_c_sources)
655
656 gtk_os_unix_c_sources = \
657         gtkfilesystemunix.c             \
658         gtkpagesetupunixdialog.c        \
659         gtkprinter.c                    \
660         gtkprinteroption.c              \
661         gtkprinteroptionset.c           \
662         gtkprinteroptionwidget.c        \
663         gtkprintjob.c                   \
664         gtkprintoperation-unix.c        \
665         gtkprintunixdialog.c            \
666         gtkprintbackend.c               \
667         gtksearchenginebeagle.c         \
668         gtksearchenginetracker.c
669 gtk_all_c_sources += $(gtk_os_unix_c_sources)
670 if OS_UNIX
671 gtk_private_h_sources += \
672         gtkfilesystemunix.h             \
673         gtkiconcachevalidator.h         \
674         gtkprintbackend.h               \
675         gtkprinter-private.h            \
676         gtkprinteroption.h              \
677         gtkprinteroptionset.h           \
678         gtkprinteroptionwidget.h        \
679         gtksearchenginebeagle.h         \
680         gtksearchenginetracker.h
681 gtk_c_sources += $(gtk_os_unix_c_sources)
682 endif
683
684 gtk_os_win32_c_sources = \
685         gtkfilesystemwin32.c            \
686         gtkprint-win32.c                \
687         gtkprintoperation-win32.c
688 gtk_all_c_sources += $(gtk_os_win32_c_sources)
689 if OS_WIN32
690 gtk_private_h_sources += gtkfilesystemwin32.h gtkprint-win32.h
691 gtk_c_sources += $(gtk_os_win32_c_sources)
692 endif
693
694 gtk_use_x11_c_sources = \
695         gtkplug-x11.c   \
696         gtksocket-x11.c \
697         gtkxembed.c     \
698         gtktrayicon-x11.c
699 gtk_use_win32_c_sources = \
700         gtkplug-win32.c   \
701         gtksocket-win32.c \
702         gtkwin32embed.c   \
703         gtkwin32embedwidget.c
704 gtk_use_quartz_c_sources =      \
705         gtksearchenginequartz.c \
706         gtkplug-stub.c          \
707         gtksocket-stub.c
708 gtk_use_stub_c_sources = \
709         gtkplug-stub.c   \
710         gtksocket-stub.c
711 gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
712 if USE_X11
713 gtk_private_h_sources += gtkxembed.h gtktrayicon.h xembed.h
714 gtk_c_sources += $(gtk_use_x11_c_sources)
715 else
716 if USE_WIN32
717 gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
718 gtk_c_sources += $(gtk_use_win32_c_sources)
719 else
720 if USE_QUARTZ
721 gtk_private_h_sources += gtksearchenginequartz.h
722 gtk_c_sources += $(gtk_use_quartz_c_sources)
723 gtk_use_quartz_c_sources_CFLAGS = "-xobjective-c"
724 else
725 gtk_c_sources += $(gtk_use_stub_c_sources)
726 endif
727 endif
728 endif
729
730 if USE_QUARTZ
731 gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c gtkquartz.h
732 gtk_clipboard_dnd_c_sources_CFLAGS = "-xobjective-c"
733 else
734 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
735 gtk_clipboard_dnd_c_sources_CFLAGS = 
736 endif
737
738 # we use our own built_sources variable rules to avoid automake's
739 # BUILT_SOURCES oddities
740 # we generate frequently rebuild files piggyback on a stamp file, so sources
741 # depending on them only get rebuild when the built source actually changed
742 # content
743
744 # built sources that get installed with the header files
745 gtk_built_public_sources =                      \
746         gtkmarshal.h                            \
747         gtktypebuiltins.h
748
749 # built headers that don't get installed
750 gtk_built_private_headers =                     \
751         gtkalias.h                              \
752         gtkmarshalers.h                         \
753         gtkbuiltincache.h                       \
754         gtkimcontextsimpleseqs.h
755
756 gtk_built_sources =                             \
757         gtkaliasdef.c                           \
758         gtktypebuiltins.c                       \
759         gtktypefuncs.c                          \
760         gtkmarshalers.c                         \
761         gtkmarshal.c                            \
762         ${gtk_built_private_headers}            \
763         ${gtk_built_public_sources}
764
765 stamp_files =                                   \
766         stamp-gtkmarshalers.h                   \
767         stamp-gtkmarshal.h                      \
768         stamp-gtktypebuiltins.h                 \
769         stamp-icons
770
771 # non-header sources (headers should be specified in the above variables)
772 # that don't serve as direct make target sources, i.e. they don't have
773 # their own .lo rules and don't get publically installed
774 gtk_extra_sources =                             \
775         paper_names.c                           \
776         paper_names_offsets.c                   \
777         gen-paper-names.c                       \
778         gtkstatusicon-quartz.c                  \
779         gtk.symbols                             \
780         gtkversion.h.in                         \
781         gtkmarshalers.list                      \
782         gtkmarshal.list
783
784 #
785 # setup GTK+ sources and their dependencies
786 #
787 MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files) $(GENERATED_ICONS)
788 EXTRA_HEADERS =
789 EXTRA_DIST += $(gtk_private_h_sources) $(gtk_extra_sources)
790 EXTRA_DIST += $(gtk_built_sources)
791 EXTRA_DIST += $(STOCK_ICONS)
792
793 #
794 # rules to generate built sources
795 #
796 # setup autogeneration dependencies
797 gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc xgen-gtfsrc.c xgen-gtf
798 CLEANFILES = $(gen_sources)
799
800 BUILT_SOURCES = $(gtk_built_sources)
801
802 # all autogenerated files need to be generated in the srcdir,
803 # so old versions get remade and are not confused with newer
804 # versions in the build dir. thus a development setup requires
805 # srcdir to be writable, passing --disable-rebuilds to
806 # ../configure will supress all autogeneration rules.
807 gtkmarshalers.h: stamp-gtkmarshalers.h
808         @true
809 stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
810         $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --header >> xgen-gmlh \
811         && (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
812         && rm -f xgen-gmlh \
813         && echo timestamp > $(@F)       
814 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
815         (echo "#include \"gtkmarshalers.h\""; \
816          echo "#include \"gtkalias.h\""; \
817          $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
818         && cp xgen-gmlc gtkmarshalers.c \
819         && rm -f xgen-gmlc
820
821 gtkmarshal.h: stamp-gtkmarshal.h
822         @true
823 stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
824         echo "#ifndef GTK_DISABLE_DEPRECATED" > xgen-gmh                                        \
825         && $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --header >> xgen-gmh \
826         && echo "#endif /* GTK_DISABLE_DEPRECATED */" >> xgen-gmh \
827         && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
828         && rm -f xgen-gmh \
829         && echo timestamp > $(@F)
830 gtkmarshal.c: @REBUILD@ gtkmarshal.list
831         (echo "#include \"gtkmarshal.h\""; \
832          echo "#include \"gtkalias.h\""; \
833          $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body; \
834          echo "#define __gtk_marshal_MARSHAL_C__"; \
835          echo "#include \"gtkaliasdef.c\"") >> xgen-gmc \
836         && cp xgen-gmc gtkmarshal.c \
837         && rm -f xgen-gmc
838
839 gtktypebuiltins.h: stamp-gtktypebuiltins.h
840         @true
841 stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.h.template
842         ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
843                 $(gtk_public_h_sources) ) >> xgen-gtbh \
844         && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
845         && rm -f xgen-gtbh \
846         && echo timestamp > $(@F)
847 gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.c.template
848         ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
849                 $(gtk_public_h_sources) ) > xgen-gtbc \
850         && cp xgen-gtbc gtktypebuiltins.c  \
851         && rm -f xgen-gtbc
852
853 gtktypefuncs.c: @REBUILD@ $(top_srcdir)/gtk/*.h $(top_srcdir)/gdk/*.h Makefile
854         echo '#include <gtk/gtk.h>' > xgen-gtfsrc.c && \
855           ${CPP} $(DEFS) $(INCLUDES) -DGTK_ENABLE_BROKEN $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
856           grep -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
857           sort | uniq | \
858           sed '{ s/^/*tp++ = /; s/$$/();/; }' > xgen-gtf \
859         && cp xgen-gtf $@ && rm -f xgen-gtf
860 gtktestutils.c: gtktypefuncs.c
861
862 # target platform:
863 lib_LTLIBRARIES = $(gtktargetlib)
864
865 gtkincludedir = $(includedir)/gtk-2.0/gtk
866 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
867
868 gtkunixprintincludedir = $(includedir)/gtk-unix-print-2.0/gtk
869 gtkunixprintinclude_HEADERS = $(gtk_unix_print_public_h_sources)
870
871 libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources)
872 libgtk_win32_2_0_la_SOURCES = $(gtk_c_sources)
873 libgtk_quartz_2_0_la_SOURCES = $(gtk_c_sources)
874 libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources)
875
876 libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
877 libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid
878 libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts)
879 libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts)
880
881 libgtk_x11_2_0_la_LIBADD = $(libadd)
882 libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
883 libgtk_quartz_2_0_la_LIBADD = $(libadd)
884 libgtk_directfb_2_0_la_LIBADD = $(libadd)
885
886 libgtk_x11_2_0_la_DEPENDENCIES = $(deps)
887 libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps)
888 libgtk_quartz_2_0_la_DEPENDENCIES = $(deps)
889 libgtk_directfb_2_0_la_DEPENDENCIES = $(deps)
890
891 if USE_WIN32
892 libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
893 endif
894 EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la
895
896 install-exec-hook: 
897 if DISABLE_EXPLICIT_DEPS
898         $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/$(gtktargetlib)
899 endif
900
901 # Install a RC file for the default GTK+ theme, and key themes
902 install-data-local: install-ms-lib install-def-file
903         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0
904         $(INSTALL_DATA) $(srcdir)/gtkrc.default $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
905         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key
906         $(INSTALL_DATA) $(srcdir)/gtkrc.key.default $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
907         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key
908         $(INSTALL_DATA) $(srcdir)/gtkrc.key.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
909
910 uninstall-local: uninstall-ms-lib uninstall-def-file
911         rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
912         rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
913         rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
914
915 # if srcdir!=builddir, clean out maintainer-clean files from builddir
916 # this allows dist to pass.
917 distclean-local:
918         if test $(srcdir) != .; then \
919           rm -f $(MAINTAINERCLEANFILES); \
920         fi
921
922 DEPS = $(gtktargetlib) $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la $(top_builddir)/gdk/$(gdktargetlib)
923
924 TEST_DEPS = $(DEPS) gtk.immodules
925
926 LDADDS =                                                                \
927         $(gtktargetlib)                                                 \
928         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
929         $(top_builddir)/gdk/$(gdktargetlib)
930
931 #
932 # Installed tools
933 #
934 bin_PROGRAMS = \
935         gtk-query-immodules-2.0 \
936         gtk-update-icon-cache
937 bin_SCRIPTS = gtk-builder-convert
938
939 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
940 gtk_query_immodules_2_0_LDADD = $(LDADDS)
941
942 gtk_query_immodules_2_0_SOURCES = queryimmodules.c
943
944 gtk_update_icon_cache_LDADD = $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la
945
946 gtk_update_icon_cache_SOURCES = \
947         updateiconcache.c 
948
949 .PHONY: files test test-debug
950
951 files:
952         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
953           echo $$p; \
954         done
955
956 STOCK_ICONS = \
957         stock-icons/16/document-open-recent.png         \
958         stock-icons/16/gtk-about.png                    \
959         stock-icons/16/gtk-add.png                      \
960         stock-icons/16/gtk-cdrom.png                    \
961         stock-icons/16/gtk-close.png                    \
962         stock-icons/16/gtk-connect.png                  \
963         stock-icons/16/gtk-convert.png                  \
964         stock-icons/16/gtk-copy.png                     \
965         stock-icons/16/gtk-cut.png                      \
966         stock-icons/16/gtk-delete.png                   \
967         stock-icons/16/gtk-directory.png                \
968         stock-icons/16/gtk-disconnect.png               \
969         stock-icons/16/gtk-edit.png                     \
970         stock-icons/16/gtk-execute.png                  \
971         stock-icons/16/gtk-file.png                     \
972         stock-icons/16/gtk-find-and-replace.png         \
973         stock-icons/16/gtk-find.png                     \
974         stock-icons/16/gtk-floppy.png                   \
975         stock-icons/16/gtk-fullscreen.png               \
976         stock-icons/16/gtk-go-back-ltr.png              \
977         stock-icons/16/gtk-go-down.png                  \
978         stock-icons/16/gtk-go-forward-ltr.png           \
979         stock-icons/16/gtk-goto-bottom.png              \
980         stock-icons/16/gtk-goto-first-ltr.png           \
981         stock-icons/16/gtk-goto-last-ltr.png            \
982         stock-icons/16/gtk-goto-top.png                 \
983         stock-icons/16/gtk-go-up.png                    \
984         stock-icons/16/gtk-harddisk.png                 \
985         stock-icons/16/gtk-help.png                     \
986         stock-icons/16/gtk-home.png                     \
987         stock-icons/16/gtk-indent-ltr.png               \
988         stock-icons/16/gtk-indent-rtl.png               \
989         stock-icons/16/gtk-index.png                    \
990         stock-icons/16/gtk-info.png                     \
991         stock-icons/16/gtk-jump-to-ltr.png              \
992         stock-icons/16/gtk-jump-to-rtl.png              \
993         stock-icons/16/gtk-justify-center.png           \
994         stock-icons/16/gtk-justify-fill.png             \
995         stock-icons/16/gtk-justify-left.png             \
996         stock-icons/16/gtk-justify-right.png            \
997         stock-icons/16/gtk-leave-fullscreen.png         \
998         stock-icons/16/gtk-media-forward-ltr.png        \
999         stock-icons/16/gtk-media-next-ltr.png           \
1000         stock-icons/16/gtk-media-pause.png              \
1001         stock-icons/16/gtk-media-play-ltr.png           \
1002         stock-icons/16/gtk-media-play-rtl.png           \
1003         stock-icons/16/gtk-media-previous-ltr.png       \
1004         stock-icons/16/gtk-media-record.png             \
1005         stock-icons/16/gtk-media-rewind-ltr.png         \
1006         stock-icons/16/gtk-media-stop.png               \
1007         stock-icons/16/gtk-missing-image.png            \
1008         stock-icons/16/gtk-network.png                  \
1009         stock-icons/16/gtk-new.png                      \
1010         stock-icons/16/gtk-open.png                     \
1011         stock-icons/16/gtk-page-setup.png               \
1012         stock-icons/16/gtk-paste.png                    \
1013         stock-icons/16/gtk-preferences.png              \
1014         stock-icons/16/gtk-print.png                    \
1015         stock-icons/16/gtk-print-error.png              \
1016         stock-icons/16/gtk-print-preview.png            \
1017         stock-icons/16/gtk-print-report.png             \
1018         stock-icons/16/gtk-print-warning.png            \
1019         stock-icons/16/gtk-properties.png               \
1020         stock-icons/16/gtk-quit.png                     \
1021         stock-icons/16/gtk-redo-ltr.png                 \
1022         stock-icons/16/gtk-redo-rtl.png                 \
1023         stock-icons/16/gtk-refresh.png                  \
1024         stock-icons/16/gtk-remove.png                   \
1025         stock-icons/16/gtk-revert-to-saved-ltr.png      \
1026         stock-icons/16/gtk-revert-to-saved-rtl.png      \
1027         stock-icons/16/gtk-save-as.png                  \
1028         stock-icons/16/gtk-select-all.png               \
1029         stock-icons/16/gtk-select-color.png             \
1030         stock-icons/16/gtk-select-font.png              \
1031         stock-icons/16/gtk-sort-ascending.png           \
1032         stock-icons/16/gtk-sort-descending.png          \
1033         stock-icons/16/gtk-spell-check.png              \
1034         stock-icons/16/gtk-stop.png                     \
1035         stock-icons/16/gtk-strikethrough.png            \
1036         stock-icons/16/gtk-font.png                     \
1037         stock-icons/16/gtk-undelete-ltr.png             \
1038         stock-icons/16/gtk-undelete-rtl.png             \
1039         stock-icons/16/gtk-underline.png                \
1040         stock-icons/16/gtk-undo-ltr.png                 \
1041         stock-icons/16/gtk-undo-rtl.png                 \
1042         stock-icons/16/gtk-unindent-ltr.png             \
1043         stock-icons/16/gtk-unindent-rtl.png             \
1044         stock-icons/16/gtk-zoom-100.png                 \
1045         stock-icons/16/gtk-zoom-fit.png                 \
1046         stock-icons/16/gtk-zoom-in.png                  \
1047         stock-icons/16/gtk-zoom-out.png                 \
1048         stock-icons/16/gtk-italic.png                   \
1049         stock-icons/16/gtk-bold.png                     \
1050         stock-icons/20/gtk-apply.png                    \
1051         stock-icons/20/gtk-cancel.png                   \
1052         stock-icons/20/gtk-close.png                    \
1053         stock-icons/20/gtk-no.png                       \
1054         stock-icons/20/gtk-ok.png                       \
1055         stock-icons/20/gtk-yes.png                      \
1056         stock-icons/24/document-open-recent.png         \
1057         stock-icons/24/gtk-about.png                    \
1058         stock-icons/24/gtk-add.png                      \
1059         stock-icons/24/gtk-bold.png                     \
1060         stock-icons/24/gtk-cdrom.png                    \
1061         stock-icons/24/gtk-clear.png                    \
1062         stock-icons/24/gtk-close.png                    \
1063         stock-icons/24/gtk-color-picker.png             \
1064         stock-icons/24/gtk-connect.png                  \
1065         stock-icons/24/gtk-convert.png                  \
1066         stock-icons/24/gtk-copy.png                     \
1067         stock-icons/24/gtk-cut.png                      \
1068         stock-icons/24/gtk-directory.png                \
1069         stock-icons/24/gtk-disconnect.png               \
1070         stock-icons/24/gtk-edit.png                     \
1071         stock-icons/24/gtk-execute.png                  \
1072         stock-icons/24/gtk-file.png                     \
1073         stock-icons/24/gtk-find-and-replace.png         \
1074         stock-icons/24/gtk-find.png                     \
1075         stock-icons/24/gtk-font.png                     \
1076         stock-icons/24/gtk-fullscreen.png               \
1077         stock-icons/24/gtk-go-back-ltr.png              \
1078         stock-icons/24/gtk-goto-top.png                 \
1079         stock-icons/24/gtk-go-down.png                  \
1080         stock-icons/24/gtk-goto-bottom.png              \
1081         stock-icons/24/gtk-goto-first-ltr.png           \
1082         stock-icons/24/gtk-goto-last-ltr.png            \
1083         stock-icons/24/gtk-go-up.png                    \
1084         stock-icons/24/gtk-harddisk.png                 \
1085         stock-icons/24/gtk-help.png                     \
1086         stock-icons/24/gtk-home.png                     \
1087         stock-icons/24/gtk-indent-ltr.png               \
1088         stock-icons/24/gtk-indent-rtl.png               \
1089         stock-icons/24/gtk-index.png                    \
1090         stock-icons/24/gtk-info.png                     \
1091         stock-icons/24/gtk-italic.png                   \
1092         stock-icons/24/gtk-jump-to-ltr.png              \
1093         stock-icons/24/gtk-jump-to-rtl.png              \
1094         stock-icons/24/gtk-justify-center.png           \
1095         stock-icons/24/gtk-justify-fill.png             \
1096         stock-icons/24/gtk-justify-left.png             \
1097         stock-icons/24/gtk-justify-right.png            \
1098         stock-icons/24/gtk-leave-fullscreen.png         \
1099         stock-icons/24/gtk-media-forward-ltr.png        \
1100         stock-icons/24/gtk-media-next-ltr.png           \
1101         stock-icons/24/gtk-media-pause.png              \
1102         stock-icons/24/gtk-media-play-ltr.png           \
1103         stock-icons/24/gtk-media-play-rtl.png           \
1104         stock-icons/24/gtk-media-previous-ltr.png       \
1105         stock-icons/24/gtk-media-record.png             \
1106         stock-icons/24/gtk-media-rewind-ltr.png         \
1107         stock-icons/24/gtk-media-stop.png               \
1108         stock-icons/24/gtk-missing-image.png            \
1109         stock-icons/24/gtk-network.png                  \
1110         stock-icons/24/gtk-new.png                      \
1111         stock-icons/24/gtk-open.png                     \
1112         stock-icons/24/gtk-orientation-reverse-landscape.png \
1113         stock-icons/24/gtk-orientation-landscape.png    \
1114         stock-icons/24/gtk-orientation-reverse-portrait.png     \
1115         stock-icons/24/gtk-orientation-portrait.png     \
1116         stock-icons/24/gtk-page-setup.png               \
1117         stock-icons/24/gtk-paste.png                    \
1118         stock-icons/24/gtk-preferences.png              \
1119         stock-icons/24/gtk-print.png                    \
1120         stock-icons/24/gtk-print-preview.png            \
1121         stock-icons/24/gtk-properties.png               \
1122         stock-icons/24/gtk-quit.png                     \
1123         stock-icons/24/gtk-redo-ltr.png                 \
1124         stock-icons/24/gtk-redo-rtl.png                 \
1125         stock-icons/24/gtk-refresh.png                  \
1126         stock-icons/24/gtk-remove.png                   \
1127         stock-icons/24/gtk-revert-to-saved-ltr.png      \
1128         stock-icons/24/gtk-revert-to-saved-rtl.png      \
1129         stock-icons/24/gtk-select-font.png              \
1130         stock-icons/24/gtk-save-as.png                  \
1131         stock-icons/24/gtk-floppy.png                   \
1132         stock-icons/24/gtk-select-all.png               \
1133         stock-icons/24/gtk-select-color.png             \
1134         stock-icons/24/gtk-sort-ascending.png           \
1135         stock-icons/24/gtk-sort-descending.png          \
1136         stock-icons/24/gtk-spell-check.png              \
1137         stock-icons/24/gtk-stop.png                     \
1138         stock-icons/24/gtk-strikethrough.png            \
1139         stock-icons/24/gtk-delete.png                   \
1140         stock-icons/24/gtk-undelete-ltr.png             \
1141         stock-icons/24/gtk-undelete-rtl.png             \
1142         stock-icons/24/gtk-underline.png                \
1143         stock-icons/24/gtk-undo-ltr.png                 \
1144         stock-icons/24/gtk-undo-rtl.png                 \
1145         stock-icons/24/gtk-unindent-ltr.png             \
1146         stock-icons/24/gtk-unindent-rtl.png             \
1147         stock-icons/24/gtk-zoom-100.png                 \
1148         stock-icons/24/gtk-zoom-fit.png                 \
1149         stock-icons/24/gtk-zoom-in.png                  \
1150         stock-icons/24/gtk-zoom-out.png                 \
1151         stock-icons/24/gtk-go-forward-ltr.png           \
1152         stock-icons/32/gtk-dnd-multiple.png             \
1153         stock-icons/32/gtk-dnd.png                      \
1154         stock-icons/48/gtk-dialog-authentication.png    \
1155         stock-icons/48/gtk-dialog-error.png             \
1156         stock-icons/48/gtk-dialog-info.png              \
1157         stock-icons/48/gtk-dialog-question.png          \
1158         stock-icons/48/gtk-dialog-warning.png
1159
1160 GENERATED_ICONS = \
1161         stock-icons/16/gtk-go-back-rtl.png              \
1162         stock-icons/16/gtk-go-forward-rtl.png           \
1163         stock-icons/16/gtk-goto-first-rtl.png           \
1164         stock-icons/16/gtk-goto-last-rtl.png            \
1165         stock-icons/16/gtk-media-forward-rtl.png        \
1166         stock-icons/16/gtk-media-next-rtl.png           \
1167         stock-icons/16/gtk-media-previous-rtl.png       \
1168         stock-icons/16/gtk-media-rewind-rtl.png         \
1169         stock-icons/16/gtk-save.png                     \
1170         stock-icons/24/gtk-go-back-rtl.png              \
1171         stock-icons/24/gtk-go-forward-rtl.png           \
1172         stock-icons/24/gtk-goto-first-rtl.png           \
1173         stock-icons/24/gtk-goto-last-rtl.png            \
1174         stock-icons/24/gtk-media-forward-rtl.png        \
1175         stock-icons/24/gtk-media-next-rtl.png           \
1176         stock-icons/24/gtk-media-previous-rtl.png       \
1177         stock-icons/24/gtk-media-rewind-rtl.png         \
1178         stock-icons/24/gtk-save.png
1179
1180 # need to copy the icons so that we can replace the generated ones with
1181 # symlinks, even in the readonly srcdir case
1182 stamp-icons: $(STOCK_ICONS)
1183         if [ ! -d stock-icons ]; then                                   \
1184           for d in 16 20 24 32 48; do                                   \
1185             mkdir -p stock-icons/$$d;                                   \
1186           done;                                                         \
1187           for f in $(STOCK_ICONS); do                                   \
1188             cp $(srcdir)/$$f $$(dirname $$f);                           \
1189           done;                                                         \
1190           chmod -R u+w stock-icons;                                     \
1191         fi &&                                                           \
1192         for i in 16 24; do                                              \
1193            (cd stock-icons/$$i                                          \
1194            && $(RM) gtk-go-back-rtl.png                                 \
1195            && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png        \
1196            && $(RM) gtk-go-forward-rtl.png                              \
1197            && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png        \
1198            && $(RM) gtk-goto-first-rtl.png                              \
1199            && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png      \
1200            && $(RM) gtk-goto-last-rtl.png                               \
1201            && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png      \
1202            && $(RM) gtk-media-forward-rtl.png                           \
1203            && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png\
1204            && $(RM) gtk-media-next-rtl.png                              \
1205            && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png \
1206            && $(RM) gtk-media-previous-rtl.png                          \
1207            && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png \
1208            && $(RM) gtk-media-rewind-rtl.png                            \
1209            && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png\
1210            && $(RM) gtk-save.png                                        \
1211            && $(LN_S) gtk-floppy.png gtk-save.png)                      \
1212         done                                                            \
1213         && touch stamp-icons
1214
1215 if CROSS_COMPILING
1216 gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
1217 else
1218 gtk_update_icon_cache_program =                                                 \
1219         GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders    \
1220            ./gtk-update-icon-cache
1221 endif
1222
1223 gtkbuiltincache.h: @REBUILD@ stamp-icons
1224         $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT)
1225         $(gtk_update_icon_cache_program) --force --ignore-theme-index           \
1226            --source builtin_icons stock-icons > gtkbuiltincache.h.tmp &&        \
1227         mv gtkbuiltincache.h.tmp gtkbuiltincache.h
1228
1229 EXTRA_DIST +=                   \
1230         $(STOCK_ICONS)          \
1231         $(GENERATED_ICONS)      \
1232         line-arrow.xbm          \
1233         line-wrap.xbm           \
1234         tree_plus.xbm           \
1235         tree_minus.xbm          \
1236         tree_minus.xpm          \
1237         tree_plus.xpm           \
1238         gtk.def                 \
1239         gtk-builder-convert     \
1240         gtk-win32.rc            \
1241         gtk-win32.rc.in         \
1242         gtkwin32embed.h         \
1243         gtkwin32embedwidget.h   \
1244         gtkwin32embedwidget.c   \
1245         gtkfilesystemwin32.h    \
1246         gtkfilesystemwin32.c    \
1247         gtkprint-win32.h        \
1248         gtkprint-win32.c        \
1249         gtksearchenginequartz.h \
1250         gtkrc.default           \
1251         gtkrc.key.default       \
1252         gtkrc.key.emacs         \
1253         makefile.msc            \
1254         makefile.msc.in         \
1255         makegtkalias.pl         \
1256         aliasfilescheck.sh      \
1257         abicheck.sh             \
1258         pltcheck.sh             \
1259         gtktypebuiltins.c.template      \
1260         gtktypebuiltins.h.template
1261
1262
1263 install-data-local: