## There is no install target, you have to decide where and
## how to install for yourself.
-TOP = ../..
+TOP = ..\..
!INCLUDE $(TOP)/glib/build/win32/make.msc
# Location of the Wintab toolkit. Downloadable from http://www.pointing.com.
# definition should possibly go to build/win32/module.def, too.
-WTKIT = ..\..\wtkit126
+!IFNDEF WTKIT
+WTKIT = $(TOP)\wtkit126
+!ENDIF
###############################################################
# Nothing much configurable below
-
-!IFNDEF DEBUG
-# Full optimization:
-OPTIMIZE = -Ox -MD -Zi
-LINKDEBUG = /nodefaultlib:libc.lib
-!ELSE
-# Debugging:
-OPTIMIZE = -Zi -MDd
-LINKDEBUG = /nodefaultlib:libcd.lib /nodefaultlib:libc.lib /debug
-!ENDIF
-
-# cl -? describes the options
-CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
-
-LDFLAGS = /link $(LINKDEBUG)
-
# overwrite version?
-GTK_VER=1.3
-GDK_PIXBUF_VER=$(GTK_VER)
+GTK_VER=3.0
!IFNDEF PERL
PERL = perl
!ENDIF
-CFLAGS = -I . -I .. $(GLIB_CFLAGS) $(PANGO_CFLAGS) -I ../gdk-pixbuf \
- $(G_DEBUGGING) -DHAVE_CONFIG_H -DGDK_ENABLE_BROKEN -DGDK_VERSION=\"$(GTK_VER)\"
-EXTRALIBS = $(WTKIT)\lib\i386\wntab32x.lib $(GLIB_LIBS) \
- ..\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib $(PANGOWIN32_LIBS)
+INCLUDES = -FImsvc_recommended_pragmas.h \
+ -I . -I .. \
+ $(GLIB_CFLAGS) $(PANGO_CFLAGS) $(CAIRO_CFLAGS) $(GDK_PIXBUF_CFLAGS) \
+
+DEFINES = \
+ -DHAVE_CONFIG_H \
+ -DGDK_VERSION=\"$(GTK_VER)\" \
+ -DG_LOG_DOMAIN=\"Gdk\" \
+ -DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\"
+
+EXTRALIBS = \
+ $(WTKIT)\lib\i386\wntab32x.lib \
+ $(GLIB_LIBS) $(GDK_PIXBUF_LIBS) \
+ $(CAIRO_LIBS) $(CAIRO_GOBJECT_LIBS) \
+ $(PANGOWIN32_LIBS) $(PANGOCAIRO_LIBS) $(INTL_LIBS)
gdk-win32-backend :
cd win32
gdkconfig.h \
gdkenumtypes.h \
gdkenumtypes.c \
+ gdkmarshalers.h \
+ gdkmarshalers.c \
gdk-win32-backend \
- gdk-win32-$(GTK_VER).dll \
- testgdk.exe \
- gdk-win32-$(GTK_VER)s.lib \
+ libgdk-win32-$(GTK_VER)-0.dll \
+# testgdk.exe \
+# gdk-win32-$(GTK_VER)s.lib \
# gdk-x11-$(GTK_VER).dll \
gdk_OBJECTS = \
gdk.obj \
+ gdkapplaunchcontext.obj \
+ gdkcairo.obj \
gdkcolor.obj \
gdkcursor.obj \
- gdkdraw.obj \
+ gdkdevice.obj \
+ gdkdevicemanager.obj \
+ gdkdisplay.obj \
+ gdkdisplaymanager.obj \
+ gdkdnd.obj \
gdkenumtypes.obj \
gdkevents.obj \
- gdkfont.obj \
- gdkgc.obj \
gdkglobals.obj \
- gdkimage.obj \
+ gdkkeynames.obj \
gdkkeys.obj \
gdkkeyuni.obj \
+ gdkmarshalers.obj \
+ gdkoffscreenwindow.obj \
gdkpango.obj \
gdkpixbuf-drawable.obj \
- gdkpixbuf-render.obj \
- gdkpixmap.obj \
- gdkpolyreg-generic.obj \
gdkrectangle.obj \
- gdkregion-generic.obj \
- gdkrgb.obj \
- gdkwindow.obj
-
-gdk_public_h_sources = \
- gdk.h \
- gdkcolor.h \
- gdkcursor.h \
- gdkcursors.h \
- gdkdnd.h \
- gdkdrawable.h \
- gdkevents.h \
- gdkfont.h \
- gdkgc.h \
- gdkkeysyms.h \
- gdki18n.h \
- gdkimage.h \
- gdkinput.h \
- gdkkeys.h \
- gdkpango.h \
- gdkpixbuf.h \
- gdkpixmap.h \
- gdkproperty.h \
- gdkregion.h \
- gdkrgb.h \
- gdkselection.h \
- gdktypes.h \
- gdkvisual.h \
- gdkwindow.h \
-
-gdkenumtypes.h: $(gdk_public_h_sources) makeenums.pl
- $(PERL) makeenums.pl include $(gdk_public_h_sources) > gdkenumtypes.h
-
-gdkenumtypes.c: $(gdk_public_h_sources) makeenums.pl
- $(PERL) makeenums.pl cfile $(gdk_public_h_sources) > gdkenumtypes.c
+ gdkrgba.obj \
+ gdkscreen.obj \
+ gdkselection.obj \
+ gdkvisual.obj \
+ gdkwindow.obj \
+ gdkwindowimpl.obj \
+
+gdk_public_h_sources = \
+ gdk.h \
+ gdkapplaunchcontext.h \
+ gdkcairo.h \
+ gdkcolor.h \
+ gdkcursor.h \
+ gdkdevice.h \
+ gdkdevicemanager.h \
+ gdkdisplay.h \
+ gdkdisplaymanager.h \
+ gdkdnd.h \
+ gdkevents.h \
+ gdkkeys.h \
+ gdkkeysyms.h \
+ gdkkeysyms-compat.h \
+ gdkmain.h \
+ gdkpango.h \
+ gdkpixbuf.h \
+ gdkprivate.h \
+ gdkproperty.h \
+ gdkrectangle.h \
+ gdkrgba.h \
+ gdkscreen.h \
+ gdkselection.h \
+ gdktestutils.h \
+ gdkthreads.h \
+ gdktypes.h \
+ gdkvisual.h \
+ gdkwindow.h
+
+# private marshalers
+gdkmarshalers.h : gdkmarshalers.list
+ $(GLIB)\gobject\glib-genmarshal --prefix=_gdk_marshal gdkmarshalers.list --header >>gdkmarshalers.h
+
+gdkmarshalers.c : gdkmarshalers.list
+ $(GLIB)\gobject\glib-genmarshal --prefix=_gdk_marshal gdkmarshalers.list --body >gdkmarshalers.c
+
+gdkenumtypes.h: $(gdk_public_h_sources) gdkenumtypes.h.template
+ $(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.h.template \
+ $(gdk_public_h_sources) > gdkenumtypes.h
+
+gdkenumtypes.c: $(gdk_public_h_sources) gdkenumtypes.c.template
+ $(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.c.template \
+ $(gdk_public_h_sources) > gdkenumtypes.c
..\config.h : ..\config.h.win32
copy ..\config.h.win32 ..\config.h
gdkconfig.h : gdkconfig.h.win32
copy gdkconfig.h.win32 gdkconfig.h
-gdk-win32-$(GTK_VER).dll : $(gdk_OBJECTS) gdk.def win32\gdk-win32.lib
- $(CC) $(CFLAGS) -LD -Fegdk-win32-$(GTK_VER).dll $(gdk_OBJECTS) win32\gdk-win32.lib $(EXTRALIBS) gdi32.lib user32.lib imm32.lib shell32.lib ole32.lib uuid.lib win32\gdk.res $(LDFLAGS) /def:gdk.def
+gdk.def: gdk.symbols
+ echo EXPORTS > gdk.def
+ cl /EP -DG_OS_WIN32 -DGDK_WINDOWING_WIN32 \
+ -DG_GNUC_CONST= \
+ gdk.symbols >> gdk.def
+
+# /force /verbose:lib
+libgdk-win32-$(GTK_VER)-0.dll : $(gdk_OBJECTS) gdk.def win32\gdk-win32.lib
+ $(CC) $(CFLAGS) -LD -Fe$@ $(gdk_OBJECTS) win32\gdk-win32.lib $(EXTRALIBS) \
+ gdi32.lib user32.lib imm32.lib shell32.lib ole32.lib uuid.lib win32\gdk.res \
+ $(LDFLAGS) /implib:gdk-win32-$(GTK_VER).lib /def:gdk.def
gdk-win32-$(GTK_VER)s.lib : $(gdk_OBJECTS)
lib /out:gdk-win32-$(GTK_VER)s.lib $(gdk_OBJECTS) win32\gdk-win32.lib
$(PANGO)\pango\pangox-$(PANGO_VER).lib \
x11\gdk-x11.lib $(X11_LIBS) $(EXTRALIBS) user32.lib $(LDFLAGS) /def:gdk.def
-testgdk.exe : gdk-win32-$(GTK_VER).dll testgdk.obj
+testgdk.exe : libgdk-win32-$(GTK_VER)-0.dll testgdk.obj
$(CC) -Fetestgdk.exe testgdk.obj gdk-win32-$(GTK_VER).lib $(EXTRALIBS) $(LDFLAGS)
-.c.obj :
- $(CC) $(CFLAGS) -GD -c -DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\" $<
-
clean::
+ cd win32
+ nmake -f makefile.msc clean
+ cd ..
+ del gdkmarshalers.c
+ del gdkmarshalers.h
del *.dll
del *.obj
del *.lib