[ 
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: c-dev-unsubscr...@xerces.apache.org
For additional commands, e-mail: c-dev-h...@xerces.apache.org

Reply via email to