blob: e45b1e510a926b35695c053ba94c2dd7db0627c7 [file] [log] [blame]
## Makefile for building the GLib dlls with Microsoft C
## Use: nmake -f makefile.msc
TOP = ..\..
!INCLUDE ..\build\win32\make.msc
################################################################
INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ..
DEFINES = \
-DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" \
-DG_ENABLE_DEBUG -DPCRE_STATIC -DG_DISABLE_DEPRECATED \
-DDLL_EXPORT=1
DEPCFLAGS = -Zm400 $(INTL_CFLAGS) $(DIRENT_CFLAGS)
all : \
..\config.h \
..\glibconfig.h \
gnulib\gnulib.lib \
pcre\pcre.lib \
libglib-2.0-0.dll \
glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib \
gspawn-win32-helper.exe \
gspawn-win32-helper-console.exe \
gnulib\gnulib.lib :
cd gnulib
nmake -f makefile.msc
cd ..
pcre\pcre.lib :
cd pcre
nmake -f makefile.msc
cd ..
glib_OBJECTS = \
garray.obj \
gasyncqueue.obj \
gatomic.obj \
gbacktrace.obj \
gbase64.obj \
gbookmarkfile.obj \
gcache.obj \
gchecksum.obj \
gcompletion.obj \
gconvert.obj \
gdataset.obj \
gdate.obj \
gdir.obj \
gerror.obj \
gfileutils.obj \
ghash.obj \
ghostutils.obj \
ghook.obj \
giochannel.obj \
giowin32.obj \
gpoll.obj \
gkeyfile.obj \
glist.obj \
gmain.obj \
gmappedfile.obj \
gmarkup.obj \
gmem.obj \
gmessages.obj \
gnode.obj \
goption.obj \
gpattern.obj \
gprimes.obj \
gprintf.obj \
gqsort.obj \
gqueue.obj \
grand.obj \
gregex.obj \
grel.obj \
gscanner.obj \
gsequence.obj \
gshell.obj \
gslice.obj \
gslist.obj \
gspawn-win32.obj \
gstdio.obj \
gstrfuncs.obj \
gstring.obj \
gtestutils.obj \
gthread.obj \
gthreadpool.obj \
gtimer.obj \
gtree.obj \
gunibreak.obj \
gunicollate.obj \
gunidecomp.obj \
guniprop.obj \
gurifuncs.obj \
gutf8.obj \
gutils.obj \
gwin32.obj \
localcharset.obj
..\glibconfig.h: ..\glibconfig.h.win32
copy ..\glibconfig.h.win32 ..\glibconfig.h
..\config.h: ..\config.h.win32
copy ..\config.h.win32 ..\config.h
localcharset.obj : libcharset\localcharset.c
$(CC) $(CFLAGS) -DLIBDIR=\".\" -c libcharset\localcharset.c
glib.def: glib.symbols
echo EXPORTS > glib.def
cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
-DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
-DG_GNUC_PRINTF=;G_GNUC_PRINTF -DG_GNUC_FORMAT=;G_GNUC_FORMAT glib.symbols >> glib.def
glib.res : glib.rc
rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc
################ glib
# create a static libary
# static library can well have the real version number in the name
glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
lib /out:glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@s.lib $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res
$(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(INTL_LIBS) \
gnulib\gnulib.lib pcre\pcre.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib winmm.lib \
$(LDFLAGS) /implib:glib-2.0.lib /def:glib.def
gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-@LT_CURRENT_MINUS_AGE@.dll
$(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib
gspawn-win32-helper-console.exe : gspawn-win32-helper.c libglib-2.0-@LT_CURRENT_MINUS_AGE@.dll
$(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:console user32.lib
################ other stuff
clean::
del ..\config.h
del ..\glibconfig.h