1#
2# FindODBC.cmake
3#
4#   Copyright (c) 2010-2015  Takashi Kato <ktakashi@ymail.com>
5#
6#   Redistribution and use in source and binary forms, with or without
7#   modification, are permitted provided that the following conditions
8#   are met:
9#
10#   1. Redistributions of source code must retain the above copyright
11#      notice, this list of conditions and the following disclaimer.
12#
13#   2. Redistributions in binary form must reproduce the above copyright
14#      notice, this list of conditions and the following disclaimer in the
15#      documentation and/or other materials provided with the distribution.
16#
17#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
23#   TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24#   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25#   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26#   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27#   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29#  $Id: $
30#
31
32# CMake module to find odbc or unix odbc
33
34CHECK_INCLUDE_FILE(sql.h    HAVE_SQL_H)
35CHECK_INCLUDE_FILE(sqlext.h    HAVE_SQLEXT_H)
36
37IF (HAVE_SQL_H AND HAVE_SQLEXT_H)
38  SET(ODBC_FOUND TRUE)
39ELSE()
40  FIND_PATH(ODBC_INCLUDE_DIR NAMES sql.h sqlext.h)
41  IF (ODBC_INCLUDE_DIR)
42    MESSAGE(STATUS "ODBC include dir - ${ODBC_INCLUDE_DIR}")
43    FIND_LIBRARY(ODBC_LIBRARIES NAMES odbc32 odbc libodbc iodbc libiodbc)
44    IF (ODBC_LIBRARIES)
45      MESSAGE(STATUS "ODBC libraries - ${ODBC_LIBRARIES}")
46      SET(HAVE_SQL_H TRUE)
47      SET(HAVE_SQLEXT_H TRUE)
48      SET(ODBC_FOUND TRUE)
49    ELSE()
50      MESSAGE(STATUS "ODBC libraries - not found")
51    ENDIF()
52  ELSE()
53    MESSAGE(STATUS "ODBC include dir - not found")
54  ENDIF()
55ENDIF()
56
57IF (ODBC_FOUND)
58  MESSAGE(STATUS "Searching odbc - found")
59ELSE()
60  MESSAGE(STATUS "Searching odbc - not found")
61ENDIF()
62
63