ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/cmake/modules/FindQhull.cmake
Revision: 1694
Committed: Thu Mar 15 23:51:48 2012 UTC (13 years, 1 month ago) by gezelter
File size: 3561 byte(s)
Log Message:
Doing some work to simplify cmake build process

File Contents

# Content
1 ###############################################################################
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
10 set(QHULL_MAJOR_VERSION 6)
11
12 find_file(QHULL_HEADER
13 NAMES libqhull/libqhull.h qhull.h
14 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" "${QHULL_INCLUDE_DIR}"
15 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
16 "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373"
17 PATH_SUFFIXES qhull src/libqhull libqhull include)
18
19 set(QHULL_HEADER "${QHULL_HEADER}" CACHE INTERNAL "QHull header" FORCE )
20
21 if(QHULL_HEADER)
22 get_filename_component(qhull_header ${QHULL_HEADER} NAME_WE)
23 if("${qhull_header}" STREQUAL "qhull")
24 set(HAVE_QHULL_2011 OFF)
25 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
26 elseif("${qhull_header}" STREQUAL "libqhull")
27 set(HAVE_QHULL_2011 ON)
28 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
29 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_INCLUDE_DIR} PATH)
30 endif()
31 else(QHULL_HEADER)
32 set(QHULL_INCLUDE_DIR "QHULL_INCLUDE_DIR-NOTFOUND")
33 endif(QHULL_HEADER)
34
35 set(QHULL_INCLUDE_DIR "${QHULL_INCLUDE_DIR}" CACHE PATH "QHull include dir." FORCE)
36
37 # Prefer static libraries in Windows over shared ones
38 if(WIN32)
39 find_library(QHULL_LIBRARY
40 NAMES qhullstatic qhull qhull${QHULL_MAJOR_VERSION}
41 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
42 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
43 "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373"
44 PATH_SUFFIXES project build bin lib)
45
46 find_library(QHULL_LIBRARY_DEBUG
47 NAMES qhullstatic_d qhull_d qhull${QHULL_MAJOR_VERSION}_d qhull qhull${QHULL_MAJOR_VERSION}
48 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
49 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
50 "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373"
51 PATH_SUFFIXES project build bin lib)
52 else(WIN32)
53 find_library(QHULL_LIBRARY
54 NAMES qhull qhull${QHULL_MAJOR_VERSION}
55 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
56 PATH_SUFFIXES project build bin lib)
57
58 find_library(QHULL_LIBRARY_DEBUG
59 NAMES qhull_d qhull_d${QHULL_MAJOR_VERSION} qhull qhull${QHULL_MAJOR_VERSION}
60 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
61 PATH_SUFFIXES project build bin lib)
62 endif(WIN32)
63
64 if(NOT QHULL_LIBRARY_DEBUG)
65 set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY})
66 endif(NOT QHULL_LIBRARY_DEBUG)
67
68 set(QHULL_INCLUDE_DIRS ${QHULL_INCLUDE_DIR})
69 set(QHULL_LIBRARIES optimized ${QHULL_LIBRARY} debug ${QHULL_LIBRARY_DEBUG})
70
71 include(FindPackageHandleStandardArgs)
72 find_package_handle_standard_args(Qhull DEFAULT_MSG QHULL_LIBRARY
73 QHULL_INCLUDE_DIR)
74
75 mark_as_advanced(QHULL_LIBRARY QHULL_LIBRARY_DEBUG QHULL_INCLUDE_DIR)
76
77 if(QHULL_FOUND)
78 set(HAVE_QHULL ON)
79 get_filename_component(qhull_lib ${QHULL_LIBRARY} NAME_WE)
80 if(NOT "${qhull_lib}" STREQUAL "qhullstatic")
81 add_definitions("-Dqh_QHpointer")
82 endif(NOT "${qhull_lib}" STREQUAL "qhullstatic")
83 message(STATUS "QHULL found (include: ${QHULL_INCLUDE_DIRS}, lib: ${QHULL_LIBRARIES})")
84 endif(QHULL_FOUND)