Modified:
trunk/CMakeLists.txt
trunk/MYODBCDbg/MYODBCDbgLib/CMakeLists.txt
trunk/cmake/FindMySQL.cmake
trunk/dltest/CMakeLists.txt
trunk/driver/CMakeLists.txt
trunk/dsn-editor/CMakeLists.txt
trunk/installer/CMakeLists.txt
trunk/monitor/CMakeLists.txt
trunk/setup/CMakeLists.txt
trunk/test/CMakeLists.txt
trunk/util/CMakeLists.txt
Log:
Cleanups to CMake builds (doesnt correctly support non-pkg mysql libs yet)
Modified: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -20,50 +20,62 @@
##########################################################################
-#-------------- detect platform ---------------------
-IF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".dylib")
- SET(ODBC_MAC 1)
- MESSAGE(STATUS "platform settings: Mac")
-ENDIF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".dylib")
-IF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".so")
- SET(ODBC_UNIX 1)
- ADD_DEFINITIONS(-D_UNIX_)
- MESSAGE(STATUS "platform settings: *nix")
-ENDIF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".so")
-IF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".dll")
- SET(ODBC_WINDOWS 1)
- MESSAGE(STATUS "platform settings: Windows")
-ENDIF (${CMAKE_SHARED_LIBRARY_SUFFIX} MATCHES ".dll")
-#-----------------------------------------------------
+PROJECT(MySQL_Connector_ODBC)
+CMAKE_MINIMUM_REQUIRED(VERSION 2.4 FATAL_ERROR)
+#SET(CMAKE_VERBOSE_MAKEFILE ON)
+
#-------------- find qt and mysql --------------------
IF(NOT DISABLE_GUI)
- IF (ODBC_WINDOWS)
+ IF(WIN32)
INCLUDE(FindQt4)
- ELSE(ODBC_WINDOWS)
+ ELSE(WIN32)
INCLUDE(FindQt)
- ENDIF (ODBC_WINDOWS)
+ ENDIF(WIN32)
+
INCLUDE_DIRECTORIES(${QT_INCLUDES})
LINK_DIRECTORIES(${QT_LIBRARY_DIR})
+
+ # Need explicit Qt deps on Win w/CMake < 2.4.6
+ # TODO double check if it's 2.4.6 or 2.4.5 that has the DEPENDENCIES vars
+ # (and fix below)
+ IF(WIN32 AND
+ CMAKE_MAJOR_VERSION EQUAL 2 AND
+ CMAKE_MINOR_VERSION EQUAL 4 AND
+ CMAKE_PATCH_VERSION LESS 6)
+ # not exactly the same as FindQt4.cmake, but good enough
+ SET(QT_CORE_LIB_DEPENDENCIES Imm32.lib Winmm.lib Ws2_32.lib)
+ ENDIF(WIN32 AND
+ CMAKE_MAJOR_VERSION EQUAL 2 AND
+ CMAKE_MINOR_VERSION EQUAL 4 AND
+ CMAKE_PATCH_VERSION LESS 6)
+
+ # FindQT4.cmake is supposed to set this, but doesn't seem to, so we do it
+ IF (CMAKE_BUILD_TYPE STREQUAL Debug)
+ SET(QT_LIBRARIES ${QT_QTCORE_LIBRARY_DEBUG}
+ ${QT_QTGUI_LIBRARY_DEBUG} ${QT_QT3SUPPORT_LIBRARY_DEBUG}
+ ${QT_CORE_LIB_DEPENDENCIES} ${QT_GUI_LIB_DEPENDENCIES})
+ ELSE (CMAKE_BUILD_TYPE STREQUAL Debug)
+ SET(QT_LIBRARIES ${QT_QTCORE_LIBRARY_RELEASE}
+ ${QT_QTGUI_LIBRARY_RELEASE} ${QT_QT3SUPPORT_LIBRARY_RELEASE}
+ ${QT_CORE_LIB_DEPENDENCIES} ${QT_GUI_LIB_DEPENDENCIES})
+ ENDIF (CMAKE_BUILD_TYPE STREQUAL Debug)
ENDIF(NOT DISABLE_GUI)
+
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/FindMySQL.cmake)
#-----------------------------------------------------
-#-------------- unixodbc/iodbc? ---------------------
-IF(NOT ODBC_WINDOWS)
- IF(WITH_UNIXODBC)
- ADD_DEFINITIONS(-DUSE_UNIXODBC)
- ELSE(WITH_UNIXODBC)
- ADD_DEFINITIONS(-DUSE_IODBC)
- ENDIF(WITH_UNIXODBC)
+#-------------- unixodbc/iodbc/win -------------------
+IF(WIN32)
+ SET(ODBCLIB odbc32)
+ SET(ODBCINSTLIB odbccp32)
+ELSE(WIN32)
INCLUDE(cmake/FindODBC.cmake)
-ENDIF(NOT ODBC_WINDOWS)
+ SET(ODBCLIB odbc)
+ SET(ODBCINSTLIB odbcinst)
+ENDIF(WIN32)
#-----------------------------------------------------
-IF(ODBC_WINDOWS)
- REMOVE_DEFINITIONS(-DUNICODE)
-ENDIF(ODBC_WINDOWS)
-
#------------------ check compatibility---------------
TRY_COMPILE(COMPILE_RESULT ${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/cmake/sqlcolattrib1.c)
MESSAGE(STATUS "Checking if SQLColAttribute last arg is compatible with SQLLEN* -
${COMPILE_RESULT}")
@@ -95,31 +107,53 @@
ENDIF(COMPILE_RESULT)
#-----------------------------------------------------
-IF(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
- SET(PROCESSOR_ARCH "X64")
-ELSE(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
- SET(PROCESSOR_ARCH "X86")
-ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
+#------------ build options for windows --------------
+IF(WIN32)
+ REMOVE_DEFINITIONS(-DUNICODE)
+ ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
+ ADD_DEFINITIONS(-DENGLISH -DMYODBC_EXPORTS -D_USERDLL)
+ ADD_DEFINITIONS(-D_WIN32 -DWIN32 -D_WINDOWS -D__WIN__)
-IF(ODBC_WIN)
- ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D_WIN32 -D_CRT_SECURE_NO_DEPRECATE")
-ENDIF(ODBC_WIN)
+ # edits for all config build flags
+ FOREACH(TYPE C CXX)
+ # makefiles use blank configuration
+ FOREACH(CFG "_DEBUG" "_MINSIZEREL" "_RELEASE" "_RELWITHDEBINFO")
+ #FOREACH(CFG "" ${CMAKE_CONFIGURATION_TYPES})
+ #MESSAGE("Replacing CMAKE_${TYPE}_FLAGS${CFG}: ${CMAKE_${TYPE}_FLAGS${CFG}}")
+ SET(NEW_FLAGS "${CMAKE_${TYPE}_FLAGS${CFG}}")
+
+ # fix up static libc flags
+ STRING(REPLACE "/MD" "/MT" NEW_FLAGS "${NEW_FLAGS}")
+
+ # Add some additional help for debug builds
+ IF(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ STRING(REPLACE "/Zi" "/ZI" NEW_FLAGS "${NEW_FLAGS}")
+ SET(NEW_FLAGS "${NEW_FLAGS} /RTC1 /RTCc")
+ ENDIF(CMAKE_BUILD_TYPE STREQUAL "Debug")
+
+ # *FORCE* to override whats already placed into the cache
+ SET(CMAKE_${TYPE}_FLAGS${CFG} "${NEW_FLAGS}" CACHE STRING
+ "CMAKE_${TYPE}_FLAGS${CFG} (overwritten for odbc)" FORCE)
+
+ #MESSAGE("New CMAKE_${TYPE}_FLAGS${CFG}: ${CMAKE_${TYPE}_FLAGS${CFG}}")
+ ENDFOREACH(CFG)
+ ENDFOREACH(TYPE)
+ENDIF(WIN32)
+#-----------------------------------------------------
+
SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_SOURCE_DIR}/bin")
SET(LIBRARY_OUTPUT_PATH "${CMAKE_SOURCE_DIR}/lib")
-ENABLE_TESTING()
-
ADD_SUBDIRECTORY(MYODBCDbg)
-ADD_SUBDIRECTORY(dltest)
-
+ADD_SUBDIRECTORY(util)
ADD_SUBDIRECTORY(driver)
-ADD_SUBDIRECTORY(util)
IF(NOT DISABLE_GUI)
ADD_SUBDIRECTORY(setup)
ENDIF(NOT DISABLE_GUI)
+ADD_SUBDIRECTORY(dltest)
ADD_SUBDIRECTORY(installer)
ADD_SUBDIRECTORY(monitor)
@@ -128,3 +162,4 @@
ENDIF(NOT DISABLE_GUI)
ADD_SUBDIRECTORY(test)
+
Modified: trunk/MYODBCDbg/MYODBCDbgLib/CMakeLists.txt
===================================================================
--- trunk/MYODBCDbg/MYODBCDbgLib/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/MYODBCDbg/MYODBCDbgLib/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -20,7 +20,7 @@
##########################################################################
-ADD_LIBRARY(MYODBCDbg MYODBCDbgConnectAttrString.c
+ADD_LIBRARY(MYODBCDbg STATIC MYODBCDbgConnectAttrString.c
MYODBCDbgConnectOptionString.c
MYODBCDbgDiagFieldString.c
MYODBCDbgEnvAttrString.c
Modified: trunk/cmake/FindMySQL.cmake
===================================================================
--- trunk/cmake/FindMySQL.cmake 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/cmake/FindMySQL.cmake 2007-07-12 18:28:56 UTC (rev 573)
@@ -23,7 +23,7 @@
#-------------- FIND MYSQL_INCLUDE_DIR ------------------
-find_path(MYSQL_INCLUDE_DIR mysql.h
+FIND_PATH(MYSQL_INCLUDE_DIR mysql.h
$ENV{MYSQL_INCLUDE_DIR}
$ENV{MYSQL_DIR}/include
/usr/include/mysql
@@ -36,7 +36,7 @@
$ENV{SystemDrive}/MySQL/*/include)
#----------------- FIND MYSQL_LIB_DIR -------------------
-IF (ODBC_WINDOWS)
+IF (WIN32)
# Set lib path suffixes
# dist = for mysql binary distributions
# build = for custom built tree
@@ -48,14 +48,14 @@
SET(libsuffixBuild Release)
ENDIF (CMAKE_BUILD_TYPE STREQUAL Debug)
- find_library(MYSQL_LIB NAMES mysqlclient
+ FIND_LIBRARY(MYSQL_LIB NAMES mysqlclient
PATHS
$ENV{MYSQL_DIR}/lib/${libsuffixDist}
$ENV{MYSQL_DIR}/client/${libsuffixBuild}
$ENV{ProgramFiles}/MySQL/*/lib/${libsuffixDist}
$ENV{SystemDrive}/MySQL/*/lib/${libsuffixDist})
-ELSE (ODBC_WINDOWS)
- find_library(MYSQL_LIB NAMES mysqlclient_r
+ELSE (WIN32)
+ FIND_LIBRARY(MYSQL_LIB NAMES mysqlclient_r
PATHS
$ENV{MYSQL_DIR}/libmysql_r/.libs
$ENV{MYSQL_DIR}/lib
@@ -66,7 +66,7 @@
/usr/local/mysql/lib/mysql
/opt/mysql/mysql/lib
/opt/mysql/mysql/lib/mysql)
-ENDIF (ODBC_WINDOWS)
+ENDIF (WIN32)
IF(MYSQL_LIB)
GET_FILENAME_COMPONENT(MYSQL_LIB_DIR ${MYSQL_LIB} PATH)
@@ -78,7 +78,8 @@
MESSAGE(STATUS "MySQL Include dir: ${MYSQL_INCLUDE_DIR} library dir: ${MYSQL_LIB_DIR}")
INCLUDE_DIRECTORIES(${MYSQL_INCLUDE_DIR})
- LINK_DIRECTORIES(${MYSQL_LIB_DIR})
+ LINK_DIRECTORIES(${MYSQL_LIB_DIR})
+ELSE (MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR)
+ MESSAGE(FATAL_ERROR "Cannot find MySQL. Include dir: ${MYSQL_INCLUDE_DIR} library dir:
${MYSQL_LIB_DIR}")
ENDIF (MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR)
-
Modified: trunk/dltest/CMakeLists.txt
===================================================================
--- trunk/dltest/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/dltest/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -19,12 +19,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##########################################################################
-IF(ODBC_WINDOWS)
- SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -MT")
-ENDIF(ODBC_WINDOWS)
ADD_EXECUTABLE(dltest dltest.c)
-IF(ODBC_UNIX)
+IF(NOT WIN32)
TARGET_LINK_LIBRARIES(dltest ltdl)
-ENDIF(ODBC_UNIX)
+ENDIF(NOT WIN32)
Modified: trunk/driver/CMakeLists.txt
===================================================================
--- trunk/driver/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/driver/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -20,59 +20,21 @@
##########################################################################
-INCLUDE_DIRECTORIES(/usr/local/mysql/include/mysql)
-
-IF(ODBC_WINDOWS)
- ADD_DEFINITIONS(-D__WIN__ -DENGLISH -DMYODBC_EXPORTS -D_USERDLL -DDONT_DEFINE_VOID)
- ADD_DEFINITIONS(-D_WIN32 -DWIN32 -D_WINDOWS -D__WIN__)
- STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
- STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
- SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:msvcrt")
-ENDIF(ODBC_WINDOWS)
-
-
SET(DRIVER_SRCS
catalog.c connect.c cursor.c dll.c error.c execute.c handle.c info.c myodbc3.c
- options.c prepare.c results.c transact.c utility.c
- ../util/MYODBCUtilAllocDataSource.c ../util/MYODBCUtilAllocDriver.c
- ../util/MYODBCUtilClearDataSource.c ../util/MYODBCUtilClearDriver.c
- ../util/MYODBCUtilDefaultDataSource.c ../util/MYODBCUtilDSNExists.c
- ../util/MYODBCUtilFreeDataSource.c ../util/MYODBCUtilFreeDriver.c
- ../util/MYODBCUtilGetDataSourceNames.c ../util/MYODBCUtilGetDriverNames.c
- ../util/MYODBCUtilGetIniFileName.c ../util/MYODBCUtilInsertStr.c
- ../util/MYODBCUtilReadConnectStr.c ../util/MYODBCUtilReadDataSource.c
- ../util/MYODBCUtilReadDataSourceStr.c ../util/MYODBCUtilReadDriver.c
- ../util/MYODBCUtilWriteConnectStr.c ../util/MYODBCUtilWriteDataSource.c
- ../util/MYODBCUtilWriteDataSourceStr.c ../util/MYODBCUtilWriteDriver.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgConnectAttrString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgConnectOptionString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgDiagFieldString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgEnvAttrString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgFunctionsString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgHandleTypeString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgInfoTypeString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgPosTypeString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgReturnString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgStmtAttrString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgStmtOptionString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgStmtTypeString.c
- ../MYODBCDbg/MYODBCDbgLib/MYODBCDbgTransactionTypeString.c)
+ options.c prepare.c results.c transact.c utility.c)
-IF(ODBC_WINDOWS)
+IF(WIN32)
SET(DRIVER_SRCS ${DRIVER_SRCS} myodbc3.def myodbc3.rc)
-ENDIF(ODBC_WINDOWS)
+ENDIF(WIN32)
ADD_LIBRARY(myodbc3 SHARED ${DRIVER_SRCS})
-IF(ODBC_UNIX)
- SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ODBC_LINK_FLAGS}")
- TARGET_LINK_LIBRARIES(myodbc3 ltdl mysqlclient_r)
- TARGET_LINK_LIBRARIES(myodbc3 myodbc3u)
-ENDIF(ODBC_UNIX)
+INSTALL(TARGETS myodbc3 DESTINATION lib)
-IF (ODBC_WINDOWS)
- TARGET_LINK_LIBRARIES(myodbc3 user32 advapi32 wsock32 odbc32 odbccp32 ws2_32 myodbc3u
- mysqlclient)
+IF(WIN32)
+ TARGET_LINK_LIBRARIES(myodbc3 user32 advapi32 wsock32 ws2_32 myodbc3u
+ mysqlclient ${ODBCLIB} ${ODBCINSTLIB})
FIND_LIBRARY(MYSQL_ZLIB zlib)
FIND_LIBRARY(MYSQL_YASSL yassl)
@@ -86,10 +48,9 @@
IF (MYSQL_TAOCRYPT)
TARGET_LINK_LIBRARIES(myodbc3 taocrypt)
ENDIF (MYSQL_TAOCRYPT)
+ELSE(WIN32)
+ SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ODBC_LINK_FLAGS}")
+ TARGET_LINK_LIBRARIES(myodbc3 ltdl mysqlclient_r)
+ TARGET_LINK_LIBRARIES(myodbc3 myodbc3u)
+ENDIF(WIN32)
-ENDIF (ODBC_WINDOWS)
-
-
-
-
-
Modified: trunk/dsn-editor/CMakeLists.txt
===================================================================
--- trunk/dsn-editor/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/dsn-editor/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -69,4 +69,4 @@
TARGET_LINK_LIBRARIES(myodbc3c user32)
ENDIF(ODBC_WINDOWS)
-TARGET_LINK_LIBRARIES(myodbc3c myodbc3u ${ODBCLIB} ${ODBCINSTLIB} ${QT_QTGUI_LIBRARY})
+TARGET_LINK_LIBRARIES(myodbc3c myodbc3u ${ODBCLIB} ${ODBCINSTLIB} ${QT_LIBRARIES})
Modified: trunk/installer/CMakeLists.txt
===================================================================
--- trunk/installer/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/installer/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -19,10 +19,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##########################################################################
+
ADD_EXECUTABLE(myodbc3i myodbc3i.c)
-TARGET_LINK_LIBRARIES(myodbc3i myodbc3u)
+TARGET_LINK_LIBRARIES(myodbc3i myodbc3u ${ODBCLIB} ${ODBCINSTLIB})
-IF (ODBC_UNIX)
- TARGET_LINK_LIBRARIES(myodbc3i myodbc3u ${ODBCLIB} ${ODBCINSTLIB} ltdl)
-ENDIF (ODBC_UNIX)
+INSTALL(TARGETS myodbc3i DESTINATION bin)
Modified: trunk/monitor/CMakeLists.txt
===================================================================
--- trunk/monitor/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/monitor/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -21,10 +21,4 @@
##########################################################################
ADD_EXECUTABLE(myodbc3m myodbc3m.c)
-IF(ODBC_WINDOWS OR ODBC_UNIX)
- TARGET_LINK_LIBRARIES(myodbc3m myodbc3u)
-ENDIF(ODBC_WINDOWS OR ODBC_UNIX)
-
-IF(ODBC_MAC OR ODBC_UNIX)
- TARGET_LINK_LIBRARIES(myodbc3m ${ODBCLIB} ${ODBCINSTLIB})
-ENDIF(ODBC_MAC OR ODBC_UNIX)
+TARGET_LINK_LIBRARIES(myodbc3m ${ODBCLIB} ${ODBCINSTLIB})
Modified: trunk/setup/CMakeLists.txt
===================================================================
--- trunk/setup/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/setup/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -21,7 +21,6 @@
##########################################################################
INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR})
-
SET(setup_SRCS
ConfigDSN.c
MYODBCSetupAssistText.cpp
@@ -46,9 +45,9 @@
MYODBCSetupLineEdit.cpp
myodbc3S.rc)
-IF(ODBC_WINDOWS)
+IF(WIN32)
SET(setup_SRCS ${setup_SRCS} myodbc3S.def)
-ENDIF(ODBC_WINDOWS)
+ENDIF(WIN32)
SET(MOC_SRCS
MYODBCSetupAssistText.h
@@ -71,9 +70,8 @@
ADD_LIBRARY(myodbc3S SHARED ${setup_SRCS})
-IF(ODBC_WINDOWS)
- TARGET_LINK_LIBRARIES(myodbc3S odbc32 odbccp32)
-ELSE(ODBC_WINDOWS)
- TARGET_LINK_LIBRARIES(myodbc3S ${ODBCLIB} ${ODBCINSTLIB})
-ENDIF(ODBC_WINDOWS)
+TARGET_LINK_LIBRARIES(myodbc3S
+ myodbc3u ${ODBCLIB} ${ODBCINSTLIB} ${QT_LIBRARIES})
+INSTALL(TARGETS myodbc3S DESTINATION lib)
+
Modified: trunk/test/CMakeLists.txt
===================================================================
--- trunk/test/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/test/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -1,88 +1,38 @@
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/test/include)
+# Copyright (C) 1995-2007 MySQL AB
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of version 2 of the GNU General Public License as
+# published by the Free Software Foundation.
+#
+# There are special exceptions to the terms and conditions of the GPL
+# as it is applied to this software. View the full text of the exception
+# in file LICENSE.exceptions in the top-level directory of this software
+# distribution.
+#
+# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-ADD_EXECUTABLE(my_basics my_basics.c)
-TARGET_LINK_LIBRARIES(my_basics myodbc3 myodbc3u mysqlclient)
+##########################################################################
-ADD_EXECUTABLE(my_blob my_blob.c)
-TARGET_LINK_LIBRARIES(my_blob myodbc3 myodbc3u mysqlclient)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/test/include)
-ADD_EXECUTABLE(my_bulk my_bulk.c)
-TARGET_LINK_LIBRARIES(my_bulk myodbc3 myodbc3u mysqlclient)
+# put the test exe's in test/
+SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_SOURCE_DIR}/test")
-ADD_EXECUTABLE(my_catalog my_catalog.c)
-TARGET_LINK_LIBRARIES(my_catalog myodbc3 myodbc3u mysqlclient)
+ENABLE_TESTING()
-ADD_EXECUTABLE(my_curext my_curext.c)
-TARGET_LINK_LIBRARIES(my_curext myodbc3 myodbc3u mysqlclient)
+FOREACH(T my_basics my_blob my_bulk my_catalog my_curext my_cursor
+ my_datetime my_dyn_cursor my_error my_info my_keys my_param
+ my_position my_prepare my_relative my_result my_scroll my_tran
+ my_types my_unixodbc my_use_result)
+ ADD_EXECUTABLE(${T} ${T}.c)
+ TARGET_LINK_LIBRARIES(${T} myodbc3 myodbc3u mysqlclient)
+ ADD_TEST(${T} ${EXECUTABLE_OUTPUT_PATH}/${T})
+ENDFOREACH(T)
-ADD_EXECUTABLE(my_cursor my_cursor.c)
-TARGET_LINK_LIBRARIES(my_cursor myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_datetime my_datetime.c)
-TARGET_LINK_LIBRARIES(my_datetime myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_dyn_cursor my_dyn_cursor.c)
-TARGET_LINK_LIBRARIES(my_dyn_cursor myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_error my_error.c)
-TARGET_LINK_LIBRARIES(my_error myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_info my_info.c)
-TARGET_LINK_LIBRARIES(my_info myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_keys my_keys.c)
-TARGET_LINK_LIBRARIES(my_keys myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_param my_param.c)
-TARGET_LINK_LIBRARIES(my_param myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_position my_position.c)
-TARGET_LINK_LIBRARIES(my_position myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_prepare my_prepare.c)
-TARGET_LINK_LIBRARIES(my_prepare myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_relative my_relative.c)
-TARGET_LINK_LIBRARIES(my_relative myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_result my_result.c)
-TARGET_LINK_LIBRARIES(my_result myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_scroll my_scroll.c)
-TARGET_LINK_LIBRARIES(my_scroll myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_tran my_tran.c)
-TARGET_LINK_LIBRARIES(my_tran myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_types my_types.c)
-TARGET_LINK_LIBRARIES(my_types myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_unixodbc my_unixodbc.c)
-TARGET_LINK_LIBRARIES(my_unixodbc myodbc3 myodbc3u mysqlclient)
-
-ADD_EXECUTABLE(my_use_result my_use_result.c)
-TARGET_LINK_LIBRARIES(my_use_result myodbc3 myodbc3u mysqlclient)
-
-#---------------- ADD TESTS --------------
-ENABLE_TESTING()
-ADD_TEST(my_use_result my_use_result)
-ADD_TEST(my_unixodbc my_unixodbc)
-ADD_TEST(my_types my_types)
-ADD_TEST(my_tran my_tran)
-ADD_TEST(my_scroll my_scroll)
-ADD_TEST(my_result my_result)
-ADD_TEST(my_relative my_relative)
-ADD_TEST(my_prepare my_prepare)
-ADD_TEST(my_position my_position)
-ADD_TEST(my_param my_param)
-ADD_TEST(my_keys my_keys)
-ADD_TEST(my_info my_info)
-ADD_TEST(my_error my_error)
-ADD_TEST(my_basics my_basics)
-ADD_TEST(my_blob my_blob)
-ADD_TEST(my_bulk my_bulk)
-ADD_TEST(my_catalog my_catalog)
-ADD_TEST(my_curext my_curext)
-ADD_TEST(my_cursor my_cursor)
-ADD_TEST(my_datetime my_datetime)
-ADD_TEST(my_dyn_cursor my_dyn_cursor)
Modified: trunk/util/CMakeLists.txt
===================================================================
--- trunk/util/CMakeLists.txt 2007-07-12 15:44:44 UTC (rev 572)
+++ trunk/util/CMakeLists.txt 2007-07-12 18:28:56 UTC (rev 573)
@@ -19,32 +19,27 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##########################################################################
-IF(ODBC_WINDOWS)
- SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -MT")
-ENDIF(ODBC_WINDOWS)
-ADD_LIBRARY(myodbc3u STATIC MYODBCUtilAllocDataSource.c
- MYODBCUtilAllocDriver.c
+ADD_LIBRARY(myodbc3u STATIC MYODBCUtilAllocDataSource.c
+ MYODBCUtilAllocDriver.c
MYODBCUtilClearDataSource.c
- MYODBCUtilClearDriver.c
- MYODBCUtilDefaultDataSource.c
+ MYODBCUtilClearDriver.c
+ MYODBCUtilDefaultDataSource.c
MYODBCUtilDSNExists.c
- MYODBCUtilFreeDataSource.c
+ MYODBCUtilFreeDataSource.c
MYODBCUtilFreeDriver.c
MYODBCUtilGetDataSourceNames.c
MYODBCUtilGetDriverNames.c
- MYODBCUtilInsertStr.c
+ MYODBCUtilGetIniFileName.c
+ MYODBCUtilInsertStr.c
MYODBCUtilReadConnectStr.c
- MYODBCUtilReadDataSource.c
+ MYODBCUtilReadDataSource.c
MYODBCUtilReadDataSourceStr.c
- MYODBCUtilReadDriver.c
+ MYODBCUtilReadDriver.c
MYODBCUtilWriteConnectStr.c
- MYODBCUtilWriteDataSource.c
+ MYODBCUtilWriteDataSource.c
MYODBCUtilWriteDataSourceStr.c
MYODBCUtilWriteDriver.c)
-IF(ODBC_WINDOWS)
- TARGET_LINK_LIBRARIES(myodbc3u odbc32.lib odbccp32.lib)
-ELSE(ODBC_WINDOWS)
- TARGET_LINK_LIBRARIES(myodbc3u ${ODBC_LINK_FLAGS})
-ENDIF(ODBC_WINDOWS)
+TARGET_LINK_LIBRARIES(myodbc3u ${ODBCINSTLIB})
+
| Thread |
|---|
| • Connector/ODBC 3.51 commit: r573 - in trunk: . MYODBCDbg/MYODBCDbgLib cmake dltest driver dsn-editor installer monitor setup test util | jbalint | 12 Jul |