]> Pileus Git - ~andy/gtk/blob - gtk/makefile.msc.in
svn path=/trunk/; revision=18842
[~andy/gtk] / gtk / makefile.msc.in
1 ## Makefile for building the gtk DLL with Microsoft C
2 ## Use: nmake -f makefile.msc
3
4 ## There is no install target, you have to decide where and 
5 ## how to install for yourself.
6
7 TOP = ..\..
8 !INCLUDE $(TOP)/glib/build/win32/make.msc
9
10 ################################################################
11
12 # Not the real version but the one used in the DLL names
13 GTK_VER = 2.0
14 GDK_PIXBUF_VER = 2.0
15
16
17 GDK_LIBS = ../gdk/gdk-win32-$(GTK_VER).lib
18 GTK_LIBS = gtk-win32-$(GTK_VER).lib
19 GDK_PIXBUF_LIBS = ../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
20 GTK_BINARY_VERSION = @GTK_BINARY_VERSION@
21
22 # Perl and awk are needed to generate some source files.
23 # These generated source files are distribuyted with the Win32 GTk+ source
24 # distributions, so don't worry if you don't have perl and awk.
25 PERL = perl
26 AWK = gawk
27
28 INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. -I ../gdk -I ../gdk-pixbuf
29 DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \
30                 $(INTL_CFLAGS) $(ATK_CFLAGS) $(CAIRO_CFLAGS)
31 LDFLAGS = $(ATK_LIBS) /link /machine:ix86 $(LINKDEBUG)
32 # Some files use near as an identifier
33 # Don't define GTK_COMPILATION here, because it's for gtk-x.x.dll only
34 DEFINES = \
35         -DHAVE_CONFIG_H \
36         $(G_DEBUGGING) -DGTK_DISABLE_COMPAT_H -DG_LOG_DOMAIN=\"Gtk\" -Dnear=xxnear \
37         -DPANGO_ENABLE_BACKEND \
38         -DGTK_VERSION=\"$(GTK_VER)\" -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\" \
39         -DGTK_HOST=\"win32\" \
40         -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \
41         -DGTK_PRINT_BACKENDS=\"file,lpr\"       \
42         -DGTK_PRINT_PREVIEW_COMMAND="\"evince --unlink-tempfile --preview %f\"" \
43         -DGTK_LIBDIR=\"/magic/path/replaced/at/runtime\"
44
45 TOUCH = copy makefile.msc+nul
46
47 gtkbuiltincache.h: gtk-update-icon-cache.exe
48         cd stock-icons\16
49         copy gtk-go-forward-ltr.png gtk-go-back-rtl.png
50         copy gtk-go-back-ltr.png gtk-go-forward-rtl.png
51         copy gtk-goto-last-ltr.png gtk-goto-first-rtl.png
52         copy gtk-goto-first-ltr.png gtk-goto-last-rtl.png
53         copy gtk-media-rewind-ltr.png gtk-media-forward-rtl.png
54         copy gtk-media-previous-ltr.png gtk-media-next-rtl.png
55         copy gtk-media-next-ltr.png gtk-media-previous-rtl.png
56         copy gtk-media-forward-ltr.png gtk-media-rewind-rtl.png
57         copy gtk-floppy.png gtk-save.png
58         cd ..\24
59         copy gtk-go-forward-ltr.png gtk-go-back-rtl.png
60         copy gtk-go-back-ltr.png gtk-go-forward-rtl.png
61         copy gtk-goto-last-ltr.png gtk-goto-first-rtl.png
62         copy gtk-goto-first-ltr.png gtk-goto-last-rtl.png
63         copy gtk-media-rewind-ltr.png gtk-media-forward-rtl.png
64         copy gtk-media-previous-ltr.png gtk-media-next-rtl.png
65         copy gtk-media-next-ltr.png gtk-media-previous-rtl.png
66         copy gtk-media-forward-ltr.png gtk-media-rewind-rtl.png
67         copy gtk-floppy.png gtk-save.png
68         cd ..\..
69         del gtkicontheme.obj
70         gtk-update-icon-cache --force --ignore-theme-index      \
71            --source builtin_icons stock-icons > gtkbuiltincache.h
72
73 GENERATED = \
74         gtktypebuiltins.h gtktypebuiltins.c \
75         gtkmarshal.h gtkmarshal.c gtkmarshalers.h gtkmarshalers.c \
76         gtk.def gtkalias.h gtkaliasdef.c
77
78 all :                                           \
79         ..\config.h                             \
80         $(GENERATED)                            \
81         gtk-update-icon-cache.exe               \
82         gtkbuiltincache.h                       \
83         libgtk-win32-$(GTK_VER)-0.dll           \
84         gtk-query-immodules-$(GTK_VER).exe \
85 #       gtk-win32-$(GTK_VER)s.lib \
86 #       gtk-x11-$(GTK_VER).dll
87
88 gtk_OBJECTS =                                   \
89         fnmatch.obj                             \
90         gtkaboutdialog.obj      \
91         gtkaccelgroup.obj                       \
92         gtkaccellabel.obj                       \
93         gtkaccelmap.obj \
94         gtkaccessible.obj \
95         gtkaction.obj   \
96         gtkactiongroup.obj      \
97         gtkadjustment.obj                       \
98         gtkalignment.obj                        \
99         gtkarrow.obj                            \
100         gtkaspectframe.obj                      \
101         gtkassistant.obj        \
102         gtkbin.obj                              \
103         gtkbindings.obj                         \
104         gtkbbox.obj                             \
105         gtkbox.obj                              \
106         gtkbuildable.obj        \
107         gtkbuilder.obj          \
108         gtkbuilderparser.obj    \
109         gtkbutton.obj                           \
110         gtkcalendar.obj                         \
111         gtkcelleditable.obj                     \
112         gtkcelllayout.obj                       \
113         gtkcellrenderer.obj                     \
114         gtkcellrendereraccel.obj \
115         gtkcellrenderercombo.obj \
116         gtkcellrenderertext.obj                 \
117         gtkcellrenderertoggle.obj               \
118         gtkcellrendererpixbuf.obj               \
119         gtkcellrendererprogress.obj             \
120         gtkcellrendererspin.obj \
121         gtkcellview.obj         \
122         gtkcheckbutton.obj                      \
123         gtkcheckmenuitem.obj                    \
124         gtkclipboard.obj                        \
125         gtkclist.obj                            \
126         gtkcolorbutton.obj                              \
127         gtkcolorsel.obj                         \
128         gtkcolorseldialog.obj                   \
129         gtkcombo.obj                            \
130         gtkcombobox.obj                 \
131         gtkcomboboxentry.obj            \
132         gtkcontainer.obj                        \
133         gtkctree.obj                            \
134         gtkcurve.obj                            \
135         gtkdialog.obj                           \
136         gtkdnd.obj                              \
137         gtkdrawingarea.obj                      \
138         gtkeditable.obj                         \
139         gtkentry.obj                            \
140         gtkentrycompletion.obj          \
141         gtkeventbox.obj                         \
142         gtkexpander.obj                 \
143         gtkfilechooser.obj                      \
144         gtkfilechooserbutton.obj        \
145         gtkfilechooserdefault.obj                       \
146         gtkfilechooserdialog.obj                        \
147         gtkfilechooserembed.obj         \
148         gtkfilechooserentry.obj                 \
149         gtkfilechoosersettings.obj      \
150         gtkfilechooserutils.obj                 \
151         gtkfilechooserwidget.obj                        \
152         gtkfilefilter.obj                       \
153         gtkfilesel.obj                          \
154         gtkfilesystem.obj                               \
155         gtkfilesystemmodel.obj                          \
156         gtkfilesystemwin32.obj                          \
157         gtkfixed.obj                            \
158         gtkfontsel.obj                          \
159         gtkfontbutton.obj                               \
160         gtkframe.obj                            \
161         gtkgamma.obj                            \
162         gtkgc.obj                               \
163         gtkhandlebox.obj                        \
164         gtkhbbox.obj                            \
165         gtkhbox.obj                             \
166         gtkhpaned.obj                           \
167         gtkhruler.obj                           \
168         gtkhscale.obj                           \
169         gtkhscrollbar.obj                       \
170         gtkhseparator.obj                       \
171         gtkhsv.obj                              \
172         gtkiconcache.obj                        \
173         gtkiconcachevalidator.obj       \
174         gtkiconfactory.obj                      \
175         gtkicontheme.obj                        \
176         gtkiconview.obj                 \
177         gtkimage.obj                            \
178         gtkimagemenuitem.obj    \
179         gtkimcontext.obj                        \
180         gtkimcontextsimple.obj                  \
181         gtkimmodule.obj                         \
182         gtkimmulticontext.obj                   \
183         gtkinputdialog.obj                      \
184         gtkinvisible.obj                        \
185         gtkitem.obj                             \
186         gtkitemfactory.obj                      \
187         gtkkeyhash.obj  \
188         gtklabel.obj                            \
189         gtklayout.obj                           \
190         gtklinkbutton.obj       \
191         gtklist.obj                             \
192         gtklistitem.obj                         \
193         gtkliststore.obj                                \
194         gtkmain.obj                             \
195         gtkmarshalers.obj               \
196         gtkmarshal.obj          \
197         gtkmenu.obj                             \
198         gtkmenubar.obj                          \
199         gtkmenuitem.obj                         \
200         gtkmenushell.obj                        \
201         gtkmenutoolbutton.obj   \
202         gtkmessagedialog.obj                    \
203         gtkmisc.obj                             \
204         gtkmnemonichash.obj     \
205         gtkmodules.obj  \
206         gtknotebook.obj                         \
207         gtkobject.obj                           \
208         gtkoldeditable.obj                      \
209         gtkoptionmenu.obj                       \
210         gtkpagesetup.obj        \
211         gtkpaned.obj                            \
212         gtkpapersize.obj        \
213         gtkpathbar.obj                          \
214         gtkpixmap.obj                           \
215         gtkplug.obj                             \
216         gtkplug-win32.obj                               \
217         gtkpreview.obj  \
218         gtkprint-win32.obj      \
219         gtkprintcontext.obj     \
220         gtkprintoperation.obj   \
221         gtkprintoperationpreview.obj    \
222         gtkprintoperation-win32.obj     \
223         gtkprintsettings.obj    \
224         gtkprintutils.obj       \
225         gtkprogress.obj                         \
226         gtkprogressbar.obj                      \
227         gtkquery.obj    \
228         gtkradioaction.obj                      \
229         gtkradiobutton.obj                      \
230         gtkradiotoolbutton.obj                  \
231         gtkradiomenuitem.obj                    \
232         gtkrange.obj                            \
233         gtkrbtree.obj   \
234         gtkrc.obj                               \
235         gtkrecentaction.obj \
236         gtkrecentchooserdefault.obj \
237         gtkrecentchooserdialog.obj \
238         gtkrecentchoosermenu.obj        \
239         gtkrecentchooserwidget.obj \
240         gtkrecentchooserutils.obj \
241         gtkrecentchooser.obj    \
242         gtkrecentfilter.obj     \
243         gtkrecentmanager.obj    \
244         gtkruler.obj                            \
245         gtkscale.obj                            \
246         gtkscalebutton.obj      \
247         gtkscrollbar.obj                        \
248         gtkscrolledwindow.obj                   \
249         gtksearchengine.obj     \
250         gtksearchenginebeagle.obj       \
251         gtksearchenginesimple.obj       \
252         gtksearchenginetracker.obj      \
253         gtkselection.obj                        \
254         gtkseparator.obj                        \
255         gtkseparatormenuitem.obj \
256         gtkseparatortoolitem.obj \
257         gtksettings.obj \
258         gtksignal.obj                           \
259         gtksizegroup.obj \
260         gtksocket.obj                           \
261         gtksocket-win32.obj                             \
262         gtkspinbutton.obj                       \
263         gtkstatusicon.obj       \
264         gtkstyle.obj                            \
265         gtkstatusbar.obj                        \
266         gtkstock.obj                            \
267         gtktable.obj                            \
268         gtktearoffmenuitem.obj                  \
269         gtktext.obj                             \
270         gtktextbtree.obj                        \
271         gtktextbuffer.obj                       \
272         gtktextbufferrichtext.obj       \
273         gtktextbufferserialize.obj      \
274         gtktextchild.obj                        \
275         gtktextdisplay.obj                      \
276         gtktextiter.obj                         \
277         gtktextlayout.obj                       \
278         gtktextmark.obj                         \
279         gtktextsegment.obj                      \
280         gtktexttag.obj                          \
281         gtktexttagtable.obj                     \
282         gtktexttypes.obj                        \
283         gtktextutil.obj \
284         gtktextview.obj                         \
285         gtkthemes.obj                           \
286         gtktipsquery.obj                        \
287         gtktoggleaction.obj                     \
288         gtktogglebutton.obj                     \
289         gtktoggletoolbutton.obj                 \
290         gtktoolbar.obj                          \
291         gtktoolbutton.obj                               \
292         gtktoolitem.obj                         \
293         gtktooltip.obj                          \
294         gtktooltips.obj                         \
295         gtktrayicon-win32.obj   \
296         gtktree.obj                             \
297         gtktreedatalist.obj     \
298         gtktreednd.obj                          \
299         gtktreeitem.obj                         \
300         gtktreemodel.obj                        \
301         gtktreemodelfilter.obj                  \
302         gtktreemodelsort.obj                    \
303         gtktreeselection.obj                    \
304         gtktreesortable.obj \
305         gtktreestore.obj                        \
306         gtktreeview.obj                 \
307         gtktreeviewcolumn.obj                   \
308         gtktypeutils.obj                        \
309         gtktypebuiltins.obj \
310         gtkuimanager.obj        \
311         gtkvbbox.obj                            \
312         gtkvbox.obj                             \
313         gtkviewport.obj                         \
314         gtkvolumebutton.obj     \
315         gtkvpaned.obj                           \
316         gtkvruler.obj                           \
317         gtkvscale.obj                           \
318         gtkvscrollbar.obj                       \
319         gtkvseparator.obj                       \
320         gtkwidget.obj                           \
321         gtkwin32embed.obj                       \
322         gtkwin32embedwidget.obj                 \
323         gtkwindow.obj                           \
324         gtkwindow-decorate.obj
325
326 # Source headers which are non-autogenerated headers
327 gtk_public_h_sources =          \
328         gtk.h                   \
329         gtkaboutdialog.h        \
330         gtkaccelgroup.h         \
331         gtkaccellabel.h         \
332         gtkaccelmap.h           \
333         gtkaccessible.h         \
334         gtkaction.h             \
335         gtkactiongroup.h        \
336         gtkadjustment.h         \
337         gtkalignment.h          \
338         gtkarrow.h              \
339         gtkaspectframe.h        \
340         gtkassistant.h          \
341         gtkbbox.h               \
342         gtkbin.h                \
343         gtkbindings.h           \
344         gtkbox.h                \
345         gtkbuilder.h            \
346         gtkbuildable.h          \
347         gtkbutton.h             \
348         gtkcalendar.h           \
349         gtkcelleditable.h       \
350         gtkcelllayout.h         \
351         gtkcellrenderer.h       \
352         gtkcellrendereraccel.h  \
353         gtkcellrenderercombo.h  \
354         gtkcellrendererpixbuf.h \
355         gtkcellrendererprogress.h \
356         gtkcellrendererspin.h   \
357         gtkcellrenderertext.h   \
358         gtkcellrenderertoggle.h \
359         gtkcellview.h           \
360         gtkcheckbutton.h        \
361         gtkcheckmenuitem.h      \
362         gtkclipboard.h          \
363         gtkclist.h              \
364         gtkcolorbutton.h        \
365         gtkcolorsel.h           \
366         gtkcolorseldialog.h     \
367         gtkcombo.h              \
368         gtkcombobox.h           \
369         gtkcomboboxentry.h      \
370         gtkcontainer.h          \
371         gtkctree.h              \
372         gtkcurve.h              \
373         gtkdebug.h              \
374         gtkdialog.h             \
375         gtkdnd.h                \
376         gtkdrawingarea.h        \
377         gtkeditable.h           \
378         gtkentry.h              \
379         gtkentrycompletion.h    \
380         gtkenums.h              \
381         gtkeventbox.h           \
382         gtkexpander.h           \
383         gtkfilechooser.h        \
384         gtkfilechooserbutton.h  \
385         gtkfilechooserdialog.h  \
386         gtkfilechooserwidget.h  \
387         gtkfilefilter.h         \
388         gtkfilesel.h            \
389         gtkfixed.h              \
390         gtkfontbutton.h         \
391         gtkfontsel.h            \
392         gtkframe.h              \
393         gtkgamma.h              \
394         gtkgc.h                 \
395         gtkhandlebox.h          \
396         gtkhbbox.h              \
397         gtkhbox.h               \
398         gtkhpaned.h             \
399         gtkhruler.h             \
400         gtkhscale.h             \
401         gtkhscrollbar.h         \
402         gtkhseparator.h         \
403         gtkiconfactory.h        \
404         gtkicontheme.h          \
405         gtkiconview.h           \
406         gtkimage.h              \
407         gtkimagemenuitem.h      \
408         gtkimcontext.h          \
409         gtkimcontextsimple.h    \
410         gtkimmodule.h           \
411         gtkimmulticontext.h     \
412         gtkinputdialog.h        \
413         gtkinvisible.h          \
414         gtkitem.h               \
415         gtkitemfactory.h        \
416         gtklabel.h              \
417         gtklayout.h             \
418         gtklinkbutton.h         \
419         gtklist.h               \
420         gtklistitem.h           \
421         gtkliststore.h          \
422         gtkmain.h               \
423         gtkmenu.h               \
424         gtkmenubar.h            \
425         gtkmenuitem.h           \
426         gtkmenushell.h          \
427         gtkmenutoolbutton.h     \
428         gtkmessagedialog.h      \
429         gtkmisc.h               \
430         gtkmodules.h            \
431         gtknotebook.h           \
432         gtkobject.h             \
433         gtkoldeditable.h        \
434         gtkoptionmenu.h         \
435         gtkpagesetup.h          \
436         gtkpaned.h              \
437         gtkpapersize.h          \
438         gtkpixmap.h             \
439         gtkplug.h               \
440         gtkpreview.h            \
441         gtkprintcontext.h       \
442         gtkprintoperation.h     \
443         gtkprintoperationpreview.h      \
444         gtkprintsettings.h      \
445         gtkprivate.h            \
446         gtkprogress.h           \
447         gtkprogressbar.h        \
448         gtkradioaction.h        \
449         gtkradiobutton.h        \
450         gtkradiomenuitem.h      \
451         gtkradiotoolbutton.h    \
452         gtkrange.h              \
453         gtkrc.h                 \
454         gtkrecentaction.h       \
455         gtkrecentchooser.h      \
456         gtkrecentchooserdialog.h \
457         gtkrecentchoosermenu.h  \
458         gtkrecentchooserwidget.h \
459         gtkrecentfilter.h       \
460         gtkrecentmanager.h      \
461         gtkruler.h              \
462         gtkscale.h              \
463         gtkscalebutton.h        \
464         gtkscrollbar.h          \
465         gtkscrolledwindow.h     \
466         gtkselection.h          \
467         gtkseparator.h          \
468         gtkseparatormenuitem.h  \
469         gtkseparatortoolitem.h  \
470         gtksettings.h           \
471         gtksignal.h             \
472         gtksizegroup.h          \
473         gtksocket.h             \
474         gtkspinbutton.h         \
475         gtkstatusbar.h          \
476         gtkstatusicon.h         \
477         gtkstock.h              \
478         gtkstyle.h              \
479         gtktable.h              \
480         gtktearoffmenuitem.h    \
481         gtktext.h               \
482         gtktextbuffer.h         \
483         gtktextbufferrichtext.h \
484         gtktextchild.h          \
485         gtktextdisplay.h        \
486         gtktextiter.h           \
487         gtktextmark.h           \
488         gtktexttag.h            \
489         gtktexttagtable.h       \
490         gtktextview.h           \
491         gtktipsquery.h          \
492         gtktoggleaction.h       \
493         gtktogglebutton.h       \
494         gtktoggletoolbutton.h   \
495         gtktoolbar.h            \
496         gtktoolbutton.h         \
497         gtktoolitem.h           \
498         gtktooltip.h            \
499         gtktooltips.h           \
500         gtktree.h               \
501         gtktreednd.h            \
502         gtktreeitem.h           \
503         gtktreemodel.h          \
504         gtktreemodelfilter.h    \
505         gtktreemodelsort.h      \
506         gtktreeselection.h      \
507         gtktreesortable.h       \
508         gtktreestore.h          \
509         gtktreeview.h           \
510         gtktreeviewcolumn.h     \
511         gtktypeutils.h          \
512         gtkuimanager.h          \
513         gtkvbbox.h              \
514         gtkvbox.h               \
515         gtkviewport.h           \
516         gtkvolumebutton.h       \
517         gtkvpaned.h             \
518         gtkvruler.h             \
519         gtkvscale.h             \
520         gtkvscrollbar.h         \
521         gtkvseparator.h         \
522         gtkwidget.h             \
523         gtkwindow.h
524
525 # these aren't use here, but listed for reference
526 gtk_extra_sources = \
527         gtkversion.h            \
528         gtk-boxed.defs          \
529         gtkmarshal.list         \
530
531 ..\config.h : ..\config.h.win32
532         copy ..\config.h.win32 ..\config.h
533
534 gtk.def: gtk.symbols makefile.msc
535         echo EXPORTS > gtk.def
536         cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES \
537                 -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
538                 -DG_GNUC_PRINTF=;G_GNUC_PRINTF gtk.symbols >> gtk.def
539
540 gtkalias.h: gtk.symbols
541         cl /EP -DG_OS_WIN32 -DGTK_WINDOWING_WIN32 -DINCLUDE_INTERNAL_SYMBOLS gtk.symbols | $(PERL) makegtkalias.pl > gtkalias.h
542
543 gtkaliasdef.c: gtk.symbols
544          perl makegtkalias.pl -def < gtk.symbols > gtkaliasdef.c
545
546 # generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
547 # use 'echo' to work around 'command line too long'
548 gtktypebuiltins.h: $(gtk_public_h_sources) makefile.msc
549         echo #ifndef __GTK_TYPE_BUILTINS_H__ > gtktypebuiltins.h
550         echo #define __GTK_TYPE_BUILTINS_H__ >> gtktypebuiltins.h
551         echo #include "glib-object.h" >> gtktypebuiltins.h
552         echo G_BEGIN_DECLS >> gtktypebuiltins.h
553         $(PERL) $(GLIB)\gobject\glib-mkenums \
554                 --fprod "/* enumerations from \"@filename@\" */\n" \
555                 --vhead "GType @enum_name@_get_type (void);\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
556                 --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
557                 $(gtk_public_h_sources) >> gtktypebuiltins.h
558
559 gtktypebuiltins.c: $(gtk_public_h_sources) makefile.msc
560         $(PERL) $(GLIB)\gobject\glib-mkenums \
561                 --fhead "#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.h\"" \
562                 --fprod "\n/* enumerations from \"@filename@\" */" \
563                 --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[] = {" \
564                 --vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
565                 --vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
566                 $(gtk_public_h_sources) > xgen-gtbc
567         copy xgen-gtbc gtktypebuiltins.c
568
569 # private marshalers
570 gtkmarshalers.h : gtkmarshalers.list makefile.msc
571         $(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --header >gtkmarshalers.h
572
573 gtkmarshalers.c : gtkmarshalers.list makefile.msc
574         $(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --body >gtkmarshalers.c
575
576 # public, deprecated marshalers
577 gtkmarshal.h : gtkmarshal.list
578         echo #ifndef GTK_DISABLE_DEPRECATED >gtkmarshal.h
579         $(GLIB)\gobject\glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --header >>gtkmarshal.h
580         echo #endif /* GTK_DISABLE_DEPRECATED */ >>gtkmarshal.h
581
582 gtkmarshal.c : gtkmarshal.list
583         $(GLIB)\gobject\glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --body >gtkmarshal.c
584
585 gtksignal.obj : gtksignal.c gtkmarshal.c gtkmarshal.h
586         $(CC) $(CFLAGS) -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" gtksignal.c
587
588 gtk-win32.res : gtk-win32.rc
589         rc -DBUILDNUMBER=0 -r -fo gtk-win32.res gtk-win32.rc
590
591 #
592 # Linking:
593 #
594 libgtk-win32-$(GTK_VER)-0.dll : $(gtk_OBJECTS) gtk.def gtk-win32.res
595         $(CC) $(CFLAGS) -LD -Fm -Fe$@ $(gtk_OBJECTS) gtk-win32.res \
596         $(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) $(GMODULE_LIBS) \
597         $(CAIRO_LIBS) $(PANGOCAIRO_LIBS) \
598         gdi32.lib user32.lib advapi32.lib wsock32.lib shell32.lib ole32.lib comdlg32.lib winspool.lib comctl32.lib \
599         $(LDFLAGS) /implib:gtk-win32-$(GTK_VER).lib /def:gtk.def
600
601 gtk-win32-$(GTK_VER)s.lib : $(gtk_OBJECTS)
602         lib /out:gtk-win32-$(GTK_VER)s.lib $(gtk_OBJECTS)
603
604 gtk-query-immodules-$(GTK_VER).exe : queryimmodules.obj
605         $(CC) $(CFLAGS) -Fe$@ queryimmodules.obj $(GTK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)
606
607 gtk-update-icon-cache.exe : updateiconcache.obj
608         $(CC) $(CFLAGS) -Fe$@ updateiconcache.obj $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) $(INTL_LIBS) $(PANGO_LIBS) $(LDFLAGS)
609
610 gtk-x11-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
611         $(CC) $(CFLAGS) -LD -Fm -Fegtk-x11-$(GTK_VER).dll $(gtk_OBJECTS) ../gdk/gdk-x11-$(GTK_VER).lib $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) gdi32.lib user32.lib advapi32.lib $(LDFLAGS) /def:gtk.def
612
613 # General rule for compiling the objects into the DLL
614 .c.obj :
615         $(CC) $(CFLAGS) -GF -Zm400 -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" $<
616
617 $(EXAMPLE).obj : ..\examples\$(EXAMPLE)\$(EXAMPLE).c
618         $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"$(EXAMPLE)\" ..\examples\$(EXAMPLE)\$(EXAMPLE).c
619
620 $(EXAMPLE).exe : $(EXAMPLE).obj
621         $(CC) $(CFLAGS) $(EXAMPLE).obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
622