CHECK_FUNCTION_EXISTS for sinf/cosf/sqrtf actually fails not because of missing math...
authorSylvain Beucler <beuc@beuc.net>
Wed, 2 May 2012 16:44:40 +0000 (16:44 +0000)
committerSylvain Beucler <beuc@beuc.net>
Wed, 2 May 2012 16:44:40 +0000 (16:44 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@1281 7f0cb862-5218-0410-a997-914c9d46530a

CMakeLists.txt

index 83e5d31..3068986 100644 (file)
@@ -187,7 +187,10 @@ ENDIF()
 
 # lib m for math, not needed on windows
 IF (NOT WIN32)
+    # For compilation:
     LIST(APPEND LIBS m)
+    # For CHECK_FUNCTION_EXISTS:
+    LIST(APPEND CMAKE_REQUIRED_LIBRARIES m)
 ENDIF()
 
 IF(WIN32)
@@ -262,26 +265,9 @@ IF (NOT (HAVE_STDINT_H OR HAVE_INTTYPES_H))
 ENDIF()
 
 # Check for sinf/cosf/sqrtf
-# CHECK_FUNCTION_EXISTS doesn't work because check requires <math.h>
-#CHECK_FUNCTION_EXISTS(sinf      HAVE_SINF)
-#CHECK_FUNCTION_EXISTS(cosf      HAVE_COSF)
-#CHECK_FUNCTION_EXISTS(sqrtf     HAVE_SQRTF)
-INCLUDE(CheckCSourceCompiles)
-CHECK_C_SOURCE_COMPILES("
-    #include <math.h>
-    int main(){sinf(0); return 0;}
-    " HAVE_SINF
-)
-CHECK_C_SOURCE_COMPILES("
-    #include <math.h>
-    int main(){cosf(0); return 0;}
-    " HAVE_COSF
-)
-CHECK_C_SOURCE_COMPILES("
-    #include <math.h>
-    int main(){sqrtf(0); return 0;}
-    " HAVE_SQRTF
-)
+CHECK_FUNCTION_EXISTS(sinf      HAVE_SINF)
+CHECK_FUNCTION_EXISTS(cosf      HAVE_COSF)
+CHECK_FUNCTION_EXISTS(sqrtf     HAVE_SQRTF)
 
 # The generated config.h is placed in the project's build directory, just to
 # ensure that all CMake-generated files are kept away from the main source tree.