diff --git a/Installation/cmake/modules/CGAL_UseLEDA.cmake b/Installation/cmake/modules/CGAL_UseLEDA.cmake index 3b641e8b496..31394fe9d8d 100644 --- a/Installation/cmake/modules/CGAL_UseLEDA.cmake +++ b/Installation/cmake/modules/CGAL_UseLEDA.cmake @@ -22,6 +22,23 @@ if ( LEDA_FOUND AND NOT LEDA_SETUP ) link_libraries( ${LEDA_LIBRARIES} ) endif() + if ( CMAKE_COMPILER_IS_GNUCXX ) + get_dependency_version (GCC) + if ( NOT "${GCC_VERSION}" VERSION_LESS "4.1" ) + message( STATUS "Using LEDA with gcc version 4.1 or later. Adding -ffriend-injection" ) + uniquely_add_flags (CMAKE_CXX_FLAGS "-ffriend-injection") + endif() + if ( NOT "${GCC_VERSION}" VERSION_LESS "4.4" ) + message( STATUS "Using LEDA with gcc version 4.4 or later. Adding -fno-strict-aliasing" ) + uniquely_add_flags (CMAKE_CXX_FLAGS "-fno-strict-aliasing") + endif() + if ( UNIX ) + message( STATUS "Using LEDA with gcc on *nix. Adding -lX11" ) + uniquely_add_flags( CMAKE_SHARED_LINKER_FLAGS "-lX11" ) + uniquely_add_flags( CMAKE_MODULE_LINKER_FLAGS "-lX11" ) + endif() + endif() + uniquely_add_flags( CMAKE_CXX_FLAGS ${LEDA_CXX_FLAGS} ) uniquely_add_flags( CMAKE_SHARED_LINKER_FLAGS ${LEDA_LINKER_FLAGS} ) uniquely_add_flags( CMAKE_MODULE_LINKER_FLAGS ${LEDA_LINKER_FLAGS} )