ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/cmake/modules/FindOpenBabel2.cmake
Revision: 1626
Committed: Tue Sep 13 15:39:54 2011 UTC (13 years, 7 months ago) by gezelter
File size: 3324 byte(s)
Log Message:
Cmake fixes and updates.

File Contents

# Content
1 # - Try to find OpenBabel2
2 # Once done this will define
3 #
4 # OPENBABEL2_FOUND - system has OpenBabel2
5 # OPENBABEL2_INCLUDE_DIR - the OpenBabel2 include directory
6 # OPENBABEL2_LIBRARIES - Link these to use OpenBabel2
7 # Copyright (c) 2006, 2007 Carsten Niehaus, <cniehaus@gmx.de>
8 # Copyright (C) 2008 Marcus D. Hanwell <marcus@cryos.org>
9 # Redistribution and use is allowed according to the terms of the BSD license.
10 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
11
12 if (OPENBABEL2_INCLUDE_DIR AND OPENBABEL2_LIBRARIES AND OPENBABEL2_VERSION_MET)
13 # in cache already
14 set(OPENBABEL2_FOUND TRUE)
15
16 else (OPENBABEL2_INCLUDE_DIR AND OPENBABEL2_LIBRARIES AND OPENBABEL2_VERSION_MET)
17 if(NOT WIN32)
18
19 # Use the newer PkgConfig stuff
20 find_package(PkgConfig REQUIRED)
21 pkg_check_modules(OPENBABEL2 openbabel-2.0>=2.2.0)
22
23 # Maintain backwards compatibility with previous version of module
24 if(OPENBABEL2_FOUND STREQUAL "1")
25 set(OPENBABEL2_VERSION_MET TRUE)
26 set(OPENBABEL2_INCLUDE_DIR ${OPENBABEL2_INCLUDE_DIRS})
27 endif(OPENBABEL2_FOUND STREQUAL "1")
28
29 else(NOT WIN32)
30 set(OPENBABEL2_VERSION_MET TRUE)
31 endif(NOT WIN32)
32
33 if(OPENBABEL2_VERSION_MET)
34
35 # find_path(OPENBABEL2_INCLUDE_DIR openbabel/obconversion.h
36 # PATHS
37 # ${_obIncDir}
38 # ${GNUWIN32_DIR}/include
39 # $ENV{OPENBABEL2_INCLUDE_DIR}
40 # )
41
42 if(WIN32)
43 if(NOT OPENBABEL2_INCLUDE_DIR)
44 find_path(OPENBABEL2_INCLUDE_DIR openbabel-2.0/openbabel/obconversion.h
45 PATHS
46 ${_obIncDir}
47 ${GNUWIN32_DIR}/include
48 $ENV{OPENBABEL2_INCLUDE_DIR}
49 )
50 if(OPENBABEL2_INCLUDE_DIR)
51 set(OPENBABEL2_INCLUDE_DIR ${OPENBABEL2_INCLUDE_DIR}/openbabel-2.0)
52 endif(OPENBABEL2_INCLUDE_DIR)
53 endif(NOT OPENBABEL2_INCLUDE_DIR)
54 endif(WIN32)
55
56 find_library(OPENBABEL2_LIBRARIES NAMES openbabel openbabel-2
57 PATHS
58 ${_obLinkDir}
59 ${GNUWIN32_DIR}/lib
60 $ENV{OPENBABEL2_LIBRARIES}
61 )
62 endif(OPENBABEL2_VERSION_MET)
63
64 if(OPENBABEL2_INCLUDE_DIR AND OPENBABEL2_LIBRARIES AND OPENBABEL2_VERSION_MET)
65 set(OPENBABEL2_FOUND TRUE)
66 endif(OPENBABEL2_INCLUDE_DIR AND OPENBABEL2_LIBRARIES AND OPENBABEL2_VERSION_MET)
67
68 if (OPENBABEL2_FOUND)
69 if (NOT OpenBabel2_FIND_QUIETLY)
70 message(STATUS "Found OpenBabel 2.2 or later: ${OPENBABEL2_LIBRARIES}")
71 endif (NOT OpenBabel2_FIND_QUIETLY)
72 else (OPENBABEL2_FOUND)
73 if (OpenBabel2_FIND_REQUIRED)
74 message(FATAL_ERROR "Could NOT find OpenBabel 2.2 or later ")
75 endif (OpenBabel2_FIND_REQUIRED)
76 endif (OPENBABEL2_FOUND)
77
78 mark_as_advanced(OPENBABEL2_INCLUDE_DIR OPENBABEL2_LIBRARIES)
79
80 endif (OPENBABEL2_INCLUDE_DIR AND OPENBABEL2_LIBRARIES AND OPENBABEL2_VERSION_MET)
81
82 # Search for Open Babel2 executable
83 if(OPENBABEL2_EXECUTABLE)
84
85 # in cache already
86 set(OPENBABEL2_EXECUTABLE_FOUND TRUE)
87
88 else(OPENBABEL2_EXECUTABLE)
89 find_program(OPENBABEL2_EXECUTABLE NAMES babel
90 PATHS
91 [HKEY_CURRENT_USER\\SOFTWARE\\OpenBabel\ 2.2.0]
92 $ENV{OPENBABEL2_EXECUTABLE}
93 )
94
95 if(OPENBABEL2_EXECUTABLE)
96 set(OPENBABEL2_EXECUTABLE_FOUND TRUE)
97 endif(OPENBABEL2_EXECUTABLE)
98
99 if(OPENBABEL2_EXECUTABLE_FOUND)
100 message(STATUS "Found OpenBabel2 executable: ${OPENBABEL2_EXECUTABLE}")
101 endif(OPENBABEL2_EXECUTABLE_FOUND)
102
103 endif(OPENBABEL2_EXECUTABLE)
104