Patch to cmake detect OpenMP

Otacílio otacilio.neto at bsd.com.br
Tue Sep 20 03:55:59 UTC 2016


I'm trying to port flann (http://www.cs.ubc.ca/research/flann/) to 
FreeBSD, but I need that cmake detects OpenMP. Unhappy, cmake do not 
detects OpenMP even when devel/openmp is installed,  so I did this patch 
to cmake port. What you guys think about? Can I open a bug report with 
patch?

[]'s

-Otacilio

--- Modules/FindOpenMP.cmake.orig    2016-09-20 03:52:10 UTC
+++ Modules/FindOpenMP.cmake
@@ -134,8 +134,8 @@ if(CMAKE_C_COMPILER_LOADED)
    endif()

    foreach(FLAG IN LISTS OpenMP_C_FLAG_CANDIDATES)
-    set(SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
-    set(CMAKE_REQUIRED_FLAGS "${FLAG}")
+    set(SAFE_CMAKE_REQUIRED_FLAGS "-I/usr/local/include 
-L/usr/local/lib -lm ${CMAKE_REQUIRED_FLAGS}")
+    set(CMAKE_REQUIRED_FLAGS "-I/usr/local/include -L/usr/local/lib -lm 
${FLAG}")
      unset(OpenMP_FLAG_DETECTED CACHE)
      if(NOT CMAKE_REQUIRED_QUIET)
        message(STATUS "Try OpenMP C flag = [${FLAG}]")
@@ -148,7 +148,7 @@ if(CMAKE_C_COMPILER_LOADED)
      endif()
    endforeach()

-  set(OpenMP_C_FLAGS "${OpenMP_C_FLAGS_INTERNAL}"
+  set(OpenMP_C_FLAGS "-I/usr/local/include ${OpenMP_C_FLAGS_INTERNAL}"
      CACHE STRING "C compiler flags for OpenMP parallization")

    list(APPEND _OPENMP_REQUIRED_VARS OpenMP_C_FLAGS)
@@ -170,8 +170,8 @@ if(CMAKE_CXX_COMPILER_LOADED)
    endif()

    foreach(FLAG IN LISTS OpenMP_CXX_FLAG_CANDIDATES)
-    set(SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
-    set(CMAKE_REQUIRED_FLAGS "${FLAG}")
+    set(SAFE_CMAKE_REQUIRED_FLAGS "-I/usr/local/include 
-L/usr/local/lib ${CMAKE_REQUIRED_FLAGS}")
+    set(CMAKE_REQUIRED_FLAGS "-I/usr/local/include -L/usr/local/lib 
${FLAG}")
      unset(OpenMP_FLAG_DETECTED CACHE)
      if(NOT CMAKE_REQUIRED_QUIET)
        message(STATUS "Try OpenMP CXX flag = [${FLAG}]")
@@ -184,7 +184,7 @@ if(CMAKE_CXX_COMPILER_LOADED)
      endif()
    endforeach()

-  set(OpenMP_CXX_FLAGS "${OpenMP_CXX_FLAGS_INTERNAL}"
+  set(OpenMP_CXX_FLAGS "-I/usr/local/include ${OpenMP_CXX_FLAGS_INTERNAL}"
      CACHE STRING "C++ compiler flags for OpenMP parallization")

    list(APPEND _OPENMP_REQUIRED_VARS OpenMP_CXX_FLAGS)



More information about the freebsd-ports mailing list