makefile.msc.in 17.4 KB
Newer Older
Tor Lillqvist's avatar
Tor Lillqvist committed
1 2 3 4 5 6
## Makefile for building the gtk DLL with Microsoft C
## Use: nmake -f makefile.msc

## There is no install target, you have to decide where and 
## how to install for yourself.

7
TOP = ..\..
8
!INCLUDE $(TOP)/glib/build/win32/make.msc
Tor Lillqvist's avatar
Tor Lillqvist committed
9 10 11

################################################################

Hans Breuer's avatar
updated  
Hans Breuer committed
12
# Not the real version but the one used in the DLL names
13
GTK_VER = 2.0
Hans Breuer's avatar
updated  
Hans Breuer committed
14
GDK_PIXBUF_VER = 2.0
Tor Lillqvist's avatar
Tor Lillqvist committed
15

16

Tor Lillqvist's avatar
Tor Lillqvist committed
17 18 19
GDK_LIBS = ../gdk/gdk-win32-$(GTK_VER).lib
GTK_LIBS = gtk-win32-$(GTK_VER).lib
GDK_PIXBUF_LIBS = ../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
Hans Breuer's avatar
updated  
Hans Breuer committed
20
GTK_BINARY_VERSION = @GTK_BINARY_VERSION@
Tor Lillqvist's avatar
Tor Lillqvist committed
21 22 23 24 25 26 27

# Perl and awk are needed to generate some source files.
# These generated source files are distribuyted with the Win32 GTk+ source
# distributions, so don't worry if you don't have perl and awk.
PERL = perl
AWK = gawk

Hans Breuer's avatar
Hans Breuer committed
28
INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. -I ../gdk -I ../gdk-pixbuf
Hans Breuer's avatar
Hans Breuer committed
29
DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \
30
		$(INTL_CFLAGS) $(ATK_CFLAGS) $(CAIRO_CFLAGS)
31
LDFLAGS = $(ATK_LIBS) /link /machine:ix86 $(LINKDEBUG)
Tor Lillqvist's avatar
Tor Lillqvist committed
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 35 36
DEFINES = \
	-DHAVE_CONFIG_H \
	$(G_DEBUGGING) -DGTK_DISABLE_COMPAT_H -DG_LOG_DOMAIN=\"Gtk\" -Dnear=xxnear \
Hans Breuer's avatar
Hans Breuer committed
37 38
	-DPANGO_ENABLE_BACKEND \
	-DGTK_VERSION=\"$(GTK_VER)\" -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\" \
Hans Breuer's avatar
Hans Breuer committed
39
	-DGTK_HOST=\"win32\" \
40 41
	-DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \
	-DGTK_PRINT_BACKENDS=\"file,lpr\"	\
42 43
	-DGTK_PRINT_PREVIEW_COMMAND="\"evince --unlink-tempfile --preview %f\"" \
	-DGTK_LIBDIR=\"/magic/path/replaced/at/runtime\"
Tor Lillqvist's avatar
Tor Lillqvist committed
44 45 46

TOUCH = copy makefile.msc+nul

47 48 49 50 51 52 53 54 55 56 57
gtkbuiltincache.h: gtk-update-icon-cache.exe
	cd stock-icons\16
	copy gtk-go-forward-ltr.png gtk-go-back-rtl.png
	copy gtk-go-back-ltr.png gtk-go-forward-rtl.png
	copy gtk-goto-last-ltr.png gtk-goto-first-rtl.png
	copy gtk-goto-first-ltr.png gtk-goto-last-rtl.png
	copy gtk-media-rewind-ltr.png gtk-media-forward-rtl.png
	copy gtk-media-previous-ltr.png gtk-media-next-rtl.png
	copy gtk-media-next-ltr.png gtk-media-previous-rtl.png
	copy gtk-media-forward-ltr.png gtk-media-rewind-rtl.png
	copy gtk-floppy.png gtk-save.png
Hans Breuer's avatar
Hans Breuer committed
58 59 60 61 62 63
	copy gtk-harddisk.png drive-harddisk.png
	copy gtk-directory.png folder.png
	copy gtk-directory.png folder-remote.png
	copy gtk-home.png user-home.png
	copy gtk-directory.png user-desktop.png
	copy gtk-file.png text-x-generic.png
