mirror of https://github.com/CGAL/cgal
43 lines
1.4 KiB
CMake
43 lines
1.4 KiB
CMake
include(ReadLines)
|
|
include(FindMatchingItem)
|
|
|
|
if ( GMP_FOUND )
|
|
|
|
readlines(${GMP_INCLUDE_DIR}/gmp.h GMP_H_FILE)
|
|
|
|
if ( GMP_H_FILE )
|
|
|
|
find_matching_item(GMP_H_FILE "__GNU_MP_VERSION " __GNU_MP_VERSION_LINE )
|
|
find_matching_item(GMP_H_FILE "__GNU_MP_VERSION_MINOR " __GNU_MP_VERSION_MINOR_LINE )
|
|
find_matching_item(GMP_H_FILE "__GNU_MP_VERSION_PATCHLEVEL " __GNU_MP_VERSION_PATCHLEVEL_LINE )
|
|
|
|
string( REPLACE " " ";" __GNU_MP_VERSION_LINE_LIST ${__GNU_MP_VERSION_LINE} )
|
|
string( REPLACE " " ";" __GNU_MP_VERSION_MINOR_LINE_LIST ${__GNU_MP_VERSION_MINOR_LINE} )
|
|
string( REPLACE " " ";" __GNU_MP_VERSION_PATCHLEVEL_LINE_LIST ${__GNU_MP_VERSION_PATCHLEVEL_LINE} )
|
|
|
|
at( __GNU_MP_VERSION_LINE_LIST 2 __GNU_MP_VERSION )
|
|
at( __GNU_MP_VERSION_MINOR_LINE_LIST 2 __GNU_MP_VERSION_MINOR )
|
|
at( __GNU_MP_VERSION_PATCHLEVEL_LINE_LIST 2 __GNU_MP_VERSION_PATCHLEVEL )
|
|
|
|
set( GMP_VERSION "${__GNU_MP_VERSION}.${__GNU_MP_VERSION_MINOR}.${__GNU_MP_VERSION_PATCHLEVEL}" )
|
|
|
|
else()
|
|
|
|
message( STATUS "WARNING: GMP found but could not open ${GMP_INCLUDE_DIR}/gmp.h" )
|
|
|
|
set ( GMP_VERSION "unknown" )
|
|
|
|
endif()
|
|
|
|
message( STATUS "USING GMP_VERSION = '${GMP_VERSION}'" )
|
|
|
|
endif()
|
|
|
|
if ( GMPXX_FOUND AND GMP_VERSION )
|
|
|
|
set( GMPXX_VERSION ${GMP_VERSION} )
|
|
|
|
message( STATUS "USING GMPXX_VERSION = '${GMPXX_VERSION}'" )
|
|
|
|
endif()
|