Argh, ok, Daniel
On Mon, Aug 28, 2017 at 03:19:10PM +0200, Nick Wellnhofer wrote: > Please revert the commit. The environment variables for MSVC command line > builds should be set with Microsoft tools. For Visual Studio 2017: > > https://stackoverflow.com/questions/43372235/vcvarsall-bat-for-visual-studio-2017 > > Nick > > > On 28/08/2017 15:00, Daniel Veillard wrote: > > Hi Boris, > > > > Okay, that looks reasonable, though I definitely never used Visual Studio > > someone who does should proably double check, but I pushed it assuming it > > was good > > > > https://git.gnome.org/browse/libxml2/commit/?id=605899cf22d185f537eb5efb97a55be30467eb17 > > > > thanks, > > > > Daniel > > > > On Tue, Aug 22, 2017 at 02:39:21PM +0300, Boris shtrasman wrote: > > > Hi, > > > > > > Here are patches for Makefile.msvc to allow build with Visual Studio 2017 > > > (community ) in 32 bit mode (win32). > > > > > > I have choose to target 32 bit to be as close as possible to Igor > > > Zlatkovic > > > work (he also provides 32 bit versions. > > > > > > I choose sdk 8.1 because it's the same sdk Igor targeted. > > > > > From 90fac6a5302fbc19da7f39f4a5bc3390203956f0 Mon Sep 17 00:00:00 2001 > > > From: Boris Shtrasman <borissh1...@gmail.com> > > > Date: Wed, 16 Aug 2017 12:22:44 +0300 > > > Subject: [PATCH] Allow build on Visual Studio 2017 community edition for > > > WIN32 > > > on a 64 bit machine. > > > > > > This patch hold the necessary changes to build libxml2 with Visual > > > Studio 2017 for WIN32 on a 64 bit machine. > > > > > > Today 64 bit windows installation are very common, and Visual Studio > > > 2017 community is the most recent version i have access to. > > > > > > I have chosen 32 bit and SDK 8.1 to be as close as possible to Igor > > > Zlatkovic work. > > > --- > > > win32/Makefile.msvc | 20 ++++++++++++++++---- > > > win32/Readme.txt | 14 ++++++++++++++ > > > 2 files changed, 30 insertions(+), 4 deletions(-) > > > > > > diff --git a/win32/Makefile.msvc b/win32/Makefile.msvc > > > index d16c1a2d..2e4d6f83 100644 > > > --- a/win32/Makefile.msvc > > > +++ b/win32/Makefile.msvc > > > @@ -26,6 +26,18 @@ XML_IMP = $(XML_BASENAME).lib > > > XML_DEF = $(XML_BASENAME).def > > > XML_A = $(XML_BASENAME)_a.lib > > > XML_A_DLL = $(XML_BASENAME)_a_dll.lib > > > +VS14_INCLUDE = "C:\Program Files (x86)\Microsoft Visual > > > Studio\2017\Community\VC\Tools\MSVC\14.10.25017\include" > > > +VS14_INCLUDE_AUX = "C:\Program Files (x86)\Microsoft Visual > > > Studio\2017\Community\VC\Auxiliary\VS\include" > > > +VS14_INCLUDE_UCRT = "C:\Program Files (x86)\Windows > > > Kits\10\Include\10.0.15063.0\ucrt" > > > +VS14_INCLUDE_UM = "C:\Program Files (x86)\Windows > > > Kits\10\Include\10.0.15063.0\um" > > > +VS14_INCLUDE_SHARED = "C:\Program Files (x86)\Windows > > > Kits\10\Include\10.0.15063.0\shared" > > > +VS14_INCLUDE_WINRT = "C:\Program Files (x86)\Windows > > > Kits\10\Include\10.0.15063.0\winrt\Include\um" > > > +WindowsSDK_IncludePath = "C:\Program Files (x86)\Windows > > > Kits\10\Include\10.0.15063.0\um" > > > + > > > +VC14_LINK_LIBRARY_PATH_X86 = "C:\Program Files (x86)\Microsoft Visual > > > Studio\2017\Community\VC\Tools\MSVC\14.10.25017\lib\x86" > > > +VC14_LINK_LIBRARY_PATH_X86_AUX = "C:\Program Files (x86)\Microsoft > > > Visual Studio\2017\Community\VC\Auxiliary\VS\lib\x86" > > > +VC14_LINK_LIBRARY_PATH_X86_UCRT = "C:\Program Files (x86)\Windows > > > Kits\10\lib\10.0.10240.0\ucrt\x86" > > > +VC14_LINK_LIBRARY_PATH_X86_WINSDK = "C:\Program Files (x86)\Windows > > > Kits\8.1\lib\winv6.3\um\x86" > > > # Place where we let the compiler put its output. > > > BINDIR = bin.msvc > > > @@ -36,14 +48,14 @@ UTILS_INTDIR = int.utils.msvc > > > # The preprocessor and its options. > > > CPP = cl.exe /EP > > > -CPPFLAGS = /nologo /I$(XML_SRCDIR)\include /D "NOLIBTOOL" > > > +CPPFLAGS = /nologo /I$(XML_SRCDIR)\include /D "NOLIBTOOL" > > > !if "$(WITH_THREADS)" != "no" > > > CPPFLAGS = $(CPPFLAGS) /D "_REENTRANT" > > > !endif > > > # The compiler and its options. > > > CC = cl.exe > > > -CFLAGS = /nologo /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W1 > > > $(CRUNTIME) > > > +CFLAGS = /nologo /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W1 > > > $(CRUNTIME) /I$(VS14_INCLUDE) /I$(VS14_INCLUDE) /I$(VS14_INCLUDE_AUX) > > > /I$(VS14_INCLUDE_UCRT) /I$(VS14_INCLUDE_UM) /I$(VS14_INCLUDE_SHARED) > > > /I$(VS14_INCLUDE_WINRT) /I$(WindowsSDK_IncludePath) > > > CFLAGS = $(CFLAGS) /I$(XML_SRCDIR) /I$(XML_SRCDIR)\include > > > /I$(INCPREFIX) > > > !if "$(WITH_THREADS)" != "no" > > > CFLAGS = $(CFLAGS) /D "_REENTRANT" > > > @@ -65,8 +77,8 @@ CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE > > > /D_CRT_NONSTDC_NO_DEPRECATE > > > # The linker and its options. > > > LD = link.exe > > > -LDFLAGS = /nologo > > > /VERSION:$(LIBXML_MAJOR_VERSION).$(LIBXML_MINOR_VERSION) > > > -LDFLAGS = $(LDFLAGS) /LIBPATH:$(BINDIR) /LIBPATH:$(LIBPREFIX) > > > +LDFLAGS = /VERSION:$(LIBXML_MAJOR_VERSION).$(LIBXML_MINOR_VERSION) > > > /MACHINE:X86 > > > +LDFLAGS = $(LDFLAGS) /LIBPATH:$(BINDIR) /LIBPATH:$(LIBPREFIX) > > > /LIBPATH:$(VC14_LINK_LIBRARY_PATH_X86) > > > /LIBPATH:$(VC14_LINK_LIBRARY_PATH_X86_AUX) > > > /LIBPATH:$(VC14_LINK_LIBRARY_PATH_X86_UCRT) > > > /LIBPATH:$(VC14_LINK_LIBRARY_PATH_X86_WINSDK) > > > LIBS = > > > !if "$(WITH_FTP)" == "1" || "$(WITH_HTTP)" == "1" > > > LIBS = $(LIBS) wsock32.lib ws2_32.lib > > > diff --git a/win32/Readme.txt b/win32/Readme.txt > > > index 6b3edddb..8f45238b 100644 > > > --- a/win32/Readme.txt > > > +++ b/win32/Readme.txt > > > @@ -148,6 +148,20 @@ it will link to its own C-runtime named msvcr70.dll > > > or msvcr71.dll. This > > > file is not available on any machine which doesn't have Visual Studio > > > .NET installed. > > > +2.1.1 UCRT and 32bit > > > +-------------------- > > > + > > > +If you use the compiler which comes with Visual Studio 2015 and above, > > > note that > > > +it will link to its own C-runtime named msvcr140.dll or msvcr140.dll. > > > That > > > +files are redistributed via the ucrt packages (windows XP need the ucrt > > > files manually copied). > > > + > > > +In order to build 32 bit on Visual Studio 2017 on a 64 bit machine, > > > + you would need to call the 32 bit compiler: > > > + > > > +step1 update your path to call the 32bit versions (assuming Visual > > > studio installed to C:\Program Files (x86)\Microsoft Visual > > > Studio\2017\Community\VC\Tools\MSVC\14.10.25017): > > > +set PATH="C:\Program Files (x86)\Microsoft Visual > > > Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX86\x86";%PATH% > > > +step 2 call name > > > +nmake /f Makefile.msvc > > > 2.2 GNU C/C++, Mingw edition > > > ---------------------------- > > > -- > > > 2.13.3 > > > > > > > > _______________________________________________ > > > xml mailing list, project page http://xmlsoft.org/ > > > xml@gnome.org > > > https://mail.gnome.org/mailman/listinfo/xml > > > > > _______________________________________________ > xml mailing list, project page http://xmlsoft.org/ > xml@gnome.org > https://mail.gnome.org/mailman/listinfo/xml -- Daniel Veillard | Red Hat Developers Tools http://developer.redhat.com/ veill...@redhat.com | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | virtualization library http://libvirt.org/ _______________________________________________ xml mailing list, project page http://xmlsoft.org/ xml@gnome.org https://mail.gnome.org/mailman/listinfo/xml