I'm not sure, but when I look at the -fascii-ized version of CheckTypeSizeC.o using my text editor on Windows, I find: INFO:sizeof[00008] as I'd expect.
Well, actually I know one answer: the square brackets are a problematic character, and depend on the codepage. I haven't really looked at the code otherwise; since -fascii exists, it would seem to me to be the simpler fix. To get it to work, I added: IF(ZOS) SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -fasciiout") ENDIF(ZOS) around line 60 of CheckTypeSize.cmake. Admittedly this is only going to work with Dignus; OTOH, any *other* z/OS cross-compiler will need some other magic, plus it's Really Unlikely that anyone else is going to create such a cross-compiler, so it "feels" safe(ish). Or I suppose a z/OS-specific variable containing special options could exist, defaulting to -fascii. ...phsiii -----Original Message----- From: Alexander Neundorf [mailto:[EMAIL PROTECTED] Sent: Monday, August 04, 2008 5:50 PM To: cmake@cmake.org Cc: Phil Smith Subject: Re: [CMake] FW: cmake newbie questions On Friday 01 August 2008, Phil Smith wrote: > Sure, here are two files: > ctsc.fascii -- CheckTypeSizeC.c compiled with the Dignus -fascii option > ctsc.nofascii -- CheckTypeSizeC.c compiled without the Dignus -fascii > option The file indeed looks different than all object files I have ever seen. I tried to "translate" it using the encoding given here: http://en.wikipedia.org/wiki/EBCDIC but that doesn't seem to work. I get "info_sizeof" instead of "INFO:sizeof" (note the casing the colon which became an underscore). Why does that happen ? And according to that table '0' is 0xF0, and the other digits follow. So why doesn't '0' + (SIZE % 10) work to get the correct digit ? And why are the square brackets missing completely ? Alex _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake