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