ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/cmake/modules/FindQhull.cmake
Revision: 1704
Committed: Tue Apr 24 20:40:04 2012 UTC (13 years ago) by gezelter
File size: 3034 byte(s)
Log Message:
qhull modifications for compilation 


File Contents

# User Rev Content
1 gezelter 1694 ###############################################################################
2     # Find QHULL
3     #
4     # This sets the following variables:
5     # QHULL_FOUND - True if QHULL was found.
6     # QHULL_INCLUDE_DIRS - Directories containing the QHULL include files.
7     # QHULL_LIBRARIES - Libraries needed to use QHULL.
8     # QHULL_DEFINITIONS - Compiler flags for QHULL.
9 gezelter 1704 # If QHULL_USE_STATIC is specified then look for static libraries ONLY else
10     # look for shared ones
11 gezelter 1694
12     set(QHULL_MAJOR_VERSION 6)
13    
14 gezelter 1704 if(QHULL_USE_STATIC)
15     set(QHULL_RELEASE_NAME qhullstatic)
16     set(QHULL_DEBUG_NAME qhullstatic_d)
17     else(QHULL_USE_STATIC)
18     set(QHULL_RELEASE_NAME qhull qhull${QHULL_MAJOR_VERSION})
19     set(QHULL_DEBUG_NAME qhull_d qhull${QHULL_MAJOR_VERSION}_d qhull_d${QHULL_MAJOR_VERSION})
20     endif(QHULL_USE_STATIC)
21    
22    
23 gezelter 1694 find_file(QHULL_HEADER
24     NAMES libqhull/libqhull.h qhull.h
25     HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" "${QHULL_INCLUDE_DIR}"
26     PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
27     PATH_SUFFIXES qhull src/libqhull libqhull include)
28    
29     set(QHULL_HEADER "${QHULL_HEADER}" CACHE INTERNAL "QHull header" FORCE )
30    
31     if(QHULL_HEADER)
32     get_filename_component(qhull_header ${QHULL_HEADER} NAME_WE)
33     if("${qhull_header}" STREQUAL "qhull")
34     set(HAVE_QHULL_2011 OFF)
35     get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
36     elseif("${qhull_header}" STREQUAL "libqhull")
37     set(HAVE_QHULL_2011 ON)
38     get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
39     get_filename_component(QHULL_INCLUDE_DIR ${QHULL_INCLUDE_DIR} PATH)
40     endif()
41     else(QHULL_HEADER)
42     set(QHULL_INCLUDE_DIR "QHULL_INCLUDE_DIR-NOTFOUND")
43     endif(QHULL_HEADER)
44    
45     set(QHULL_INCLUDE_DIR "${QHULL_INCLUDE_DIR}" CACHE PATH "QHull include dir." FORCE)
46    
47 gezelter 1704 find_library(QHULL_LIBRARY
48     NAMES ${QHULL_RELEASE_NAME}
49     HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
50     PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
51     PATH_SUFFIXES project build bin lib)
52 gezelter 1694
53 gezelter 1704 find_library(QHULL_LIBRARY_DEBUG
54     NAMES ${QHULL_DEBUG_NAME} ${QHULL_RELEASE_NAME}
55     HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
56     PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
57     PATH_SUFFIXES project build bin lib)
58 gezelter 1694
59     if(NOT QHULL_LIBRARY_DEBUG)
60     set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY})
61     endif(NOT QHULL_LIBRARY_DEBUG)
62    
63     set(QHULL_INCLUDE_DIRS ${QHULL_INCLUDE_DIR})
64     set(QHULL_LIBRARIES optimized ${QHULL_LIBRARY} debug ${QHULL_LIBRARY_DEBUG})
65    
66     include(FindPackageHandleStandardArgs)
67 gezelter 1704 find_package_handle_standard_args(Qhull DEFAULT_MSG QHULL_LIBRARY QHULL_INCLUDE_DIR)
68 gezelter 1694
69     mark_as_advanced(QHULL_LIBRARY QHULL_LIBRARY_DEBUG QHULL_INCLUDE_DIR)
70    
71     if(QHULL_FOUND)
72     set(HAVE_QHULL ON)
73 gezelter 1704 if(NOT QHULL_USE_STATIC)
74 gezelter 1694 add_definitions("-Dqh_QHpointer")
75 gezelter 1704 if(MSVC)
76     add_definitions("-Dqh_QHpointer_dllimport")
77     endif(MSVC)
78     endif(NOT QHULL_USE_STATIC)
79 gezelter 1694 message(STATUS "QHULL found (include: ${QHULL_INCLUDE_DIRS}, lib: ${QHULL_LIBRARIES})")
80     endif(QHULL_FOUND)