GitLab repository storage has been migrated to hashed layout. Please contact Infrastructure team if you notice any issues with repositories or hooks.

makefile.msc 4.79 KB
Newer Older
1 2 3 4 5 6 7 8
## Makefile for building the GDK DLL with Microsoft C
## Use: nmake -f makefile.msc

## You must first build the Win32-dependent sources in the win32 subdirectory.

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

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

12
# Location of the Wintab toolkit. Downloadable from http://www.pointing.com.
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
13
# definition should possibly go to build/win32/module.def, too.
14 15 16
!IFNDEF WTKIT
WTKIT = $(TOP)\wtkit126
!ENDIF
17 18 19 20 21 22 23

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

# Nothing much configurable below

!IFNDEF DEBUG
# Full optimization:
24 25
OPTIMIZE = -Ox -MD -Zi
LINKDEBUG = /nodefaultlib:libc.lib
26 27 28
!ELSE
# Debugging:
OPTIMIZE = -Zi -MDd
29
LINKDEBUG = /nodefaultlib:libcd.lib /nodefaultlib:libc.lib /debug
30 31 32 33 34 35 36
!ENDIF

# cl -? describes the options
CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo

LDFLAGS = /link $(LINKDEBUG)

Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
37
# overwrite version?
Owen Taylor's avatar
Owen Taylor committed
38
GTK_VER=2.0
Hans Breuer's avatar
Hans Breuer committed
39
GDK_PIXBUF_VER=$(GTK_VER)
40

Hans Breuer's avatar
updated  
Hans Breuer committed
41 42 43 44
!IFNDEF PERL
PERL = perl
!ENDIF

45
CFLAGS = -FImsvc_recommended_pragmas.h -I . -I .. \
46
	$(GLIB_CFLAGS) $(PANGO_CFLAGS) $(CAIRO_CFLAGS) -I ../gdk-pixbuf \
Hans Breuer's avatar
Hans Breuer committed
47 48 49 50
	$(G_DEBUGGING) -DHAVE_CONFIG_H -DGDK_ENABLE_BROKEN \
	-DGDK_VERSION=\"$(GTK_VER)\" \
	-DG_LOG_DOMAIN=\"Gdk\"

51 52 53 54
EXTRALIBS = \
	$(WTKIT)\lib\i386\wntab32x.lib \
	$(GLIB_LIBS) \
	..\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib \
Hans Breuer's avatar
Hans Breuer committed
55
	$(PANGOWIN32_LIBS) $(PANGOCAIRO_LIBS) $(INTL_LIBS) $(CAIRO_LIBS) \
56
	$(PANGOCAIRO_LIBS)
57

58 59 60 61 62
gdk-win32-backend :
	cd win32
	nmake -nologo -f makefile.msc
	cd ..
	
63 64 65
all: \
	..\config.h \
	gdkconfig.h \
Hans Breuer's avatar
updated  
Hans Breuer committed
66
	gdkalias.h \
67
	gdkaliasdef.c \
Hans Breuer's avatar
updated  
Hans Breuer committed
68 69
	gdkenumtypes.h \
	gdkenumtypes.c \
70 71
	gdkmarshalers.h \
	gdkmarshalers.c \
72
	gdk-win32-backend \
73
	libgdk-win32-$(GTK_VER)-0.dll \
74 75 76
	testgdk.exe \
	gdk-win32-$(GTK_VER)s.lib \
#	gdk-x11-$(GTK_VER).dll \
77 78 79

gdk_OBJECTS = \
	gdk.obj \
80
	gdkapplaunchcontext.obj \
81
	gdkcairo.obj \
82
	gdkcolor.obj \
83
	gdkcursor.obj \
Hans Breuer's avatar
Hans Breuer committed
84
	gdkdisplay.obj \
85 86
	gdkdisplaymanager.obj \
	gdkdnd.obj \
87
	gdkdraw.obj \
Hans Breuer's avatar
updated  
Hans Breuer committed
88
	gdkenumtypes.obj \
89 90 91 92 93
	gdkevents.obj \
	gdkfont.obj \
	gdkgc.obj \
	gdkglobals.obj \
	gdkimage.obj \
Hans Breuer's avatar
Hans Breuer committed
94
	gdkwindowimpl.obj \
95
	gdkkeynames.obj \
