File: FindMySQLCppConn.cmake

package info (click to toggle)
mysql-workbench 6.3.8%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 113,932 kB
  • ctags: 87,814
  • sloc: ansic: 955,521; cpp: 427,465; python: 59,728; yacc: 59,129; xml: 54,204; sql: 7,091; objc: 965; makefile: 638; sh: 613; java: 237; perl: 30; ruby: 6; php: 1
file content (70 lines) | stat: -rw-r--r-- 2,630 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; version 2 of the
# License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
# 02110-1301  USA

# - Find Connector/C++
# Find the Connector/C++  includes and library
#
#  MYSQLCPPCONN_INCLUDE_DIRS - where to find mysql_connection.h, etc.
#  MYSQLCPPCONN_LIBRARIES    - List of libraries when using connector/c++.
#  MYSQLCPPCONN_FOUND        - True if connector found.


IF (MYSQLCPPCONN_INCLUDE_DIRS)
  # Already in cache, be silent
  SET(MYSQLCPPCONN_FIND_QUIETLY TRUE)
ENDIF (MYSQLCPPCONN_INCLUDE_DIRS)

FIND_PATH(MYSQLCPPCONN_INCLUDE_DIR mysql_connection.h
	PATHS ${CMAKE_SYSTEM_INCLUDE_PATH}
	      /usr/include
          /usr/local/include
)


SET(MYSQLCPPCONN_NAMES mysqlcppconn)
IF(MYSQLCPPCONN_LIBRARY)
ELSE()
  FIND_LIBRARY(MYSQLCPPCONN_LIBRARY NAMES ${MYSQLCPPCONN_NAMES} )
ENDIF(MYSQLCPPCONN_LIBRARY)

# handle the QUIETLY and REQUIRED arguments and set MYSQLCPPCONN_FOUND to TRUE if 
# all listed variables are TRUE
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(MYSQLCPPCONN DEFAULT_MSG MYSQLCPPCONN_LIBRARY MYSQLCPPCONN_INCLUDE_DIR)

IF(MYSQLCPPCONN_FOUND)
  SET( MYSQLCPPCONN_LIBRARIES ${MYSQLCPPCONN_LIBRARY} )
  SET( MYSQLCPPCONN_INCLUDE_DIRS ${MYSQLCPPCONN_INCLUDE_DIR} )
  TRY_COMPILE(MYSQLCPPCONN_VERSION_1_1_4
        ${CMAKE_BINARY_DIR}/try_compile ${CMAKE_CURRENT_LIST_DIR}/getColumnCharset.cpp 
        COMPILE_DEFINITIONS "-I${MYSQLCPPCONN_INCLUDE_DIRS}")
  MESSAGE(STATUS "C++ Connector detected: ${MYSQLCPPCONN_VERSION_1_1_4}")

  TRY_COMPILE(MYSQLCPPCONN_VERSION_1_1_6_OR_HIGHER
        ${CMAKE_BINARY_DIR}/try_compile ${CMAKE_CURRENT_LIST_DIR}/check_cppconn_1_1_6_or_higher.cpp
        COMPILE_DEFINITIONS "-I${MYSQLCPPCONN_INCLUDE_DIRS}")
  MESSAGE(STATUS "C++ Connector version 1.1.6 or higher: ${MYSQLCPPCONN_VERSION_1_1_6_OR_HIGHER}")

  
ELSE(MYSQLCPPCONN_FOUND)
  SET( MYSQLCPPCONN_LIBRARIES )
  SET( MYSQLCPPCONN_INCLUDE_DIRS )
ENDIF(MYSQLCPPCONN_FOUND)



MARK_AS_ADVANCED( MYSQLCPPCONN_LIBRARIES MYSQLCPPCONN_INCLUDE_DIRS )