[
https://issues.apache.org/jira/browse/XERCESC-2152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16610182#comment-16610182
]
Volo Zyko commented on XERCESC-2152:
------------------------------------
Another note: yesterday I've encountered more legitimate case when I gotÂ
{{XERCES_SIZE_T=unsigned long}}. Again when cross compiling for iOS. If I pass
to cmake {{"-DCMAKE_CXX_FLAGS=-isysroot
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk
-arch armv7 -arch arm64 -miphoneos-version-min=10.0"}} then {{SIZEOF_SIZE_T}}
in XercesIntTypes.cmake is {{0}}. I think this happens because on armv7
{{sizeof(size_t) == 4}} and on arm64 {{sizeof(size_t) == 8}} and cmake gets
confused.
So, is this really necessary detecting types' sizes (for other types too) at
build configuration time? Probably more important is to check whether a given
type is present on the target platform but checking for its size should be done
at compile time, I think.
> Wrong value for XERCES_SIZE_T in XercesIntTypes.cmake
> -----------------------------------------------------
>
> Key: XERCESC-2152
> URL: https://issues.apache.org/jira/browse/XERCESC-2152
> Project: Xerces-C++
> Issue Type: Bug
> Components: Build
> Affects Versions: 3.2.1
> Reporter: Volo Zyko
> Assignee: Roger Leigh
> Priority: Minor
> Fix For: 3.2.2
>
>
> In the line {{set(XERCES_SIZE_T unsigned long)}} the value should be quoted,
> otherwise cmake incorrectly inserts it as {{#define XERCES_SIZE_T
> unsigned;long}} to InstalXerces_autoconf_config.hpp
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]