Commit a1311349 authored by Philip Withnall's avatar Philip Withnall

build: Drop nmake/MSC build system for GLib

It hasn’t been seriously maintained for the best part of 10 years and is
very outdated. The recommended way to build GLib on Windows is now
Visual Studio:

https://wiki.gnome.org/Projects/GTK%2B/Win32/MSVCCompilationOfGTKStack#GLibSigned-off-by: Philip Withnall's avatarPhilip Withnall <withnall@endlessm.com>

https://bugzilla.gnome.org/show_bug.cgi?id=722047
parent 1d3210a8
......@@ -49,7 +49,6 @@ EXTRA_DIST += \
glib-tap.mk \
tap-driver.sh \
tap-test \
makefile.msc \
msvc_recommended_pragmas.h \
config.h.win32.in \
po/po2tbl.sed.in \
......
......@@ -6,8 +6,7 @@ fashion. Lots of information here might be misleading or outdated. You
have been warned.
The general parts, and the section about gcc and autoconfiscated
build, and about a Visual Studio build are by Tor Lillqvist. The
sections about MSVC build with NMAKE is by Hans Breuer.
build, and about a Visual Studio build are by Tor Lillqvist.
General
=======
......@@ -201,184 +200,4 @@ $python win32/setup.py --perl path_to_your_perl.exe
for more usage on this script, run
$python win32/setup.py -h/--help
Building with MSVC and NMAKE
============================
If you are building from a GIT snapshot, you will not have all
makefile.msc files. You should copy the corresponding makefile.msc.in
file to that name, and replace any @...@ strings with the correct
value (or use the python script de-in.py from http://hans.breuer.org/gtk/de-in.py).
This is done automatically when an official GLib source distribution
package is built, so if you get GLib from a source distribution
package, there should be makefile.msc files ready to use (possibly after some
editing).
The hand-written makefile.msc files, and the stuff in the "build"
subdirectory, produce DLLs and import libraries that match what the
so-called autoconfiscated build produces.
All the MSVC makefiles are for the command line build with nmake. If
you want to use the VC-UI you can simply create wrapper .dsp makefiles
(read the VC docs how to do so).
Some modules may require Perl to auto-generate files. The goal (at
least Hans's) is to not require any more tools. Of course you need
the Microsoft Platform SDK in a recent enough - but not too recent - version.
The last PSDK for Visual Studio 6 is:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
At least install the Core SDK, maybe also the "Tablet PC SDK".
Build with:
nmake -f makefile.msc
or
nmake -f makefile.msc DEBUG=1
[
The former will create 'release' versions of the DLLs. If you
plan to distribute you DLLs please use this command. The latter
will create DLLs with debug information _and_ link them with
msvcrtd.dll instead of msvcrt.dll.
Beware: There are known problems with mixing DLLs in one
application, which are build against different runtimes.
Especially the index-to-file mapping used by 'unix-style' file
operation - _open() _pipe() etc. - breaks sometimes in strange
ways (for example the Gimp plug-in communication).
]
Required libraries (not build from svn)
------------------
libintl (gnu-intl),
are available pre-built from the website mentioned above.
Versioning
----------
Instead of the Unix and auto* way of tracking versions and resolving
dependencies (configure; make; make install) involving autoconf,
automake, libtool and friends the MSVC build uses a different
approach.
The core of it's versioning is the file build/win32/module.defs.
It contains entries of the form MODULE_VER, e.g.:
GLIB_VER = 2.0
LIBICONV_VER = 1.3
and the placement of these modules defined as MODULE, e.g.:
GLIB = $(TOP)/glib
LIBICONV = $(TOP)/libiconv-$(LIBICONV_VER)
whereas TOP is defined as the relative path from the respective
module directory to your top build directory. Every makefile.msc
needs to define TOP before including the common make file part
make.msc, which than includes module.defs, like:
TOP = ../..
!INCLUDE $(TOP)/glib/build/win32/make.msc
(Taken from gtk+/gdk/makefile.msc)
With this provision it is possible to create almost placement
independent makefiles without requiring to 'install' the libraries and
headers into a common place (as it is done on Unix, and as Tor does
when producing his zipfiles with prebuilt GLib, GTK+ etc).
Special Files
-------------
config.h.win32.in : @XXX_MAJOR_VERSION@ needs to be replaced by
the current version/build number. The resulting file is to be saved
as 'config.h.win32'. This should be automatically done if a package
gets build on the Unix platform.
makefile.msc.in : @XXX_MAJOR_VERSION@ to be replaced. Save as
makefile.msc.
<module>.def : every function which should be used from the outside of
a dll needs to be marked for 'export'. It is common that one needs to change
these files after some api changes occured. If there are variables to be
exported another mechanism is needed, like :
#ifdef G_OS_WIN32
# ifdef GDK_COMPILATION
# define GDKVAR __declspec(dllexport)
# else
# define GDKVAR extern __declspec(dllimport)
# endif
#else
# define GDKVAR extern
#endif
Directory Structure
-------------------
all modules should be build in a common directory tree otherwise you
need to adapt the file 'module.defs'. They are listed here in increasing
dependencies order.
<common rootdir without spaces>
|
+- glib
| |
| +- build : [this module lives in the SVN root dir]
| | +- win32
| | .\module.defs : defines (relative) locations of the headers
| | and libs and version numbers to be include
| | in dll names
| | .\make.msc : include by almost every 'makefile.msc'
| |
| | .\README.WIN32 : more information how to build
| | .\glibconfig.h.win32.in : similar to config.h.win32.in
| | .\makefile.msc : master makefile, sub dir makefiles should work
| |
| +- glib
| +- gmodule
| +- gthread : does _not_ depend on pthread anymore
| +- gobject
|
+- pango
| +- pango : 'native' build does not require extra libs and
| | includes the minimal required text renderer
| | (there is also a currently slightly broken FreeType2
| | based implementation for win32)
| +- modules (not yet build)
|
+- atk
| +- atk
| .\makefile.msc : build here
|
+- gtk+
| | .\config.h.win32 : for all the below
| |
| +- gdk-pixbuf
| | .\gdk_pixbuf.rc.in : version resource for the DLLs. Needs
| | to be converted (filled with version info)
| | as described above.
| |
| +- gdk
| | | .\makefile.msc : some auto-generation is needed to build in the
| | | in the subdirectory
| | +- win32
| |
| +- gtk
|
+- gimp
| .\makefile.msc : master makefile to build The Gimp. The makefiles
| from the sub dirs should work stand alone, but than
| the user needs to know the build order
|
+- dia : additionally depends on libart_lgpl (in SVN)
| and libxml2 ( see http://www.xmlsoft.org/ )
+- lib
+- app
+- objects
+- plug-ins
+- python
[1]: https://wiki.gnome.org/Projects/GTK%2B/Win32/MSVCCompilationOfGTKStack under "Preparations"
SUBDIRS = \
dirent
EXTRA_DIST = \
make.msc \
module.defs
......@@ -3,7 +3,6 @@ EXTRA_DIST = \
dirent.c \
dirent.h \
wdirent.c \
makefile.msc \
dirent-zip
TOP = ..\..\..\..
!INCLUDE $(TOP)\glib\build\win32\make.msc
dirent_OBJECTS = dirent.obj wdirent.obj
INCLUDES = -I.
all : dirent.lib
dirent.lib : $(dirent_OBJECTS)
lib /out:dirent.lib /nodefaultlib $(dirent_OBJECTS)
clean::
del /f $(dirent_OBJECTS)
del /f dirent.lib
# Note that this file is hardly maintained, hardly usable without
# manual editing, and not really part of a recommended way to build
# GLib and related software with Microsoft's compilers. Only a few
# persons use a build setup that involves this file.
# Common makefile definitions for building GLib, GTk+, and various
# software that use these libraries with msvc on Win32
# Debug builds shoud link with msvcrtd release build with msvcrt.
!IFNDEF DEBUG
# Full optimization:
OPTIMIZE = -Ox
# release with debug
OPTIMIZE = -Zi -DG_ENABLE_DEBUG=1
CRUNTIME = -MD
LINKDEBUG = /OPT:REF
!ELSE
# Debugging:
OPTIMIZE =
CRUNTIME = -MDd
DEBUGINFO = -Zi -DG_ENABLE_DEBUG=1
LINKDEBUG = /debug /nodefaultlib:msvcrt.lib
!ENDIF
LDFLAGS = /link /machine:ix86 $(LINKDEBUG)
!IFNDEF TOP
TOP = ..
!ENDIF
!IFNDEF PERL
PERL = perl
!ENDIF
XSLTPROC = d:\gnome-0\xsltproc
# paths and version numbers
!INCLUDE $(TOP)\glib\build\win32\module.defs
################
# CFLAGS and LIBS for the packages in module.defs.
# In alphabetical order.
# Note that these CFLAGS and LIBS refer to stuff in "source"
# directories. This is for historical reasons, and only useable if you
# have the GLib, Pango, etc sources. If you use the prebuilt developer
# packages, you should fix these to instead refer to the place where
# you unzipped the developer packages. Easiest of all, run pkg-config
# --cflags gtk+-2.0 (for instance), and paste its output as the
# definition of GTK2_CFLAGS. Etc.
ATK_CFLAGS = -I $(ATK)
ATK_LIBS = $(ATK)\atk\atk-$(ATK_VER).lib
BABL_CFLAGS = -I $(BABL)
BABL_LIBS = $(BABL)\babl\babl-1.0.lib
# force inclusion of the _right_ cairoversion.h even when using without installation
CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO)
CAIRO_LIBS = $(CAIRO)\src\libcairo.lib
DIRENT_CFLAGS = -I $(GLIB)\build\win32\dirent
DIRENT_LIBS = $(GLIB)\build\win32\dirent\dirent.lib
!IFNDEF EXIF
EXIF_CFLAGS = -I $(DEVTOP)\include
EXIF_LIBS = $(DEVTOP)\lib\exif.lib
EXIF = 1
!ENDIF
# Don't know if Freetype2, FriBiDi and some others actually can be
# built with MSVC, but one can produce an import library even if the
# DLL was built with gcc.
!IFDEF FREETYPE2
FREETYPE2_CFLAGS = -I $(FREETYPE2)\include
FREETYPE2_LIBS = $(FREETYPE2)\obj\freetype-$(FREETYPE2_VER).lib
!ELSE
FREETYPE2_CFLAGS = -I $(DEVTOP)\include -I $(DEVTOP)\include\freetype2
FREETYPE2_LIBS = $(DEVTOP)\lib\freetype6.lib
!ENDIF
!IFNDEF FONTCONFIG
FONTCONFIG_CFLAGS = -I $(DEVTOP)\include
FONTCONFIG_LIBS = $(DEVTOP)\lib\fontconfig.lib
!ENDIF
GDK_PIXBUF_CFLAGS = -I $(GDK_PIXBUF)
GDK_PIXBUF_LIBS = $(GTK2)\gdk-pixbuf\gdk_pixbuf-$(GDK_PIXBUF_VER).lib
GIMP_CFLAGS = -I $(GIMP)
GIMP_PLUGIN_LIBS = $(GIMP)\libgimp\gimp-$(GIMP_VER).lib $(GIMP)\libgimp\gimpui-$(GIMP_VER).lib
# overide definition to use it as callable path
GLIB = $(TOP)\glib
GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS)
GLIB_LIBS = $(GLIB)\glib\glib-$(GLIB_VER).lib $(GLIB)\gmodule\gmodule-$(GLIB_VER).lib $(GLIB)\gobject\gobject-$(GLIB_VER).lib $(GLIB)\gio\gio-$(GLIB_VER).lib
GTHREAD_LIBS = $(GLIB)\gthread\gthread-$(GLIB_VER).lib
!IFNDEF GDK_PIXBUF
GDK_PIXBUF_CFLAGS = $(GTK2_CFLAGS)
GDK_PIXBUF_LIBS = $(GTK2_LIBS)
!ENDIF
GNOMECANVAS_CFLAGS = -I $(GNOMECANVAS)
GNOMECANVAS_LIBS = $(GNOMECANVAS)\libgnomecanvas\libgnomecanvas-$(GNOMECANVAS_VER).lib
GNOMEPRINT_CFLAGS = -I $(GNOMEPRINT)
GNOMEPRINT_LIBS = $(GNOMEPRINT)\libgnomeprint\gnome-print-$(GNOMEPRINT_VER).lib
GNOMEPRINTUI_CFLAGS = -I $(GNOMEPRINTUI)
GNOMEPRINTUI_LIBS = $(GNOMEPRINTUI)\libgnomeprintui\gnome-printui-$(GNOMEPRINTUI_VER).lib
GTK_CFLAGS = -I$(GTK)\gdk -I$(GTK)\gdk -I$(GTK)
GTK_LIBS = $(GTK)\gtk\gtk.lib $(GTK)\gdk\gdk.lib
GTK2_CFLAGS = $(GLIB_CFLAGS) $(ATK_CFLAGS) -I$(GTK2)\gdk -I$(GTK2)\gdk -I$(GTK2) -I$(PANGO) -I$(ATK) $(CAIRO_CFLAGS)
GTK2_LIBS = $(GTK2)\gtk\gtk-win32-$(GTK2_VER).lib $(GTK2)\gdk\gdk-win32-$(GTK2_VER).lib $(GTK2)\gdk-pixbuf\gdk_pixbuf-$(GTK2_VER).lib $(PANGO_LIBS)
GTKGLAREA_CFLAGS = -I $(GTKGLAREA)
GTKGLAREA_LIBS = $(GTKGLAREA)\gtkgl\gtkgl-$(GTKGLAREA_VER).lib
GTKSOURCEVIEW_CFLAGS = -I $(GTKSOURCEVIEW)
GTKSOURCEVIEW_LIBS = $(GTKSOURCEVIEW)\gtksourceview\gtksourceview.lib
LIBART_CFLAGS = -I$(LIBART)\.. -FIlibart_lgpl/art_config.h
LIBART_LIBS = $(LIBART)\art_lgpl_2.lib
!IFNDEF INTL
INTL_CFLAGS = -I $(DEVTOP)\include
INTL_LIBS = $(DEVTOP)\lib\intl.lib
!ELSE
INTL_CFLAGS = -I $(INTL)
INTL_LIBS = $(INTL)\intl.lib
!ENDIF
!IFDEF LCMS
LCMS_CFLAGS = -DLCMS_DLL -I $(LCMS)\include
LCMS_LIBS = $(LCMS)\Projects\VC6\Release\lcms.lib
!ENDIF
LIBICONV_CFLAGS = -I $(LIBICONV)\include
LIBICONV_LIBS = $(LIBICONV)\lib\iconv.lib
LIBXML_CFLAGS = -I $(LIBXML)
LIBXML_LIBS = $(LIBXML)\xml-$(LIBXML_VER).lib
LIBXML2_CFLAGS = $(LIBICONV_CFLAGS) -I $(LIBXML2)\include
LIBXML2_LIBS = $(LIBXML2)\libxml2.lib
LIBXSLT_CFLAGS = -I $(LIBXSLT)
LIBXSLT_LIBS = $(LIBXSLT)\libxslt\libxslt.lib
LCMS_CFLAGS = -I $(LCMS)\include -DLCMS_DLL
LCMS_LIBS = $(LCMS)\Projects\VC6\Release\lcms.lib
!IFNDEF JPEG
JPEG_CFLAGS = -I $(DEVTOP)\include
JPEG_LIBS = $(DEVTOP)\lib\jpeg.lib
!ELSE
JPEG_CFLAGS = -I $(JPEG)
JPEG_LIBS = $(JPEG)\libjpeg.lib
!ENDIF
OPENGL_CFLAGS = # None needed, headers bundled with the compiler
OPENGL_LIBS = opengl32.lib lglu32.lib
PANGO_CFLAGS = -I $(PANGO)
PANGO_LIBS = $(PANGO)\pango\pango-$(PANGO_VER).lib
PANGOCAIRO_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangocairo-$(PANGO_VER).lib
PANGOWIN32_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangowin32-$(PANGO_VER).lib
PANGOFT2_LIBS = $(PANGO_LIBS) $(PANGO)\pango\pangoft2-$(PANGO_VER).lib
!IFDEF PNG
PNG_CFLAGS = -I $(PNG) $(ZLIB_CFLAGS)
PNG_LIBS = $(PNG)\projects\visualc6\Win32_LIB_Release\libpng.lib $(ZLIB_LIBS)
!ELSE
PNG_CFLAGS = -I $(DEVTOP)\include $(ZLIB_CFLAGS)
PNG_LIBS = $(DEVTOP)\lib\libpng.lib $(ZLIB_LIBS)
!ENDIF
RSVG_CFLAGS = -I $(RSVG)\..
RSVG_LIBS = $(RSVG)\librsvg-2.lib
SVG_CFLAGS = -I $(SVG)\src
SVG_LIBS = $(SVG)\src\libsvg-$(SVG_VER).lib
!IFDEF TIFF
TIFF_CFLAGS = -I $(TIFF)\libtiff
# Use single import library for both libtiff DLL versions (with or
# without LZW code). The user selects which DLL to use.
TIFF_LIBS = $(TIFF)\libtiff\libtiff.lib $(JPEG_LIBS) $(ZLIB_LIBS) user32.lib
!ELSE
TIFF_CFLAGS = -I $(DEVTOP)\include
TIFF_LIBS = $(DEVTOP)\lib\libtiff.lib
!ENDIF
VIPS_CFLAGS = -I $(VIPS)/include
VIPS_LIBS = $(VIPS)/libsrc/vips.lib
!IFDEF ZLIB
ZLIB_CFLAGS = -I $(ZLIB)
ZLIB_LIBS = $(ZLIB)\projects\visualc6\Win32_LIB_Release\zlib.lib
!ELSE
ZLIB_CFLAGS = -I $(DEVTOP)\include
ZLIB_LIBS = $(DEVTOP)\lib\zdll.lib
!ENDIF
################
# Compiler to use.
CCOMPILER = cl
CC = $(CCOMPILER) $(OPTIMIZE) $(CRUNTIME) -W3 -nologo
################
# The including makefile should define INCLUDES, DEFINES and
# DEPCFLAGS. INCLUDES are the includes related to the module being
# built. DEFINES similarly. DEPCFLAGS should be set to a set of
# GLIB_CFLAGS, GTK_CFLAGS etc corresponding to what other modules we
# depend on.
CFLAGS = $(OPTIMIZE) $(DEBUGINFO) $(INCLUDES) $(DEFINES) $(DEPCFLAGS)
# make cl/wcl386 compatible (c99 and cdecl)
#OPTIMIZE = -Ox
#CFLAGS = /passwopts:-za99 /passwopts:-ecc $(DEBUGINFO) $(INCLUDES) $(DEFINES) $(DEPCFLAGS)
.c.i :
$(CC) $(CFLAGS) -E $< >$@
# The default target should be "all"
default: all
clean::
-del *.obj *.res *.i *.exe *.dll *.lib *.err *.map *.exp *.lk1 *.mk1 *.ilk *.manifest
-del *.pdb
# Needed by hacker rule to make makefile.msc from makefile.msc.in:
SED = e:\cygwin\bin\sed
# Note that this file is hardly maintained, hardly usable without
# manual editing, and not really part of a recommended way to build
# GLib and related software with Microsoft's compilers. Only a few
# persons use a build setup that involves this file.
# This file is included by makefiles for both GNU Make (for gcc
# (mingw) builds, and NMAKE (for MSVC builds).
MODULE_DEFS_INCLUDED=1
# fallback if a specifc library is not contained in TOP (i.e. not self-compiled)
DEVTOP=$(TOP)\..\other\dev
################
# The version macros define what versions of libraries to use.
# The version numbers are defined unconditionally. If you want to
# produce a newer version of one of these libraries, the new number
# should be defined in the specific project makefile _after_ including
# this file (or make.{mingw,msc}). These version numbers are used in
# the names of some import libraries.
# Please note that there are two (or three) ways to build the GLib
# (and GTK+ etc) libraries on Win32: Either using the same
# auto*/configure mechanism to generate makefiles as on Unix, and
# libtool to handle DLL creation. This currently only works for gcc,
# and even then it is hellish to set up to work 100% correctly. For
# people using that, this file is totally irrelevant.
# Or, use hand-written makefiles, either for MSVC (these are called
# makefile.msc and maintained by Hans Breuer), or for gcc
# (makefile.mingw, by Tor Lillqvist). Only for GLib are the
# makefile.mingw files believed to be up-to-date, for other modules
# they have been left to rot after Tor started using the
# autoconfiscated way of building.
# The stuff here uses the same name for (import) libraries as on Unix,
# as libtool uses those, and the semi-official developer packages are
# built using libtool.
ATK_VER = 1.0
CAIRO_VER = 1.4
FREETYPE2_VER = 2.0
GIMP_VER = 1.2
GDK_PIXBUF_VER = 2.0
GLIB_VER = 2.0
GTKGLAREA_VER = 1.2.2
GTK2_VER = 2.0
LIBGLADE_VER = 0.14
LIBICONV_VER = 1.7
LIBXML_VER = 1.8.7
LIBXML2_VER = 2.4.2
PANGO_VER = 1.0
POPT_VER = 1.4
SVG_VER = 0.1
RSVG_VER = 2.4
################
# Locations of various source directories. TOP is defined in make.{mingw,msc}
# First stuff that is in the GNOME CVS repository.
# In alphabetical order.
ATK = $(TOP)/atk
BABL = $(TOP)/babl
CAIRO = d:\devel\from-svn\other\cairo-1.8.4
GIMP = $(TOP)/gimp
GEGL = $(TOP)/gegl
GLIB = $(TOP)/glib
GNOMECANVAS = $(TOP)\libgnomecanvas
GNOMECANVAS_VER = 2.9
# GTK+ 1.3.0, gtk-1-3-win32-production branch. Rename directory
# to gtk+p after initial checkout from CVS.
GTK = $(TOP)/gtk+p
# GTK+ 2.0
GTK2 = $(TOP)/gtk+
GTKSOURCEVIEW = $(TOP)/gtksourceview
GNOMEPRINT = $(TOP)\libgnomeprint
GNOMEPRINT_VER = 2.8
LIBGLADE = $(TOP)/libglade
LIBXML = $(TOP)/libxml-$(LIBXML_VER)
LIBXML2 = $(TOP)/libxml2
#PANGO = $(TOP)/pango-1-8
PANGO = $(TOP)/pango
GNOMEPRINTUI = $(TOP)\libgnomeprintui
GNOMEPRINTUI_VER = 2.2
# Aux programs
GLIB_GENMARSHAL = $(GLIB)/gobject/glib-genmarshal
# Stuff from other places.
# Note this was is specific to what tml happened to have on his disk
# at some time in history. To really be able to recompile something
# that uses for instance libjpeg, you should download a suitable
# binary "developer" distribution of it, unpack it into some location,
# and edit this file correspondingly. You should not take the versions
# mentioned here too literally, use the latest version you can find,
# or the ones the current GTK+ 2.0 for Windows uses.
#FREETYPE2 = $(TOP)/freetype2
GTKEXTRA = $(TOP)/gtk+extra
GTKGLAREA = $(TOP)/gtkglarea
#INTL = d:/devel/from-svn/other/intl-tml
JPEG = d:/devel/from-svn/other/jpeg-6b
LCMS = d:/devel/other/lcms-1.15
LIBART = $(TOP)/libart_lgpl
LIBICONV = $(TOP)/libiconv-$(LIBICONV_VER)
LIBXSLT = $(TOP)/libxslt
#PNG = d:/devel/from-svn/other/lpng1224
RSVG = $(TOP)\librsvg
SVG = $(TOP)\libsvg
#TIFF = d:/devel/from-svn/other/tiff-3.7.2
#ZLIB = d:/devel/from-svn/other/zlib123
# Headers from Microsoft's PlatformSDK (that aren't present in
# mingw) are needed by a just a few packages when compiling with gcc.
# This is just where tml has it installed.
PLATFORMSDK = i:/src/psdk
#
WTKIT = d:/devel/from-svn/other\wtkit126
......@@ -3513,16 +3513,11 @@ if false; then
README
config.h.win32
glib/glibconfig.h.win32
glib/makefile.msc
glib/glib.rc
gmodule/makefile.msc
gmodule/gmodule.rc
gobject/makefile.msc
gobject/gobject.rc
gthread/makefile.msc
gthread/gthread.rc
gio/gio.rc
tests/makefile.msc
])
fi
......
......@@ -757,7 +757,6 @@ EXTRA_DIST += \
data-to-c.pl \
gioenumtypes.h.template \
gioenumtypes.c.template \
makefile.msc \
gio.rc.in \
gschema.dtd \
gconstructor_as_data.h \
......
# autogenerated from automake.am with automake.py
TOP = ..\..
PRJ_TOP = ..
PACKAGE = gio
PKG_VER = 2.0
!INCLUDE $(TOP)\glib\build\win32\make.msc
SUBDIRS = win32
sub-all:
for %d in ($(SUBDIRS)) do nmake -nologo -f makefile.msc sub-one THIS=%d
sub-one:
cd $(THIS)
nmake -nologo -f makefile.msc
cd ..
INCLUDES = \
-FImsvc_recommended_pragmas.h \
-I .. -I ..\glib -I ..\gmodule -I . \
$(INTL_CFLAGS)
DEFINES = \
-DG_LOG_DOMAIN=\"GLib-GIO\" \
-DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
-DGIO_COMPILATION
appinfo_sources = \
gwin32appinfo.c gwin32appinfo.h
gio_headers = \
gappinfo.h \
gasyncresult.h \
gbufferedinputstream.h \
gbufferedoutputstream.h \
gcancellable.h \
gcontenttype.h \
gdatainputstream.h \
gdataoutputstream.h \
gdrive.h \
gemblem.h \
gemblemedicon.h \
gfile.h \
gfileattribute.h \
gfileenumerator.h \
gfileicon.h \
gfileinfo.h \
gfileinputstream.h \
gfilemonitor.h \
gfilenamecompleter.h \
gfileoutputstream.h \
gfilterinputstream.h \
gfilteroutputstream.h \
gicon.h \
ginputstream.h \
gio.h \
giotypes.h \
gioenums.h \
gioerror.h \
giomodule.h \
gioscheduler.h \
gloadableicon.h \
gmount.h \
gmemoryinputstream.h \
gmemoryoutputstream.h \
gmountoperation.h \
gnativevolumemonitor.h \
goutputstream.h \
gseekable.h \
gsimpleasyncresult.h \
gthemedicon.h \
gvfs.h \
gvolume.h \
gvolumemonitor.h \
$(NULL)
OBJECTS = \
gappinfo.obj \
gasynchelper.obj \
gasyncinitable.obj \
gasyncresult.obj \
gbufferedinputstream.obj \
gbufferedoutputstream.obj \
gcancellable.obj \
gcontenttype.obj \
gdatagrambased.obj \
gdatainputstream.obj \
gdataoutputstream.obj \
# gdesktopappinfo.obj \
gdrive.obj \
gdummyfile.obj \
gemblem.obj \
gemblemedicon.obj \
gfile.obj \
gfileattribute.obj \
gfileenumerator.obj \
gfileicon.obj \
gfileinfo.obj \
gfileinputstream.obj \
gfileiostream.obj \
gfilemonitor.obj \
gfilenamecompleter.obj \
gfileoutputstream.obj \
gfilterinputstream.obj \
gfilteroutputstream.obj \
gicon.obj \
ginetaddress.obj \
ginetsocketaddress.obj \
ginitable.obj \
ginputstream.obj \
gioenumtypes.obj \
gioerror.obj \
giomodule.obj \
gioscheduler.obj \
giostream.obj \
gloadableicon.obj \
glocalfileiostream.obj \
gmemoryinputstream.obj \
gmemoryoutputstream.obj \
gmount.obj \
gmountoperation.obj \
gnativevolumemonitor.obj \
gnetworkaddress.obj \
gnetworkservice.obj \
goutputstream.obj \
gpollfilemonitor.obj \
gresolver.obj \
gseekable.obj \
gsimpleasyncresult.obj \
gsocket.obj \
gsocketaddress.obj \
gsocketaddressenumerator.obj \
gsocketclient.obj \
gsocketconnectable.obj \