@@ -4,6 +4,42 @@ PROJECT( HashDeepLearning )
44
55SET ( CMAKE_CXX_STANDARD 11 )
66
7+ # cross-platform OpenMP find
8+ IF (APPLE )
9+ # MESSAGE (STATUS "${OpenMP_LIBRARIES}")
10+ IF ("${OpenMP_LIBRARIES} " STREQUAL "" )
11+ FIND_LIBRARY (OpenMP_LIBRARY
12+ NAMES omp
13+ )
14+ FIND_PATH (OpenMP_INCLUDE_DIR
15+ omp.h
16+ )
17+ MARK_AS_ADVANCED (OpenMP_LIBRARY OpenMP_INCLUDE_DIR)
18+ INCLUDE (FINDPACKAGEHANDLESTANDARDARGS)
19+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenMP DEFAULT_MSG
20+ OpenMP_LIBRARY OpenMP_INCLUDE_DIR)
21+ IF (OpenMP_FOUND)
22+ # MESSAGE (STATUS "OpenMP FOUND")
23+ SET (OpenMP_LIBRARIES ${OpenMP_LIBRARY} CACHE STRING "Cache OpenMP Lib" FORCE)
24+ SET (OpenMP_INCLUDE_DIRS ${OpenMP_INCLUDE_DIR} CACHE STRING "Cache OpenMP Include" FORCE)
25+ SET (OpenMP_COMPILE_OPTIONS -XPREPROCESSOR -FOpenMP -LOMP)
26+ ADD_LIBRARY (OpenMP::OpenMP SHARED IMPORTED )
27+ SET_TARGET_PROPERTIES (OpenMP::OpenMP PROPERTIES
28+ IMPORTED_LOCATION ${OpenMP_LIBRARIES}
29+ INTERFACE_INCLUDE_DIRECTORIES "${OpenMP_INCLUDE_DIRS} "
30+ INTERFACE_COMPILE_OPTIONS "${OpenMP_COMPILE_OPTIONS} "
31+ )
32+ ADD_DEFINITIONS (-D_OPENMP="${OpenMP_CXX_VERSION} " )
33+ SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS} " )
34+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS} " )
35+ ENDIF ()
36+ ENDIF ()
37+ ELSE ()
38+ FIND_PACKAGE (OpenMP REQUIRED)
39+ SET ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS} " )
40+ SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS} " )
41+ ENDIF ()
42+
743# build dependencies
844INCLUDE ( ExternalProject )
945
0 commit comments