64 65 66 67 68 69 70 71 72 73
	cd ..\24
	copy gtk-go-forward-ltr.png gtk-go-back-rtl.png
	copy gtk-go-back-ltr.png gtk-go-forward-rtl.png
	copy gtk-goto-last-ltr.png gtk-goto-first-rtl.png
	copy gtk-goto-first-ltr.png gtk-goto-last-rtl.png
	copy gtk-media-rewind-ltr.png gtk-media-forward-rtl.png
	copy gtk-media-previous-ltr.png gtk-media-next-rtl.png
	copy gtk-media-next-ltr.png gtk-media-previous-rtl.png
	copy gtk-media-forward-ltr.png gtk-media-rewind-rtl.png
	copy gtk-floppy.png gtk-save.png
Hans Breuer's avatar
Hans Breuer committed
74 75 76 77 78 79
	copy gtk-harddisk.png drive-harddisk.png
	copy gtk-directory.png folder.png
	copy gtk-directory.png folder-remote.png
	copy gtk-home.png user-home.png
	copy gtk-directory.png user-desktop.png
	copy gtk-file.png text-x-generic.png
80 81 82 83
	cd ..\..
	del gtkicontheme.obj
	gtk-update-icon-cache --force --ignore-theme-index 	\
	   --source builtin_icons stock-icons > gtkbuiltincache.h
84

Hans Breuer's avatar
Hans Breuer committed
85 86 87
GENERATED = \
	gtktypebuiltins.h gtktypebuiltins.c \
	gtkmarshal.h gtkmarshal.c gtkmarshalers.h gtkmarshalers.c \
88
	gtk.def gtktypefuncs.c
Hans Breuer's avatar
Hans Breuer committed
89

Tor Lillqvist's avatar
Tor Lillqvist committed
90 91
all :						\
	..\config.h				\
Hans Breuer's avatar
Hans Breuer committed
92
	$(GENERATED)				\
93 94
	gtk-update-icon-cache.exe		\
	gtkbuiltincache.h			\
95
	libgtk-win32-$(GTK_VER)-0.dll		\
96
	gtk-query-immodules-$(GTK_VER).exe \
Hans Breuer's avatar
Hans Breuer committed
97 98
#	gtk-win32-$(GTK_VER)s.lib \
#	gtk-x11-$(GTK_VER).dll
Tor Lillqvist's avatar
Tor Lillqvist committed
99

100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
gtk_OBJECTS_deprecated = \
	gtkcombo.obj \
	gtkclist.obj \
	gtkctree.obj \
	gtkfilesel.obj \
	gtktext.obj \
	gtktoolbar.obj \
	gtklist.obj \
	gtkitemfactory.obj \
	gtkoptionmenu.obj \
	gtktree.obj \
	gtktreeitem.obj \
	gtkoldeditable.obj \
	gtklistitem.obj \
	gtkprogress.obj \
	gtktipsquery.obj \
Hans Breuer's avatar
Hans Breuer committed
116
	gtkshow.obj \
117 118 119 120 121 122 123 124 125
	gtkpreview.obj \
	gtkseparatortoolitem.obj \
	gtktypeutils.obj \
	gtktooltips.obj \

gtk_OBJECTS_cell = \
	gtkcelleditable.obj \
	gtkcelllayout.obj \
	gtkcellrenderer.obj \
126
	gtkcellrendereraccel.obj \
127
	gtkcellrenderercombo.obj \
128 129 130 131
	gtkcellrenderertext.obj \
	gtkcellrenderertoggle.obj \
	gtkcellrendererpixbuf.obj \
	gtkcellrendererprogress.obj \
Hans Breuer's avatar
updated  
Hans Breuer committed
132
	gtkcellrendererspin.obj	\
Hans Breuer's avatar
Hans Breuer committed
133
	gtkcellrendererspinner.obj \
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187
	gtkcellview.obj \
	gtkliststore.obj \
	gtktreednd.obj \
	gtktreemodel.obj \
	gtktreemodelfilter.obj \
	gtktreemodelsort.obj \
	gtktreeselection.obj \
	gtktreesortable.obj \
	gtktreestore.obj \
	gtktreeview.obj \
	gtktreeviewcolumn.obj \

