ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/cmake/modules/FindFFTW.cmake
Revision: 1668
Committed: Fri Jan 6 19:03:05 2012 UTC (13 years, 3 months ago) by gezelter
File size: 2129 byte(s)
Log Message:
Some fixes for CMake and single precision builds

File Contents

# Content
1 # - Find FFTW
2 # Find the native FFTW includes and library
3 # This module defines
4 # FFTW_INCLUDE_DIR, where to find fftw3.h, etc.
5 # FFTW_LIBRARIES, the libraries needed to use FFTW.
6 # FFTW_FOUND, If false, do not try to use FFTW.
7 # also defined, but not for general use are
8 # FFTW_LIBRARY, where to find the FFTW library.
9
10 FIND_PATH(FFTW_INCLUDE_DIR fftw3.h
11 /usr/local/include
12 /usr/include
13 /opt/local/lib
14 )
15
16 SET(FFTW_NAMES ${FFTW_NAMES} fftw3 fftw3f fftw3-3)
17 FIND_LIBRARY(FFTW_LIBRARY
18 NAMES ${FFTW_NAMES}
19 PATHS /usr/lib /usr/local/lib /opt/local/lib
20 )
21
22 # Find threads part of FFTW
23
24 SET(FFTW_THREADS_NAMES ${FFTW_THREADS_NAMES} fftw3f_threads fftw3_threads fftw3-3_threads)
25 FIND_LIBRARY(FFTW_THREADS_LIBRARY
26 NAMES ${FFTW_THREADS_NAMES}
27 PATHS /usr/lib /usr/local/lib /opt/local/lib
28 )
29
30 IF (FFTW_THREADS_LIBRARY AND FFTW_INCLUDE_DIR)
31 SET(FFTW_THREADS_LIBRARIES ${FFTW_THREADS_LIBRARY})
32 SET(FFTW_THREADS_FOUND "YES")
33 ELSE (FFTW_THREADS_LIBRARY AND FFTW_INCLUDE_DIR)
34 SET(FFTW_THREADS_FOUND "NO")
35 ENDIF (FFTW_THREADS_LIBRARY AND FFTW_INCLUDE_DIR)
36
37
38 IF (FFTW_THREADS_FOUND)
39 IF (NOT FFTW_THREADS_FIND_QUIETLY)
40 MESSAGE(STATUS "Found FFTW threads: ${FFTW_THREADS_LIBRARIES}")
41 ENDIF (NOT FFTW_THREADS_FIND_QUIETLY)
42 ELSE (FFTW_THREADS_FOUND)
43 IF (FFTW_THREADS_FIND_REQUIRED)
44 MESSAGE(FATAL_ERROR "Could not find FFTW threads library")
45 ENDIF (FFTW_THREADS_FIND_REQUIRED)
46 ENDIF (FFTW_THREADS_FOUND)
47
48
49 IF (FFTW_LIBRARY AND FFTW_INCLUDE_DIR)
50 SET(FFTW_LIBRARIES ${FFTW_LIBRARY})
51 SET(FFTW_FOUND "YES")
52 ELSE (FFTW_LIBRARY AND FFTW_INCLUDE_DIR)
53 SET(FFTW_FOUND "NO")
54 ENDIF (FFTW_LIBRARY AND FFTW_INCLUDE_DIR)
55
56
57 IF (FFTW_FOUND)
58 IF (NOT FFTW_FIND_QUIETLY)
59 MESSAGE(STATUS "Found FFTW: ${FFTW_LIBRARIES}")
60 ENDIF (NOT FFTW_FIND_QUIETLY)
61 ELSE (FFTW_FOUND)
62 IF (FFTW_FIND_REQUIRED)
63 MESSAGE(FATAL_ERROR "Could not find FFTW library")
64 ENDIF (FFTW_FIND_REQUIRED)
65 ENDIF (FFTW_FOUND)
66
67 SET (ON_UNIX ${CMAKE_SYSTEM_NAME} STREQUAL "Linux" OR
68 ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
69 IF (${ON_UNIX})
70 SET (FFTW_EXECUTABLE_LIBRARIES fftw3f fftw3f_threads)
71 ENDIF (${ON_UNIX})