[CMake] Version 2.8 affects exception handling?

Bill Spotz wfspotz at sandia.gov
Sat Nov 28 00:05:41 EST 2009


On Oct 21, 2009, at 7:44 AM, Bill Hoffman wrote:

> Bill Spotz wrote:
>> Hi,
>>
>> I am a Trilinos developer, so I recently upgraded to CMake version  
>> 2.8
>> so that I could test the Trilinos release 10 tarball.
>>
>> I am seeing certain unit tests fail that were working before (in the
>> Trilinos release 10 repository) and this is the current state of my
>> debugging process:
>>
>>  * I am testing that a constructor given an invalid (negative)  
>> argument
>> throws an exception
>>  * gdb indicates that the exception is thrown, but I cannot catch it
>>  * the program crashes with a segmentation fault
>>
>> I don't see any changes by other developers that would change the
>> behavior of the code I am testing.  The only difference I am aware of
>> between the code that was working and the code that is failing now is
>> the CMake version used to build it.
>>
>> Might CMake be compiling with options that affect exception handling?
>> If so, how can I determine what it is doing and customize it to  
>> behave
>> the way I expect it to?
>>
> Not that I know of...
>
> If you have a build that works and one that does not, perhaps you  
> could
> do a make VERBOSE=1, and post the build for a .o and the linking of an
> executable for the version that works and the one that does not and we
> can compare flags to figure out what is going on.

I finally got around to doing this, and the only difference in the  
compile flags is that the new version of cmake uses the compiler flag

     -mmacosx-version-min=10.5

where the old one does not.  My MACOSX_DEPLOYMENT_TARGET environment  
variable is set to 10.5 either way, so I'm not even sure this would  
make a difference.

** Bill Spotz                                              **
** Sandia National Laboratories  Voice: (505)845-0170      **
** P.O. Box 5800                 Fax:   (505)284-0154      **
** Albuquerque, NM 87185-0370    Email: wfspotz at sandia.gov **




More information about the CMake mailing list