makefile.msc 4.09 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

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

# Nothing much configurable below
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
21
# overwrite version?
Owen Taylor's avatar
Owen Taylor committed
22
GTK_VER=2.0
Hans Breuer's avatar
Hans Breuer committed
23
GDK_PIXBUF_VER=$(GTK_VER)
24

Hans Breuer's avatar
updated  
Hans Breuer committed
25 26 27 28
!IFNDEF PERL
PERL = perl
!ENDIF

29 30
INCLUDES = -FImsvc_recommended_pragmas.h \
	-I . -I .. \
31
	$(GLIB_CFLAGS) $(PANGO_CFLAGS) $(CAIRO_CFLAGS) -I ../gdk-pixbuf \
32 33 34

DEFINES = \
	-DHAVE_CONFIG_H -DGDK_ENABLE_BROKEN \
Hans Breuer's avatar
Hans Breuer committed
35
	-DGDK_VERSION=\"$(GTK_VER)\" \
36 37
	-DG_LOG_DOMAIN=\"Gdk\" \
	-DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\"
Hans Breuer's avatar
Hans Breuer committed
38

39 40 41 42
EXTRALIBS = \
	$(WTKIT)\lib\i386\wntab32x.lib \
	$(GLIB_LIBS) \
	..\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib \
Hans Breuer's avatar
Hans Breuer committed
43
	$(PANGOWIN32_LIBS) $(PANGOCAIRO_LIBS) $(INTL_LIBS) $(CAIRO_LIBS) \
44
	$(PANGOCAIRO_LIBS)
45

46 47 48 49 50
gdk-win32-backend :
	cd win32
	nmake -nologo -f makefile.msc
	cd ..
	
51 52 53
all: \
	..\config.h \
	gdkconfig.h \
Hans Breuer's avatar
updated  
Hans Breuer committed
54 55
	gdkenumtypes.h \
	gdkenumtypes.c \
56 57
	gdkmarshalers.h \
	gdkmarshalers.c \
58
	gdk-win32-backend \
59
	libgdk-win32-$(GTK_VER)-0.dll \
60 61 62
	testgdk.exe \
	gdk-win32-$(GTK_VER)s.lib \
#	gdk-x11-$(GTK_VER).dll \
63 64 65

gdk_OBJECTS = \
	gdk.obj \
66
	gdkapplaunchcontext.obj \
67
	gdkcairo.obj \
68
	gdkcolor.obj \
69
	gdkcursor.obj \
Hans Breuer's avatar
Hans Breuer committed
70
	gdkdisplay.obj \
71 72
	gdkdisplaymanager.obj \
	gdkdnd.obj \
73
	gdkdraw.obj \
Hans Breuer's avatar
updated  
Hans Breuer committed
74
	gdkenumtypes.obj \
75 76 77
	gdkevents.obj \
	gdkgc.obj \
	gdkglobals.obj \
Hans Breuer's avatar
Hans Breuer committed
78
	gdkwindowimpl.obj \
79
	gdkkeynames.obj \
Tor Lillqvist's avatar
Tor Lillqvist committed
80
	gdkkeys.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
81
	gdkkeyuni.obj \
Hans Breuer's avatar
Hans Breuer committed
82 83
	gdkmarshalers.obj \
	gdkoffscreenwindow.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
84
	gdkpango.obj \
Hans Breuer's avatar
Hans Breuer committed
85
	gdkpixbuf-drawable.obj \
Tor Lillqvist's avatar
Update.  
Tor Lillqvist committed
86
	gdkpixbuf-render.obj \
87
	gdkrectangle.obj \
Hans Breuer's avatar
Hans Breuer committed
88
	gdkscreen.obj \
89 90
	gdkselection.obj \
	gdkvisual.obj \
91 92
	gdkwindow.obj

Hans Breuer's avatar
updated  
Hans Breuer committed
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
gdk_public_h_sources = \
	gdk.h		\
	gdkcolor.h	\
	gdkcursor.h     \
	gdkdnd.h	\
	gdkdrawable.h	\
	gdkevents.h	\
	gdkgc.h		\
	gdkkeysyms.h	\
	gdkinput.h	\
	gdkkeys.h	\
	gdkpango.h	\
	gdkpixbuf.h	\
	gdkproperty.h	\
	gdkselection.h	\
	gdktypes.h	\
	gdkvisual.h	\
	gdkwindow.h	\

112 113
# private marshalers
gdkmarshalers.h : gdkmarshalers.list
114
	$(GLIB)\gobject\glib-genmarshal --prefix=_gdk_marshal gdkmarshalers.list --header >>gdkmarshalers.h
115 116

gdkmarshalers.c : gdkmarshalers.list
117
	$(GLIB)\gobject\glib-genmarshal --prefix=_gdk_marshal gdkmarshalers.list --body >gdkmarshalers.c
118

119 120 121
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
122

123 124 125
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
126

127 128 129 130 131 132
..\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
133 134
gdk.def: gdk.symbols
	echo EXPORTS > gdk.def
135 136 137
	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
138

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

144 145 146 147 148 149 150 151
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

152
testgdk.exe : libgdk-win32-$(GTK_VER)-0.dll testgdk.obj
Hans Breuer's avatar
Hans Breuer committed
153
	$(CC) -Fetestgdk.exe testgdk.obj gdk-win32-$(GTK_VER).lib $(EXTRALIBS) $(LDFLAGS)
154

Hans Breuer's avatar
Hans Breuer committed
155
clean::
156 157 158
	cd win32
	nmake -f makefile.msc clean
	cd ..
159 160
	del gdkmarshalers.c
	del gdkmarshalers.h
161 162 163 164 165
	del *.dll
	del *.obj
	del *.lib
	del *.err
	del *.res