Tor Lillqvist's avatar
Tor Lillqvist committed
96
	gdkkeys.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
97
	gdkkeyuni.obj \
Hans Breuer's avatar
Hans Breuer committed
98 99
	gdkmarshalers.obj \
	gdkoffscreenwindow.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
100
	gdkpango.obj \
Hans Breuer's avatar
Hans Breuer committed
101
	gdkpixbuf-drawable.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
102
	gdkpixbuf-render.obj \
Hans Breuer's avatar
Hans Breuer committed
103
	gdkpixmap.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
104
	gdkpolyreg-generic.obj \
105
	gdkrectangle.obj \
Hans Breuer's avatar
Hans Breuer committed
106 107
	gdkregion-generic.obj \
	gdkrgb.obj \
Hans Breuer's avatar
Hans Breuer committed
108
	gdkscreen.obj \
109 110
	gdkselection.obj \
	gdkvisual.obj \
111 112
	gdkwindow.obj

Hans Breuer's avatar
updated  
Hans Breuer committed
113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
gdk_public_h_sources = \
	gdk.h		\
	gdkcolor.h	\
	gdkcursor.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	\

138 139 140 141 142 143 144
# 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

145 146 147
gdkenumtypes.h: $(gdk_public_h_sources) gdkenumtypes.h.template
	$(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.h.template \
		$(gdk_public_h_sources) > gdkenumtypes.h
Hans Breuer's avatar
updated  
Hans Breuer committed
148

149 150 151
gdkenumtypes.c: $(gdk_public_h_sources) gdkenumtypes.c.template
	$(PERL) $(GLIB)\gobject\glib-mkenums --template gdkenumtypes.c.template \
		$(gdk_public_h_sources) > gdkenumtypes.c
Hans Breuer's avatar
Hans Breuer committed
152

153 154 155 156 157 158
..\config.h : ..\config.h.win32
	copy ..\config.h.win32 ..\config.h

gdkconfig.h : gdkconfig.h.win32
	copy gdkconfig.h.win32 gdkconfig.h

Hans Breuer's avatar
updated  
Hans Breuer committed
159 160 161
gdkalias.h: gdk.symbols
	perl makegdkalias.pl < gdk.symbols > gdkalias.h

162 163 164
gdkaliasdef.c: gdk.symbols
	 perl makegdkalias.pl -def < gdk.symbols > gdkaliasdef.c

Hans Breuer's avatar
updated  
Hans Breuer committed
165 166
gdk.def: gdk.symbols
	echo EXPORTS > gdk.def
167 168 169
	cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DGDK_WINDOWING_WIN32 -DALL_FILES \
		-DG_GNUC_CONST= \
		gdk.symbols >> gdk.def
Hans Breuer's avatar
updated  
Hans Breuer committed
170

171 172 173 174
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
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
175

176 177 178 179 180 181 182 183
gdk-win32-$(GTK_VER)s.lib : $(gdk_OBJECTS)
	lib /out:gdk-win32-$(GTK_VER)s.lib $(gdk_OBJECTS) win32\gdk-win32.lib

gdk-x11-$(GTK_VER).dll : $(gdk_OBJECTS) gdk.def x11\gdk-x11.lib
	$(CC) $(CFLAGS) -LD -Fegdk-x11-$(GTK_VER).dll $(gdk_OBJECTS) \
	$(PANGO)\pango\pangox-$(PANGO_VER).lib \
	x11\gdk-x11.lib $(X11_LIBS) $(EXTRALIBS) user32.lib $(LDFLAGS) /def:gdk.def

184
testgdk.exe : libgdk-win32-$(GTK_VER)-0.dll testgdk.obj
Hans Breuer's avatar
Hans Breuer committed
185
	$(CC) -Fetestgdk.exe testgdk.obj gdk-win32-$(GTK_VER).lib $(EXTRALIBS) $(LDFLAGS)
186 187 188 189

.c.obj :
	$(CC) $(CFLAGS) -GD -c -DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\" $<

Hans Breuer's avatar
Hans Breuer committed
190
clean::
191 192 193
	cd win32
	nmake -f makefile.msc clean
	cd ..
194 195
	del gdkmarshalers.c
	del gdkmarshalers.h
196 197 198 199 200
	del *.dll
	del *.obj
	del *.lib
	del *.err
	del *.res