added gbase64.obj and derive the static libs name from auto* variables
[platform/upstream/glib.git] / glib / makefile.msc.in
1 ## Makefile for building the GLib dlls with Microsoft C
2 ## Use: nmake -f makefile.msc
3
4 TOP = ..\..
5
6 !INCLUDE ..\build\win32\make.msc
7
8 ################################################################
9
10 INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ..
11 DEFINES = -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" -DG_ENABLE_DEBUG
12 DEPCFLAGS = -Zm400 $(INTL_CFLAGS) $(LIBICONV_CFLAGS) $(DIRENT_CFLAGS)
13
14 all :                           \
15         ..\config.h             \
16         ..\glibconfig.h \
17         galias.h                \
18         galiasdef.c             \
19         gnulib\gnulib.lib       \
20         libglib-2.0-0.dll \
21         glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib \
22         gspawn-win32-helper.exe \
23
24
25 gnulib\gnulib.lib :
26         cd gnulib
27         nmake -f makefile.msc
28         cd ..
29
30 glib_OBJECTS =                  \
31         garray.obj              \
32         gasyncqueue.obj         \
33         gatomic.obj     \
34         gbacktrace.obj          \
35         gbase64.obj     \
36         gbookmarkfile.obj       \
37         gcache.obj              \
38         gcompletion.obj         \
39         gconvert.obj            \
40         gdataset.obj            \
41         gdate.obj               \
42         gdir.obj        \
43         gerror.obj              \
44         gfileutils.obj          \
45         ghash.obj               \
46         ghook.obj               \
47         gkeyfile.obj            \
48         gmappedfile.obj \
49         giochannel.obj          \
50         giowin32.obj            \
51         glist.obj               \
52         gmain.obj               \
53         gmarkup.obj             \
54         gmem.obj                \
55         gmessages.obj           \
56         gnode.obj               \
57         goption.obj     \
58         gprimes.obj             \
59         gqsort.obj              \
60         gqueue.obj              \
61         gpattern.obj    \
62         gprintf.obj     \
63         grand.obj               \
64         grel.obj                \
65         gscanner.obj            \
66         gshell.obj              \
67         gslice.obj      \
68         gslist.obj              \
69         gspawn-win32.obj        \
70         gstdio.obj      \
71         gstrfuncs.obj           \
72         gstring.obj             \
73         gthread.obj             \
74         gthreadpool.obj         \
75         gtimer.obj              \
76         gtree.obj               \
77         gunibreak.obj           \
78         gunicollate.obj         \
79         gunidecomp.obj          \
80         guniprop.obj            \
81         gutf8.obj               \
82         gutils.obj              \
83         gwin32.obj              \
84         localcharset.obj
85
86 ..\glibconfig.h: ..\glibconfig.h.win32
87         copy ..\glibconfig.h.win32 ..\glibconfig.h
88
89 ..\config.h: ..\config.h.win32
90         copy ..\config.h.win32 ..\config.h
91
92 galias.h: glib.symbols
93         perl makegalias.pl < glib.symbols > galias.h
94
95 galiasdef.c: glib.symbols
96           perl makegalias.pl -def < glib.symbols > galiasdef.c
97
98 localcharset.c : libcharset/localcharset.c
99         copy libcharset\localcharset.c localcharset.c
100
101 glib.def: glib.symbols
102         echo EXPORTS > glib.def
103         cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES glib.symbols >> glib.def
104
105 glib.res : glib.rc
106         rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc
107
108 ################ glib
109
110 # create a static libary
111 # static library can well have the real version number in the name
112 glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib : $(glib_OBJECTS) gnulib\gnulib.lib
113         lib /out:glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib $(glib_OBJECTS) gnulib\gnulib.lib
114
115 libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib glib.def glib.res
116         $(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(LIBICONV_LIBS) $(INTL_LIBS) \
117         gnulib\gnulib.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib \
118         $(LDFLAGS) /implib:glib-2.0.lib /def:glib.def
119
120 gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-@LT_CURRENT_MINUS_AGE@.dll
121         $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib
122
123 ################ other stuff
124
125 clean::
126         del ..\config.h
127         del ..\glibconfig.h
128