[Libreoffice-commits] core.git: XMLSEC_NO_SIZE_T is /not/ used with MSVC

Stephan Bergmann sbergman at redhat.com
Tue Mar 1 08:47:35 UTC 2016

On 03/01/2016 03:40 AM, Ashod Nakashian wrote:
> On 02/29/2016 05:42 PM, Ashod Nakashian wrote:
>> On 02/29/2016 11:44 AM, Stephan Bergmann wrote:
>>> Ashod, can you get that fixed?  I assume that it would be a common
>>> issue that such wrapper include files need special treatment in
>>> update_pch (and an indicator that automatic generation of such
>>> precompiled_*.hxx just doesn't work), but don't find anything related
>>> in that script.
>> Sure.
>> If the diff of precompiled_xsec_xmlsec.hxx is the desired result, then
>> the fix is very simple. update_pch has provision to exclude any header
>> that we deem problematic. We only need to add 'xmlsec/*' as exclusion
>> and it will never get added to the pch file on subsequent runs.
> Unfortunately, this doesn't work under Linux. The wrapper header is
> resulting in errors when it's included (which is why I had excluded it).
> I know pch is less important under Linux, but it does improve build
> times there too.
> So the choice is between fixing the issue you address with your patch
> (which I'm not sure I understand) or maintaining pch support on Linux.
> It seems both would not be possible without modifying the wrapper header.
> Perhaps if you shed some light on what you are addressing I might be
> able to come with a solution?

What is required is that no xmlsec/* ever get included from outside of 
xmlsecurity/xmlsec-wrapper.h (because the latter controls a macro that 
the former #if on).  That means that no xmlsec/* may show up in a 
precompiled_*.hxx.  Whether or not xmlsecurity/xmlsec-wrapper.h shows up 
in a precompiled_*.hxx is irrelevant for correctness, so whichever is 
easier to implement in update_pch should be fine.  (I just arbitrarily 
did include it in my manual modifications of 
xmlsecurity/inc/pch/precompiled_xsec_xmlsec.hxx to approximate what was 
there before.)

More information about the LibreOffice mailing list