gtk_OBJECTS_file = \
	gtkfilechooser.obj \
	gtkfilechooserbutton.obj \
	gtkfilechooserdefault.obj \
	gtkfilechooserdialog.obj \
	gtkfilechooserembed.obj \
	gtkfilechooserentry.obj \
	gtkfilechoosersettings.obj \
	gtkfilechooserutils.obj \
	gtkfilechooserwidget.obj \
	gtkfilefilter.obj \
	gtkfilesystem.obj \
	gtkfilesystemmodel.obj \

gtk_OBJECTS_print = \
	gtkprint-win32.obj \
	gtkprintcontext.obj \
	gtkprintoperation.obj \
	gtkprintoperationpreview.obj \
	gtkprintoperation-win32.obj \
	gtkprintsettings.obj \
	gtkprintutils.obj \

gtk_OBJECTS_text = \
	gtktestutils.obj \
	gtktextbtree.obj \
	gtktextbuffer.obj \
	gtktextbufferrichtext.obj \
	gtktextbufferserialize.obj \
	gtktextchild.obj \
	gtktextdisplay.obj \
	gtktextiter.obj \
	gtktextlayout.obj \
	gtktextmark.obj \
	gtktextsegment.obj \
	gtktexttag.obj \
	gtktexttagtable.obj \
	gtktexttypes.obj \
	gtktextutil.obj	\
	gtktextview.obj \

gtk_OBJECTS_recent = \
188
	gtkrecentaction.obj \
Hans Breuer's avatar
updated  
Hans Breuer committed
189 190
	gtkrecentchooserdefault.obj \
	gtkrecentchooserdialog.obj \
191
	gtkrecentchoosermenu.obj \
Hans Breuer's avatar
updated  
Hans Breuer committed
192 193
	gtkrecentchooserwidget.obj \
	gtkrecentchooserutils.obj \
194 195 196 197 198 199 200 201 202 203 204 205 206
	gtkrecentchooser.obj \
	gtkrecentfilter.obj \
	gtkrecentmanager.obj \

gtk_OBJECTS = \
	fnmatch.obj \
	gtkaboutdialog.obj \
	gtkaccelgroup.obj \
	gtkaccellabel.obj \
	gtkaccelmap.obj	\
	gtkaccessible.obj \
	gtkaction.obj \
	gtkactiongroup.obj \
Hans Breuer's avatar
Hans Breuer committed
207
	gtkactivatable.obj \
208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236
	gtkadjustment.obj \
	gtkalignment.obj \
	gtkarrow.obj \
	gtkaspectframe.obj \
	gtkassistant.obj \
	gtkbin.obj \
	gtkbindings.obj \
	gtkbbox.obj \
	gtkbox.obj \
	gtkbuildable.obj \
	gtkbuilder.obj \
	gtkbuilderparser.obj \
	gtkbutton.obj \
	gtkcalendar.obj \
	gtkcheckbutton.obj \
	gtkcheckmenuitem.obj \
	gtkclipboard.obj \
	gtkcolorbutton.obj \
	gtkcolorsel.obj \
	gtkcolorseldialog.obj \
	gtkcombobox.obj	\
	gtkcomboboxentry.obj \
	gtkcontainer.obj \
	gtkcurve.obj \
	gtkdialog.obj \
	gtkdnd.obj \
	gtkdrawingarea.obj \
	gtkeditable.obj \
	gtkentry.obj \
Hans Breuer's avatar
Hans Breuer committed
237
	gtkentrybuffer.obj \
238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266
	gtkentrycompletion.obj \
	gtkeventbox.obj \
	gtkexpander.obj \
	gtkfixed.obj \
	gtkfontsel.obj \
	gtkfontbutton.obj \
	gtkframe.obj \
	gtkgamma.obj \
	gtkgc.obj \
	gtkhandlebox.obj \
	gtkhbbox.obj \
	gtkhbox.obj \
	gtkhpaned.obj \
	gtkhruler.obj \
	gtkhscale.obj \
	gtkhscrollbar.obj \
	gtkhseparator.obj \
	gtkhsv.obj \
	gtkiconcache.obj \
	gtkiconcachevalidator.obj \
	gtkiconfactory.obj \
	gtkicontheme.obj \
	gtkiconview.obj \
	gtkimage.obj \
	gtkimagemenuitem.obj \
	gtkimcontext.obj \
	gtkimcontextsimple.obj \
	gtkimmodule.obj	\
	gtkimmulticontext.obj \
