mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-01-27 14:03:36 +03:00
f7f41852e6
users need it and they can't generate it, and I want CVS Windows users ... - win32/libxml2/libxml2_so.dsp: Windows project file for the shared lib version of libxml2 - win32/libxml2/libxml2.def.src: bug #56527 set of exported resources needed for libxslt/xsltproc by Yon Derek Daniel
----------------------------------------------------------------------- [January the 16th, 2001, igor@stud.fh-frankfurt.de] The following applies only if you use Microsoft Visual C/C++ compiler, in combination with Visual C++ IDE. Risk a glance further below for information on using GNU C compilers, such as Mingw32. There are two new project files in win32/libxml2: libxml2_a.dsp: Use this one to build an object archive, a thing known as a static library in the wonderful world of Windows. libxml2_so.dsp: Use this one to build a shared object, or a DLL if you prefer calling it using the dialect mentioned above. There are few things to note about these project files and their differences to the originally supplied project file (libxml2.dsp): 1. C-Runtime is not LIBC anymore. LIBC is fairly old and should be considered obsolete today. Microsoft had considered it apropriate to produce a better C-Runtime library, and indeed, their new one is called MSVCRT. All decent Win32 systems have this newer library, save for the oldest incarnations of Win95, which can be ignored safely. Following that, I changed the dependencies and now both project files mentioned above use MSVCRT. 2. Both project files cause the resulting binary to depend on a shared version of MSVCRT. Yes, that is what I am saying, the C-Runtime is linked dynamically, not statically. This enables the programmer to do likewise with his libxml2-based software, an action I like to think everyone would perform without hesitation. 3. There was a small flaw in the previous project file. The source file xpointer.c was not included in the project file and that caused a linkage problem with libxml2-based program, but not with libxml2 itself, if XPointer feature was enabled. This is now fixed. ----------------------------------------------------------------------- If you're creating libxml2 with the "mingw" compiler, just copy the Makefile.mingw to the root directory as "Makefile", edit the PREFIX value, and run "make". If you're using MSVC, here are some instructions for how you can proceed: The configuration stuff (i.e. what should be enabled/disabled) is in xmlversion.h I only tested it compiled fine with the current settings (that is nearly everything disabled, I didn't need many features) ---------------------------- How did I get everything in place so the MSDev project works from the original archive? from the cygwin prompt (http://sources.redhat.com/cygwin) : $ ./configure --disable-corba --without-ftp --without-http --without-html --wit hout-xpath --without-iconv --without-debug built the project file for the static library ---------------------------- diff after doing the changes and cleaning up the generated stuff: [Note: this is out of date] diff libxml2-2.2.4/xmlversion.h libxml2-2.2.4-reference/xmlversion.h 38c38 < #if 0 --- > #if 1 47c47 < #if 0 --- > #if 1 56c56 < #if 0 --- > #if 1 74c74 < #if 0 --- > #if 1 83c83 < #if 0 --- > #if 1 92c92 < #if 0 --- > #if 1