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