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

# User Rev Content
1 chuckv 1466 # - 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 gezelter 1626 pkg_check_modules(OPENBABEL2 openbabel-2.0>=2.2.0)
22 chuckv 1466
23 gezelter 1626 # Maintain backwards compatibility with previous version of module
24     if(OPENBABEL2_FOUND STREQUAL "1")
25 chuckv 1466 set(OPENBABEL2_VERSION_MET TRUE)
26 gezelter 1626 set(OPENBABEL2_INCLUDE_DIR ${OPENBABEL2_INCLUDE_DIRS})
27     endif(OPENBABEL2_FOUND STREQUAL "1")
28 chuckv 1466
29     else(NOT WIN32)
30     set(OPENBABEL2_VERSION_MET TRUE)
31     endif(NOT WIN32)
32    
33     if(OPENBABEL2_VERSION_MET)
34    
35 gezelter 1626 # find_path(OPENBABEL2_INCLUDE_DIR openbabel/obconversion.h
36     # PATHS
37     # ${_obIncDir}
38     # ${GNUWIN32_DIR}/include
39     # $ENV{OPENBABEL2_INCLUDE_DIR}
40     # )
41 chuckv 1466
42 gezelter 1626 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 chuckv 1466 find_library(OPENBABEL2_LIBRARIES NAMES openbabel openbabel-2
57     PATHS
58 gezelter 1626 ${_obLinkDir}
59 chuckv 1466 ${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 chuckv 1498 [HKEY_CURRENT_USER\\SOFTWARE\\OpenBabel\ 2.2.0]
92 chuckv 1466 $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