Hans Breuer's avatar
Hans Breuer committed
267
	gtkinfobar.obj \
268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287
	gtkinputdialog.obj \
	gtkinvisible.obj \
	gtkitem.obj \
	gtkkeyhash.obj	\
	gtklabel.obj \
	gtklayout.obj \
	gtklinkbutton.obj \
	gtkmain.obj \
	gtkmarshalers.obj \
	gtkmarshal.obj \
	gtkmenu.obj \
	gtkmenubar.obj \
	gtkmenuitem.obj \
	gtkmenushell.obj \
	gtkmenutoolbutton.obj \
	gtkmessagedialog.obj \
	gtkmisc.obj \
	gtkmnemonichash.obj \
	gtkmodules.obj \
	gtkmountoperation.obj \
Hans Breuer's avatar
Hans Breuer committed
288
	gtkmountoperation-stub.obj \
289 290
	gtknotebook.obj \
	gtkobject.obj \
Hans Breuer's avatar
Hans Breuer committed
291
	gtkoffscreenwindow.obj \
Hans Breuer's avatar
Hans Breuer committed
292
	gtkorientable.obj \
293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318
	gtkpagesetup.obj \
	gtkpaned.obj \
	gtkpapersize.obj \
	gtkpathbar.obj \
	gtkplug.obj \
	gtkplug-win32.obj \
	gtkprogressbar.obj \
	gtkquery.obj \
	gtkradioaction.obj \
	gtkradiobutton.obj \
	gtkradiotoolbutton.obj \
	gtkradiomenuitem.obj \
	gtkrange.obj \
	gtkrbtree.obj \
	gtkrc.obj \
	gtkruler.obj \
	gtkscale.obj \
	gtkscalebutton.obj \
	gtkscrollbar.obj \
	gtkscrolledwindow.obj \
	gtksearchengine.obj \
	gtksearchenginebeagle.obj \
	gtksearchenginesimple.obj \
	gtksearchenginetracker.obj \
	gtkselection.obj \
	gtkseparator.obj \
319
	gtkseparatormenuitem.obj \
320
	gtksettings.obj \
321
	gtksizegroup.obj \
322 323 324
	gtksocket.obj \
	gtksocket-win32.obj \
	gtkspinbutton.obj \
Hans Breuer's avatar
Hans Breuer committed
325
	gtkspinner.obj \
326 327 328 329 330 331 332 333 334 335 336 337
	gtkstatusicon.obj \
	gtkstyle.obj \
	gtkstatusbar.obj \
	gtkstock.obj \
	gtktable.obj \
	gtktearoffmenuitem.obj \
	gtkthemes.obj \
	gtktoggleaction.obj \
	gtktogglebutton.obj \
	gtktoggletoolbutton.obj \
	gtktoolbutton.obj \
	gtktoolitem.obj \
Hans Breuer's avatar
Hans Breuer committed
338 339
	gtktoolitemgroup.obj \
	gtktoolpalette.obj \
340 341 342
	gtktoolshell.obj \
	gtktooltip.obj \
	gtktreedatalist.obj \
343
	gtktypebuiltins.obj \
344 345 346 347 348 349 350 351 352 353 354 355 356 357
	gtkuimanager.obj \
	gtkvbbox.obj \
	gtkvbox.obj \
	gtkviewport.obj \
	gtkvolumebutton.obj \
	gtkvpaned.obj \
	gtkvruler.obj \
	gtkvscale.obj \
	gtkvscrollbar.obj \
	gtkvseparator.obj \
	gtkwidget.obj \
	gtkwin32embed.obj \
	gtkwin32embedwidget.obj \
	gtkwindow.obj \
358
	gtkwindow-decorate.obj
Tor Lillqvist's avatar
Tor Lillqvist committed
359 360

# Source headers which are non-autogenerated headers
361
gtk_public_h_sources =		\
Tor Lillqvist's avatar
Tor Lillqvist committed
362
	gtk.h			\
Hans Breuer's avatar
Hans Breuer committed
363
	gtkaboutdialog.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
