Date: prev next · Thread: first prev next last
2015 Archives by date, by thread · List index


Hi,

In the past few days I made some experiments with LibreOffice 4.4.
configure suggests that SDK version 7.1A should be used for targetting
Windows XP. configure also says that SDK version 7.1A is not known to
work with VS2013, and it is true. I could not build LibreOffice 4.4
with VS2013 and SDK 7.1A, there were many compilation errors.

I found an article:
https://tedwvc.wordpress.com/2014/01/01/how-to-target-xp-with-vc2012-or-vc2013-and-continue-to-use-the-windows-8-x-sdk/

It says:
"Say we’ve decided to use Windows 8.x SDK while still allowing our app
to run on XP. Are there any options available? i.e. can you keep using
the v110/v120 toolsets instead of the v110_xp/v120_xp toolsets? Yes,
it turns out that Microsoft left a nice loophole in the code to do
exactly that. Notice the mysterious define in the block of code above
named _ATL_XP_TARGETING. Turns out this is an alternative way to
support XP targeting while _USING_V110_SDK71_ is NOT defined. So if
you really want to support XP while using Windows 8.x SDK, we simply
need to ensure our code is built with _ATL_XP_TARGETING defined. The
easiest way to do this is to add a /D_ATL_XP_TARGETING flag to our
C/C++ command line options in project properties."

I added -D_ATL_XP_TARGETING flag to
solenv/gbuild/platform/com_MSC_defs.mk instead of the last conditional
flag  $(if $(findstring
110_70,$(VCVER)_$(WINDOWS_SDK_VERSION)),-D_USING_V110_SDK71_), and I
built LibreOffice 4.4 with VS2013 and SDK 8.1. It started on Windows
XP. Then I reverted my patch, and made a full build again.
Surprisingly, the resulting build also started on Windows XP.

So my question is: how is that possible? What config does result a
built which does not start on Windows XP then?

I have not tried this with master. What is the difference between
master and 4.4 in this regard?

Thanks,
Andras

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.