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