364 365
	gtkaccelgroup.h		\
	gtkaccellabel.h		\
366
	gtkaccelmap.h		\
Hans Breuer's avatar
Hans Breuer committed
367
	gtkaccessible.h		\
368 369
	gtkaction.h		\
	gtkactiongroup.h	\
Hans Breuer's avatar
Hans Breuer committed
370
	gtkactivatable.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
371 372 373 374
	gtkadjustment.h		\
	gtkalignment.h		\
	gtkarrow.h		\
	gtkaspectframe.h	\
Hans Breuer's avatar
Hans Breuer committed
375
	gtkassistant.h		\
376
	gtkbbox.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
377 378 379
	gtkbin.h		\
	gtkbindings.h		\
	gtkbox.h		\
Hans Breuer's avatar
Hans Breuer committed
380 381
	gtkbuilder.h		\
	gtkbuildable.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
382 383
	gtkbutton.h		\
	gtkcalendar.h		\
384 385 386
	gtkcelleditable.h	\
	gtkcelllayout.h		\
	gtkcellrenderer.h	\
387
	gtkcellrendereraccel.h	\
Hans Breuer's avatar
Hans Breuer committed
388
	gtkcellrenderercombo.h	\
389
	gtkcellrendererpixbuf.h	\
Hans Breuer's avatar
Hans Breuer committed
390
	gtkcellrendererprogress.h \
Hans Breuer's avatar
updated  
Hans Breuer committed
391
	gtkcellrendererspin.h   \
Hans Breuer's avatar
Hans Breuer committed
392
	gtkcellrendererspinner.h \
393 394
	gtkcellrenderertext.h	\
	gtkcellrenderertoggle.h	\
Hans Breuer's avatar
Hans Breuer committed
395
	gtkcellview.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
396 397
	gtkcheckbutton.h	\
	gtkcheckmenuitem.h	\
398
	gtkclipboard.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
399
	gtkclist.h		\
400
	gtkcolorbutton.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
401 402 403
	gtkcolorsel.h		\
	gtkcolorseldialog.h	\
	gtkcombo.h		\
404 405
	gtkcombobox.h		\
	gtkcomboboxentry.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
406 407 408
	gtkcontainer.h		\
	gtkctree.h		\
	gtkcurve.h		\
Hans Breuer's avatar
Hans Breuer committed
409
	gtkdebug.h              \
Tor Lillqvist's avatar
Tor Lillqvist committed
410 411 412
	gtkdialog.h		\
	gtkdnd.h		\
	gtkdrawingarea.h	\
Hans Breuer's avatar
Hans Breuer committed
413
	gtkeditable.h           \
Tor Lillqvist's avatar
Tor Lillqvist committed
414
	gtkentry.h		\
Hans Breuer's avatar
Hans Breuer committed
415
	gtkentrybuffer.h	\
416
	gtkentrycompletion.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
417 418
	gtkenums.h		\
	gtkeventbox.h		\
419
	gtkexpander.h		\
Hans Breuer's avatar
Hans Breuer committed
420
	gtkfilechooser.h        \
Hans Breuer's avatar
Hans Breuer committed
421
	gtkfilechooserbutton.h  \
Hans Breuer's avatar
Hans Breuer committed
422 423 424
	gtkfilechooserdialog.h  \
	gtkfilechooserwidget.h  \
	gtkfilefilter.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
425 426
	gtkfilesel.h		\
	gtkfixed.h		\
427
	gtkfontbutton.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
428 429 430 431 432 433 434 435 436 437 438 439
	gtkfontsel.h		\
	gtkframe.h		\
	gtkgamma.h		\
	gtkgc.h			\
	gtkhandlebox.h		\
	gtkhbbox.h		\
	gtkhbox.h		\
	gtkhpaned.h		\
	gtkhruler.h		\
	gtkhscale.h		\
	gtkhscrollbar.h		\
	gtkhseparator.h		\
440
	gtkiconfactory.h	\
441
	gtkicontheme.h		\
442
	gtkiconview.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
443
	gtkimage.h		\
444
	gtkimagemenuitem.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
445
	gtkimcontext.h		\
446
	gtkimcontextsimple.h	\
447
	gtkimmodule.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
