1 ## Makefile for building the GDK DLL with Microsoft C
2 ## Use: nmake -f makefile.msc
4 ## You must first build the Win32-dependent sources in the win32 subdirectory.
6 ## There is no install target, you have to decide where and
7 ## how to install for yourself.
10 !INCLUDE $(TOP)/glib/build/win32/make.msc
12 # Location of the Wintab toolkit. Downloadable from http://www.pointing.com.
13 # definition should possibly go to build/win32/module.def, too.
15 WTKIT = $(TOP)\wtkit126
18 ###############################################################
20 # Nothing much configurable below
24 OPTIMIZE = -Ox -MD -Zi
25 LINKDEBUG = /nodefaultlib:libc.lib
29 LINKDEBUG = /nodefaultlib:libcd.lib /nodefaultlib:libc.lib /debug
32 # cl -? describes the options
33 CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
35 LDFLAGS = /link $(LINKDEBUG)
39 GDK_PIXBUF_VER=$(GTK_VER)
45 CFLAGS = -FImsvc_recommended_pragmas.h -I . -I .. \
46 $(GLIB_CFLAGS) $(PANGO_CFLAGS) $(CAIRO_CFLAGS) -I ../gdk-pixbuf \
47 $(G_DEBUGGING) -DHAVE_CONFIG_H -DGDK_ENABLE_BROKEN \
48 -DGDK_VERSION=\"$(GTK_VER)\" \
49 -DG_LOG_DOMAIN=\"Gdk\"
52 $(WTKIT)\lib\i386\wntab32x.lib \
54 ..\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib \
55 $(PANGOWIN32_LIBS) $(INTL_LIBS) $(CAIRO_LIBS) \
60 nmake -nologo -f makefile.msc
73 libgdk-win32-$(GTK_VER)-0.dll \
75 gdk-win32-$(GTK_VER)s.lib \
76 # gdk-x11-$(GTK_VER).dll \
80 gdkapplaunchcontext.obj \
85 gdkdisplaymanager.obj \
98 gdkpixbuf-drawable.obj \
99 gdkpixbuf-render.obj \
101 gdkpolyreg-generic.obj \
103 gdkregion-generic.obj \
110 gdk_public_h_sources = \
136 gdkmarshalers.h : gdkmarshalers.list
137 $(GLIB)\gobject\glib-genmarshal --prefix=gdk_marshal gdkmarshalers.list --header >>gdkmarshalers.h
139 gdkmarshalers.c : gdkmarshalers.list
140 $(GLIB)\gobject\glib-genmarshal --prefix=gdk_marshal gdkmarshalers.list --body >gdkmarshalers.c
142 gdkenumtypes.h: $(gdk_public_h_sources) gdkenumtypes.h.template
143 $(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.h.template \
144 $(gdk_public_h_sources) > gdkenumtypes.h
146 gdkenumtypes.c: $(gdk_public_h_sources) gdkenumtypes.c.template
147 $(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.c.template \
148 $(gdk_public_h_sources) > gdkenumtypes.c
150 ..\config.h : ..\config.h.win32
151 copy ..\config.h.win32 ..\config.h
153 gdkconfig.h : gdkconfig.h.win32
154 copy gdkconfig.h.win32 gdkconfig.h
156 gdkalias.h: gdk.symbols
157 perl makegdkalias.pl < gdk.symbols > gdkalias.h
159 gdkaliasdef.c: gdk.symbols
160 perl makegdkalias.pl -def < gdk.symbols > gdkaliasdef.c
163 echo EXPORTS > gdk.def
164 cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DGDK_WINDOWING_WIN32 -DALL_FILES \
166 gdk.symbols >> gdk.def
168 libgdk-win32-$(GTK_VER)-0.dll : $(gdk_OBJECTS) gdk.def win32\gdk-win32.lib
169 $(CC) $(CFLAGS) -LD -Fe$@ $(gdk_OBJECTS) win32\gdk-win32.lib $(EXTRALIBS) \
170 gdi32.lib user32.lib imm32.lib shell32.lib ole32.lib uuid.lib win32\gdk.res \
171 $(LDFLAGS) /implib:gdk-win32-$(GTK_VER).lib /def:gdk.def
173 gdk-win32-$(GTK_VER)s.lib : $(gdk_OBJECTS)
174 lib /out:gdk-win32-$(GTK_VER)s.lib $(gdk_OBJECTS) win32\gdk-win32.lib
176 gdk-x11-$(GTK_VER).dll : $(gdk_OBJECTS) gdk.def x11\gdk-x11.lib
177 $(CC) $(CFLAGS) -LD -Fegdk-x11-$(GTK_VER).dll $(gdk_OBJECTS) \
178 $(PANGO)\pango\pangox-$(PANGO_VER).lib \
179 x11\gdk-x11.lib $(X11_LIBS) $(EXTRALIBS) user32.lib $(LDFLAGS) /def:gdk.def
181 testgdk.exe : libgdk-win32-$(GTK_VER)-0.dll testgdk.obj
182 $(CC) -Fetestgdk.exe testgdk.obj gdk-win32-$(GTK_VER).lib $(EXTRALIBS) $(LDFLAGS)
185 $(CC) $(CFLAGS) -GD -c -DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\" $<
189 nmake -f makefile.msc clean