[CMake] Testing for SSE and adding appropriate Compile options

Tyler Roscoe tyler at cryptio.net
Fri Sep 25 16:30:18 EDT 2009


On Fri, Sep 25, 2009 at 01:57:26PM -0400, Michael Jackson wrote:
> set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} "-msse3")
> set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-msse3")
> 
> for NON MSVC compilers and
> 
> set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:SSE2")
> set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:SSE2")
> 
> for MSVC compilers. The problem seems to be that, at least on windows  
> that an extra ";" is also added, which makes sense as that is how  
> CMake handles the concatenation of lists. So how best to append to the  
> CMAKE_C_FLAGS?

Does it work if you just drop the quotes from the second half of the
set()?

> set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} /arch:SSE2)

or, slightly more pedantically:

> set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} "/arch:SSE2")

?

tyler


More information about the CMake mailing list