448 449 450 451 452 453
	gtkimmulticontext.h	\
	gtkinputdialog.h	\
	gtkinvisible.h		\
	gtkitem.h		\
	gtkitemfactory.h	\
	gtklabel.h		\
Hans Breuer's avatar
Hans Breuer committed
454
	gtklayout.h             \
Hans Breuer's avatar
updated  
Hans Breuer committed
455
	gtklinkbutton.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
456 457
	gtklist.h		\
	gtklistitem.h		\
458
	gtkliststore.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
459 460 461 462 463
	gtkmain.h		\
	gtkmenu.h		\
	gtkmenubar.h		\
	gtkmenuitem.h		\
	gtkmenushell.h		\
Hans Breuer's avatar
Hans Breuer committed
464
	gtkmenutoolbutton.h	\
465
	gtkmessagedialog.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
466
	gtkmisc.h		\
Hans Breuer's avatar
Hans Breuer committed
467
	gtkmodules.h		\
468
	gtkmountoperation.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
469 470
	gtknotebook.h		\
	gtkobject.h		\
Hans Breuer's avatar
Hans Breuer committed
471
	gtkoffscreenwindow.h	\
472
	gtkoldeditable.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
473
	gtkoptionmenu.h		\
474
	gtkpagesetup.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
475
	gtkpaned.h		\
476
	gtkpapersize.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
477 478
	gtkplug.h		\
	gtkpreview.h		\
479 480
	gtkprintcontext.h	\
	gtkprintoperation.h	\
Hans Breuer's avatar
Hans Breuer committed
481
	gtkprintoperationpreview.h	\
482
	gtkprintsettings.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
483 484 485
	gtkprivate.h		\
	gtkprogress.h		\
	gtkprogressbar.h	\
486
	gtkradioaction.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
487 488
	gtkradiobutton.h	\
	gtkradiomenuitem.h	\
489
	gtkradiotoolbutton.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
490 491
	gtkrange.h		\
	gtkrc.h			\
492
	gtkrecentaction.h	\
Hans Breuer's avatar
updated  
Hans Breuer committed
493 494 495 496 497 498
	gtkrecentchooser.h 	\
	gtkrecentchooserdialog.h \
	gtkrecentchoosermenu.h 	\
	gtkrecentchooserwidget.h \
	gtkrecentfilter.h 	\
	gtkrecentmanager.h 	\
Tor Lillqvist's avatar
Tor Lillqvist committed
499 500
	gtkruler.h		\
	gtkscale.h		\
501
	gtkscalebutton.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
502 503 504 505
	gtkscrollbar.h		\
	gtkscrolledwindow.h	\
	gtkselection.h		\
	gtkseparator.h		\
506 507 508
	gtkseparatormenuitem.h	\
	gtkseparatortoolitem.h	\
	gtksettings.h		\
Hans Breuer's avatar
Hans Breuer committed
509
	gtksizegroup.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
510 511
	gtksocket.h		\
	gtkspinbutton.h		\
Hans Breuer's avatar
Hans Breuer committed
512
	gtkspinner.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
513
	gtkstatusbar.h		\
Hans Breuer's avatar
Hans Breuer committed
514
	gtkstatusicon.h		\
515
	gtkstock.h		\
516
	gtkstyle.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
517
	gtktable.h		\
Hans Breuer's avatar
Hans Breuer committed
518
	gtktearoffmenuitem.h    \
519
	gtktext.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
520
	gtktextbuffer.h		\
Hans Breuer's avatar
updated  
Hans Breuer committed
521
	gtktextbufferrichtext.h	\
522 523
	gtktextchild.h		\
	gtktextdisplay.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
524 525 526 527 528 529
	gtktextiter.h		\
	gtktextmark.h		\
	gtktexttag.h		\
	gtktexttagtable.h	\
	gtktextview.h		\
	gtktipsquery.h		\
530
	gtktoggleaction.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
531
	gtktogglebutton.h	\
532
	gtktoggletoolbutton.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
533
	gtktoolbar.h		\
534 535
	gtktoolbutton.h		\
	gtktoolitem.h		\
Hans Breuer's avatar
Hans Breuer committed
536 537
	gtktoolitemgroup.h		\
	gtktoolpalette.h	\
