mysqlconnector: initial import from CWS mysqlnative
This commit is contained in:
385
mysqlcppconn/mysql-connector-cpp.patch
Normal file
385
mysqlcppconn/mysql-connector-cpp.patch
Normal file
@@ -0,0 +1,385 @@
|
||||
--- misc/mysql-connector-cpp/cppconn/build_config.h 2009-08-13 17:13:46.000000000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/cppconn/build_config.h 2009-09-11 09:41:41.150391316 +0200
|
||||
@@ -1,36 +1,34 @@
|
||||
-/*
|
||||
- Copyright 2007 - 2008 MySQL AB, 2008 - 2009 Sun Microsystems, Inc. All rights reserved.
|
||||
-
|
||||
- The MySQL Connector/C++ is licensed under the terms of the GPL
|
||||
- <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>, like most
|
||||
- MySQL Connectors. There are special exceptions to the terms and
|
||||
- conditions of the GPL as it is applied to this software, see the
|
||||
- FLOSS License Exception
|
||||
- <http://www.mysql.com/about/legal/licensing/foss-exception.html>.
|
||||
-*/
|
||||
-
|
||||
-#ifndef _SQL_BUILD_CONFIG_H_
|
||||
-#define _SQL_BUILD_CONFIG_H_
|
||||
-
|
||||
-#ifndef CPPCONN_PUBLIC_FUNC
|
||||
-
|
||||
-#if defined(_WIN32)
|
||||
- // mysqlcppconn_EXPORTS is added by cmake and defined for dynamic lib build only
|
||||
- #ifdef mysqlcppconn_EXPORTS
|
||||
- #define CPPCONN_PUBLIC_FUNC __declspec(dllexport)
|
||||
- #else
|
||||
- // this is for static build
|
||||
- #ifdef CPPCONN_LIB_BUILD
|
||||
- #define CPPCONN_PUBLIC_FUNC
|
||||
- #else
|
||||
- // this is for clients using dynamic lib
|
||||
- #define CPPCONN_PUBLIC_FUNC __declspec(dllimport)
|
||||
- #endif
|
||||
- #endif
|
||||
-#else
|
||||
- #define CPPCONN_PUBLIC_FUNC
|
||||
-#endif
|
||||
-
|
||||
-#endif //#ifndef CPPCONN_PUBLIC_FUNC
|
||||
-
|
||||
-#endif //#ifndef _SQL_BUILD_CONFIG_H_
|
||||
+/*
|
||||
+ Copyright 2007 - 2008 MySQL AB, 2008 - 2009 Sun Microsystems, Inc. All rights reserved.
|
||||
+
|
||||
+ The MySQL Connector/C++ is licensed under the terms of the GPL
|
||||
+ <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>, like most
|
||||
+ MySQL Connectors. There are special exceptions to the terms and
|
||||
+ conditions of the GPL as it is applied to this software, see the
|
||||
+ FLOSS License Exception
|
||||
+ <http://www.mysql.com/about/legal/licensing/foss-exception.html>.
|
||||
+*/
|
||||
+
|
||||
+#ifndef _SQL_BUILD_CONFIG_H_
|
||||
+#define _SQL_BUILD_CONFIG_H_
|
||||
+
|
||||
+#ifndef _SAL_TYPES_H_
|
||||
+#include <sal/types.h>
|
||||
+#endif
|
||||
+
|
||||
+ // mysqlcppconn_EXPORTS is added by cmake and defined for dynamic lib build only
|
||||
+ #ifdef mysqlcppconn_EXPORTS
|
||||
+ #define CPPCONN_PUBLIC_FUNC SAL_DLLPUBLIC_EXPORT
|
||||
+ #else
|
||||
+ // this is for static build
|
||||
+ #ifdef CPPCONN_LIB_BUILD
|
||||
+ #define CPPCONN_PUBLIC_FUNC
|
||||
+ #else
|
||||
+ // this is for clients using dynamic lib
|
||||
+ #define CPPCONN_PUBLIC_FUNC SAL_DLLPUBLIC_IMPORT
|
||||
+ #endif
|
||||
+ #endif
|
||||
+
|
||||
+ #define CPPCONN_PUBLIC_EXCEPTION SAL_EXCEPTION_DLLPUBLIC_EXPORT
|
||||
+
|
||||
+#endif //#ifndef _SQL_BUILD_CONFIG_H_
|
||||
--- misc/mysql-connector-cpp/cppconn/config.h 2009-08-14 10:17:38.234375000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/cppconn/config.h 2009-08-14 09:56:37.000000000 +0200
|
||||
@@ -1 +1,34 @@
|
||||
-dummy
|
||||
+#include <sal/types.h>
|
||||
+
|
||||
+#define HAVE_FUNCTION_STRTOL 1
|
||||
+#define HAVE_FUNCTION_STRTOUL 1
|
||||
+#define HAVE_FUNCTION_STRTOL 1
|
||||
+#define HAVE_FUNCTION_STRTOULL 1
|
||||
+
|
||||
+#if defined(MACOSX) || defined(SOLARIS) || defined(LINUX)
|
||||
+ #define HAVE_STDINT_H
|
||||
+ #define HAVE_INTTYPES_H
|
||||
+#endif
|
||||
+
|
||||
+#ifdef HAVE_STDINT_H
|
||||
+#include <stdint.h>
|
||||
+#endif
|
||||
+
|
||||
+#ifdef HAVE_INTTYPES_H
|
||||
+#include <inttypes.h>
|
||||
+#endif
|
||||
+
|
||||
+#if !defined(HAVE_STDINT_H) && !defined(HAVE_INTTYPES_H)
|
||||
+
|
||||
+// if we do not have the standard C99 integer types, then define them based on the respective SAL types
|
||||
+#if !defined(_SYS_TYPES_H)
|
||||
+typedef sal_Int8 int8_t;
|
||||
+typedef sal_Int16 int16_t;
|
||||
+typedef sal_Int32 int32_t;
|
||||
+#endif // !defined(_SYS_TYPES_H)
|
||||
+typedef sal_uInt8 uint8_t;
|
||||
+typedef sal_uInt16 uint16_t;
|
||||
+typedef sal_uInt32 uint32_t;
|
||||
+typedef sal_Int64 int64_t;
|
||||
+typedef sal_uInt64 uint64_t;
|
||||
+#endif // !defined(HAVE_STDINT_H) && !defined(HAVE_INTTYPES_H)
|
||||
--- misc/mysql-connector-cpp/cppconn/connection.h 2009-08-13 17:13:46.000000000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/cppconn/connection.h 2009-08-14 09:56:37.000000000 +0200
|
||||
@@ -13,7 +13,6 @@
|
||||
#define _SQL_CONNECTION_H_
|
||||
|
||||
#include <map>
|
||||
-#include <boost/variant.hpp>
|
||||
|
||||
#include "build_config.h"
|
||||
#include "warning.h"
|
||||
@@ -22,8 +21,54 @@
|
||||
namespace sql
|
||||
{
|
||||
|
||||
-
|
||||
-typedef boost::variant<int, double, bool, sql::SQLString > ConnectPropertyVal;
|
||||
+// hack around the non-existent ::boost::variant in OOo 3.1 build env
|
||||
+struct ConnectPropertyVal
|
||||
+{
|
||||
+ sql::SQLString valString;
|
||||
+ int valInt;
|
||||
+ bool valBool;
|
||||
+
|
||||
+ ConnectPropertyVal()
|
||||
+ {
|
||||
+ reset();
|
||||
+ }
|
||||
+ ConnectPropertyVal( const sql::SQLString& _val )
|
||||
+ {
|
||||
+ *this = _val;
|
||||
+ }
|
||||
+ ConnectPropertyVal( const int _val )
|
||||
+ {
|
||||
+ *this = _val;
|
||||
+ }
|
||||
+ ConnectPropertyVal( const bool _val )
|
||||
+ {
|
||||
+ *this = _val;
|
||||
+ }
|
||||
+ ConnectPropertyVal& operator=( const sql::SQLString& _val )
|
||||
+ {
|
||||
+ reset();
|
||||
+ valString = _val;
|
||||
+ return *this;
|
||||
+ }
|
||||
+ ConnectPropertyVal& operator=( const int _val )
|
||||
+ {
|
||||
+ reset();
|
||||
+ valInt = _val;
|
||||
+ return *this;
|
||||
+ }
|
||||
+ ConnectPropertyVal& operator=( const bool _val )
|
||||
+ {
|
||||
+ reset();
|
||||
+ valBool = _val;
|
||||
+ return *this;
|
||||
+ }
|
||||
+ void reset()
|
||||
+ {
|
||||
+ valString = std::string();
|
||||
+ valInt = 0;
|
||||
+ valBool = false;
|
||||
+ }
|
||||
+};
|
||||
|
||||
typedef std::map< sql::SQLString, ConnectPropertyVal > ConnectOptionsMap;
|
||||
|
||||
--- misc/mysql-connector-cpp/cppconn/exception.h 2009-08-20 17:51:23.000000000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/cppconn/exception.h 2009-09-11 09:41:41.076379817 +0200
|
||||
@@ -37,7 +37,7 @@
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 4275)
|
||||
#endif
|
||||
-class CPPCONN_PUBLIC_FUNC SQLException : public std::runtime_error
|
||||
+class CPPCONN_PUBLIC_EXCEPTION SQLException : public std::runtime_error
|
||||
{
|
||||
#ifdef _WIN32
|
||||
#pragma warning(pop)
|
||||
@@ -83,26 +83,26 @@
|
||||
MEMORY_ALLOC_OPERATORS(SQLException)
|
||||
};
|
||||
|
||||
-struct CPPCONN_PUBLIC_FUNC MethodNotImplementedException : public SQLException
|
||||
+struct CPPCONN_PUBLIC_EXCEPTION MethodNotImplementedException : public SQLException
|
||||
{
|
||||
MethodNotImplementedException(const MethodNotImplementedException& e) : SQLException(e.what(), e.sql_state, e.errNo) { }
|
||||
MethodNotImplementedException(const std::string& reason) : SQLException(reason, "", 0) {}
|
||||
};
|
||||
|
||||
-struct CPPCONN_PUBLIC_FUNC InvalidArgumentException : public SQLException
|
||||
+struct CPPCONN_PUBLIC_EXCEPTION InvalidArgumentException : public SQLException
|
||||
{
|
||||
InvalidArgumentException(const InvalidArgumentException& e) : SQLException(e.what(), e.sql_state, e.errNo) { }
|
||||
InvalidArgumentException(const std::string& reason) : SQLException(reason, "", 0) {}
|
||||
};
|
||||
|
||||
-struct CPPCONN_PUBLIC_FUNC InvalidInstanceException : public SQLException
|
||||
+struct CPPCONN_PUBLIC_EXCEPTION InvalidInstanceException : public SQLException
|
||||
{
|
||||
InvalidInstanceException(const InvalidInstanceException& e) : SQLException(e.what(), e.sql_state, e.errNo) { }
|
||||
InvalidInstanceException(const std::string& reason) : SQLException(reason, "", 0) {}
|
||||
};
|
||||
|
||||
|
||||
-struct CPPCONN_PUBLIC_FUNC NonScrollableException : public SQLException
|
||||
+struct CPPCONN_PUBLIC_EXCEPTION NonScrollableException : public SQLException
|
||||
{
|
||||
NonScrollableException(const NonScrollableException& e) : SQLException(e.what(), e.sql_state, e.errNo) { }
|
||||
NonScrollableException(const std::string& reason) : SQLException(reason, "", 0) {}
|
||||
--- misc/mysql-connector-cpp/driver/makefile.mk 2009-09-11 09:42:34.087202551 +0200
|
||||
+++ misc/build/mysql-connector-cpp/driver/makefile.mk 2009-09-11 09:42:25.902286382 +0200
|
||||
@@ -1 +1,64 @@
|
||||
-dummy
|
||||
+PRJ=..$/..$/..$/..$/..
|
||||
+
|
||||
+.INCLUDE : $(PRJ)$/cppconn_config.pmk
|
||||
+
|
||||
+PRJINC=..
|
||||
+TARGET=$(PRJNAME)
|
||||
+
|
||||
+# --- Settings -----------------------------------------------------
|
||||
+
|
||||
+.INCLUDE : settings.mk
|
||||
+
|
||||
+.INCLUDE : $(PRJ)$/mysql_config.pmk
|
||||
+
|
||||
+# --- Files --------------------------------------------------------
|
||||
+
|
||||
+.IF "$(GUI)-$(OS)-$(RTL_ARCH)" == "UNX-LINUX-x86"
|
||||
+ SHL1NOCHECK=TRUE
|
||||
+.ENDIF
|
||||
+SHL1TARGET=$(TARGET)
|
||||
+
|
||||
+LIB1TARGET=$(SLB)$/$(PRJNAME).lib
|
||||
+LIB1OBJFILES+= \
|
||||
+ $(SLO)$/mysql_art_resultset.obj \
|
||||
+ $(SLO)$/mysql_art_rset_metadata.obj \
|
||||
+ $(SLO)$/mysql_connection.obj \
|
||||
+ $(SLO)$/mysql_debug.obj \
|
||||
+ $(SLO)$/mysql_driver.obj \
|
||||
+ $(SLO)$/mysql_metadata.obj \
|
||||
+ $(SLO)$/mysql_parameter_metadata.obj \
|
||||
+ $(SLO)$/mysql_prepared_statement.obj \
|
||||
+ $(SLO)$/mysql_ps_resultset.obj \
|
||||
+ $(SLO)$/mysql_ps_resultset_metadata.obj \
|
||||
+ $(SLO)$/mysql_resultbind.obj \
|
||||
+ $(SLO)$/mysql_resultset.obj \
|
||||
+ $(SLO)$/mysql_resultset_metadata.obj \
|
||||
+ $(SLO)$/mysql_statement.obj \
|
||||
+ $(SLO)$/mysql_util.obj \
|
||||
+ $(SLO)$/mysql_warning.obj \
|
||||
+
|
||||
+SHL1STDLIBS=\
|
||||
+ $(MYSQL_LIB)
|
||||
+
|
||||
+SHL1RPATH=OXT
|
||||
+SHL1IMPLIB= i$(TARGET)
|
||||
+SHL1LIBS= $(LIB1TARGET) $(SLB)$/$(CPPCONN_NATIVEAPI).lib
|
||||
+SHL1DEF= $(MISC)$/$(SHL1TARGET).def
|
||||
+DEF1NAME= $(SHL1TARGET)
|
||||
+DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt \
|
||||
+ $(LIB1TARGET)
|
||||
+DEFLIB1NAME=$(TARGET)
|
||||
+
|
||||
+# --- Targets ------------------------------------------------------
|
||||
+
|
||||
+.INCLUDE : target.mk
|
||||
+
|
||||
+# --- filter file ------------------------------
|
||||
+
|
||||
+.IF "$(depend)"==""
|
||||
+$(MISC)$/$(SHL1TARGET).flt: makefile.mk
|
||||
+ @echo CLEAR_THE_FILE > $@
|
||||
+ @echo _TI >>$@
|
||||
+ @echo _real >>$@
|
||||
+ @echo __CT >>$@
|
||||
+.ENDIF # "$(depend)"==""
|
||||
--- misc/mysql-connector-cpp/driver/mysql_connection.cpp 2009-08-13 17:13:46.000000000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/driver/mysql_connection.cpp 2009-08-14 09:56:37.015625000 +0200
|
||||
@@ -50,6 +50,34 @@
|
||||
#include "mysql_debug.h"
|
||||
|
||||
|
||||
+// part II of the hack to make C/C++ compile in an OOo env which doesn't have boost::variant installed
|
||||
+namespace boost
|
||||
+{
|
||||
+ template < class TYPE >
|
||||
+ const TYPE* get( const sql::ConnectPropertyVal* val )
|
||||
+ {
|
||||
+ return val;
|
||||
+ }
|
||||
+
|
||||
+ template < >
|
||||
+ const sql::SQLString* get< sql::SQLString >( const sql::ConnectPropertyVal* val )
|
||||
+ {
|
||||
+ return &val->valString;
|
||||
+ }
|
||||
+
|
||||
+ template < >
|
||||
+ const int* get< int >( const sql::ConnectPropertyVal* val )
|
||||
+ {
|
||||
+ return &val->valInt;
|
||||
+ }
|
||||
+
|
||||
+ template < >
|
||||
+ const bool* get< bool >( const sql::ConnectPropertyVal* val )
|
||||
+ {
|
||||
+ return &val->valBool;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
namespace sql
|
||||
{
|
||||
namespace mysql
|
||||
--- misc/mysql-connector-cpp/driver/mysql_debug.h 2009-08-13 17:13:46.000000000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/driver/mysql_debug.h 2009-08-14 09:56:37.015625000 +0200
|
||||
@@ -25,16 +25,6 @@
|
||||
|
||||
|
||||
|
||||
-#if defined(WE_HAVE_VARARGS_MACRO_SUPPORT) && (CPPCONN_TRACE_ENABLED || defined(SAL_DLLPRIVATE))
|
||||
- #define CPP_ENTER(msg) const boost::shared_ptr< MySQL_DebugLogger > __l = this->logger;(void)__l;\
|
||||
- MySQL_DebugEnterEvent __this_func(__LINE__, __FILE__, msg, this->logger)
|
||||
- #define CPP_ENTER_WL(l, msg) const boost::shared_ptr< MySQL_DebugLogger > __l = (l);(void)__l;\
|
||||
- MySQL_DebugEnterEvent __this_func(__LINE__, __FILE__, msg, (l))
|
||||
- #define CPP_INFO(msg) {if (__l) __l->log("INF", msg); }
|
||||
- #define CPP_INFO_FMT(...) {if (__l) __l->log_va("INF", __VA_ARGS__); }
|
||||
- #define CPP_ERR(msg) {if (__l) __l->log("ERR", msg); }
|
||||
- #define CPP_ERR_FMT(...) {if (__l) __l->log_va("ERR", __VA_ARGS__); }
|
||||
-#else
|
||||
#define CPP_ENTER(msg)
|
||||
#define CPP_ENTER_WL(l, msg)
|
||||
#define CPP_INFO(msg)
|
||||
@@ -42,7 +32,6 @@
|
||||
#define CPP_ENTER_WL(l, msg)
|
||||
static inline void CPP_INFO_FMT(...) {}
|
||||
static inline void CPP_ERR_FMT(...) {}
|
||||
-#endif
|
||||
|
||||
#include <stack>
|
||||
#include "mysql_util.h"
|
||||
--- misc/mysql-connector-cpp/driver/nativeapi/binding_config.h 2009-08-14 10:17:23.640625000 +0200
|
||||
+++ misc/build/mysql-connector-cpp/driver/nativeapi/binding_config.h 2009-08-14 10:13:50.359375000 +0200
|
||||
@@ -1 +1,2 @@
|
||||
-dummy
|
||||
+#define HAVE_DLFCN_H 1
|
||||
+//#define MYSQLCLIENT_STATIC_BINDING 1
|
||||
--- misc/mysql-connector-cpp/driver/nativeapi/makefile.mk 2009-08-17 21:32:53.694119382 +0200
|
||||
+++ misc/build/mysql-connector-cpp/driver/nativeapi/makefile.mk 2009-08-17 21:32:50.534346360 +0200
|
||||
@@ -1 +1,23 @@
|
||||
-dummy
|
||||
+PRJ=..$/..$/..$/..$/..$/..
|
||||
+PRJINC=..$/..
|
||||
+
|
||||
+.INCLUDE : $(PRJ)$/cppconn_config.pmk
|
||||
+
|
||||
+TARGET=$(CPPCONN_NATIVEAPI)
|
||||
+
|
||||
+# --- Settings -----------------------------------------------------
|
||||
+
|
||||
+.INCLUDE : settings.mk
|
||||
+
|
||||
+.INCLUDE : $(PRJ)$/mysql_config.pmk
|
||||
+
|
||||
+LIB1TARGET=$(SLB)$/$(TARGET).lib
|
||||
+LIB1OBJFILES+= \
|
||||
+ $(SLO)$/mysql_client_api.obj \
|
||||
+ $(SLO)$/library_loader.obj \
|
||||
+ $(SLO)$/mysql_native_connection_wrapper.obj \
|
||||
+ $(SLO)$/mysql_native_resultset_wrapper.obj \
|
||||
+ $(SLO)$/mysql_native_statement_wrapper.obj \
|
||||
+
|
||||
+# --- Targets ------------------------------------------------------
|
||||
+.INCLUDE : target.mk
|
Reference in New Issue
Block a user