Hans Breuer's avatar
Hans Breuer committed
538
	gtktooltip.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
539 540
	gtktooltips.h		\
	gtktree.h		\
541
	gtktreednd.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
542
	gtktreeitem.h		\
543
	gtktreemodel.h		\
544
	gtktreemodelfilter.h	\
545
	gtktreemodelsort.h	\
546
	gtktreeselection.h	\
547
	gtktreesortable.h	\
548 549 550
	gtktreestore.h		\
	gtktreeview.h		\
	gtktreeviewcolumn.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
551
	gtktypeutils.h		\
Hans Breuer's avatar
Hans Breuer committed
552
	gtkuimanager.h		\
Tor Lillqvist's avatar
Tor Lillqvist committed
553 554 555
	gtkvbbox.h		\
	gtkvbox.h		\
	gtkviewport.h		\
556
	gtkvolumebutton.h	\
Tor Lillqvist's avatar
Tor Lillqvist committed
557 558 559 560 561 562 563 564
	gtkvpaned.h		\
	gtkvruler.h		\
	gtkvscale.h		\
	gtkvscrollbar.h		\
	gtkvseparator.h		\
	gtkwidget.h		\
	gtkwindow.h

565 566
# these aren't use here, but listed for reference
gtk_extra_sources = \
567
	gtkversion.h		\
568 569 570
	gtk-boxed.defs		\
	gtkmarshal.list		\

Tor Lillqvist's avatar
Tor Lillqvist committed
571 572 573
..\config.h : ..\config.h.win32
	copy ..\config.h.win32 ..\config.h

574
gtk.def: gtk.symbols makefile.msc
Hans Breuer's avatar
Hans Breuer committed
575
	echo EXPORTS > gtk.def
576
	cl /EP -DG_OS_WIN32 \
577 578
		-DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
		-DG_GNUC_PRINTF=;G_GNUC_PRINTF gtk.symbols >> gtk.def
Hans Breuer's avatar
Hans Breuer committed
579

Tor Lillqvist's avatar
Tor Lillqvist committed
580
# generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
581 582 583 584 585 586 587 588 589 590 591
# use 'echo' to work around 'command line too long'
gtktypebuiltins.h: $(gtk_public_h_sources) makefile.msc
	echo #ifndef __GTK_TYPE_BUILTINS_H__ > gtktypebuiltins.h
	echo #define __GTK_TYPE_BUILTINS_H__ >> gtktypebuiltins.h
	echo #include "glib-object.h" >> gtktypebuiltins.h
	echo G_BEGIN_DECLS >> gtktypebuiltins.h
	$(PERL) $(GLIB)\gobject\glib-mkenums \
		--fprod "/* enumerations from \"@filename@\" */\n" \
		--vhead "GType @enum_name@_get_type (void);\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
		--ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
		$(gtk_public_h_sources) >> gtktypebuiltins.h
Tor Lillqvist's avatar
Tor Lillqvist committed
592

593 594 595 596 597 598 599 600 601
gtktypebuiltins.c: $(gtk_public_h_sources) makefile.msc
	$(PERL) $(GLIB)\gobject\glib-mkenums \
		--fhead "#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.h\"" \
		--fprod "\n/* enumerations from \"@filename@\" */" \
		--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[] = {" \
		--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
		--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
		$(gtk_public_h_sources) > xgen-gtbc
	copy xgen-gtbc gtktypebuiltins.c
Tor Lillqvist's avatar
Tor Lillqvist committed
602

603
# private marshalers
Hans Breuer's avatar
Hans Breuer committed
604 605
gtkmarshalers.h : gtkmarshalers.list makefile.msc
	$(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --header >gtkmarshalers.h
606

Hans Breuer's avatar
Hans Breuer committed
607
gtkmarshalers.c : gtkmarshalers.list makefile.msc
608 609 610
	$(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --body >gtkmarshalers.c

# public, deprecated marshalers
Tor Lillqvist's avatar
Tor Lillqvist committed
611
gtkmarshal.h : gtkmarshal.list
612 613 614
	echo #ifndef GTK_DISABLE_DEPRECATED >gtkmarshal.h
	$(GLIB)\gobject\glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --header >>gtkmarshal.h
	echo #endif /* GTK_DISABLE_DEPRECATED */ >>gtkmarshal.h
Tor Lillqvist's avatar
Tor Lillqvist committed
615 616

gtkmarshal.c : gtkmarshal.list
617 618
	$(GLIB)\gobject\glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --body >gtkmarshal.c

619 620
gtktypefuncs.c : makefile.msc
	echo /*none*/ > gtktypefuncs.c
Tor Lillqvist's avatar
Tor Lillqvist committed
621

622 623
gtk-win32.res : gtk-win32.rc
	rc -DBUILDNUMBER=0 -r -fo gtk-win32.res gtk-win32.rc
Hans Breuer's avatar
Hans Breuer committed
624

625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656
# build some static limits to covercome command line too long
# may also speed up the build
gtk-deprecated.lib : $(gtk_OBJECTS_deprecated)
	lib /out:gtk-deprecated.lib $(gtk_OBJECTS_deprecated)

gtk-cell.lib : $(gtk_OBJECTS_cell)
	lib /out:gtk-cell.lib $(gtk_OBJECTS_cell)

gtk-file.lib : $(gtk_OBJECTS_file)
	lib /out:gtk-file.lib $(gtk_OBJECTS_file)

gtk-print.lib : $(gtk_OBJECTS_print)
	lib /out:gtk-print.lib $(gtk_OBJECTS_print)

gtk-recent.lib : $(gtk_OBJECTS_recent)
	lib /out:gtk-recent.lib $(gtk_OBJECTS_recent)

gtk-text.lib : $(gtk_OBJECTS_text)
	lib /out:gtk-text.lib $(gtk_OBJECTS_text)

gtk-core.lib : $(gtk_OBJECTS) 
	lib /out:gtk-core.lib $(gtk_OBJECTS)

gtk_SUBLIBS = \
	gtk-deprecated.lib \
	gtk-cell.lib \
	gtk-file.lib \
	gtk-print.lib \
	gtk-recent.lib \
	gtk-text.lib \
	gtk-core.lib

Tor Lillqvist's avatar
Tor Lillqvist committed
657 658 659
#
# Linking:
#
660 661
libgtk-win32-$(GTK_VER)-0.dll : $(gtk_SUBLIBS) gtk.def gtk-win32.res
	$(CC) $(CFLAGS) -LD -Fm -Fe$@ $(gtk_SUBLIBS) gtk-win32.res \
662
	$(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) $(GMODULE_LIBS) \
663
	$(CAIRO_LIBS) $(PANGOCAIRO_LIBS) \
664
	gdi32.lib user32.lib advapi32.lib wsock32.lib shell32.lib ole32.lib comdlg32.lib winspool.lib comctl32.lib \
665
	$(LDFLAGS) /implib:gtk-win32-$(GTK_VER).lib /def:gtk.def
666 667 668

gtk-win32-$(GTK_VER)s.lib : $(gtk_OBJECTS)
	lib /out:gtk-win32-$(GTK_VER)s.lib $(gtk_OBJECTS)
Tor Lillqvist's avatar
Tor Lillqvist committed
669

670 671 672
gtk-query-immodules-$(GTK_VER).exe : queryimmodules.obj
	$(CC) $(CFLAGS) -Fe$@ queryimmodules.obj $(GTK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)

673
gtk-update-icon-cache.exe : updateiconcache.obj
674
	$(CC) $(CFLAGS) -Fe$@ updateiconcache.obj $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) $(INTL_LIBS) $(PANGO_LIBS) $(LDFLAGS)
675

Hans Breuer's avatar
Hans Breuer committed
676 677 678
gtk-x11-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
	$(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

Tor Lillqvist's avatar
Tor Lillqvist committed
679 680
# General rule for compiling the objects into the DLL
.c.obj :
681
	$(CC) $(CFLAGS) -GF -Zm400 -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" $<
Tor Lillqvist's avatar
Tor Lillqvist committed
682

683 684 685 686 687 688
$(EXAMPLE).obj : ..\examples\$(EXAMPLE)\$(EXAMPLE).c
	$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"$(EXAMPLE)\" ..\examples\$(EXAMPLE)\$(EXAMPLE).c

$(EXAMPLE).exe : $(EXAMPLE).obj
	$(CC) $(CFLAGS) $(EXAMPLE).obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)