grknight    14/08/20 18:52:50

  Added:                5.2.7-cxxlinkage.patch
                        5.2.7-mariadb-dynamic-array.patch
  Log:
  Fix build failures on >=dev-db/mariadb-10.0
  
  (Portage version: 2.2.12/cvs/Linux x86_64, signed Manifest commit with key 
67C78E1D)

Revision  Changes    Path
1.1                  dev-db/myodbc/files/5.2.7-cxxlinkage.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/myodbc/files/5.2.7-cxxlinkage.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/myodbc/files/5.2.7-cxxlinkage.patch?rev=1.1&content-type=text/plain

Index: 5.2.7-cxxlinkage.patch
===================================================================
diff -uarN mysql-connector-odbc-5.3.4-src.orig/cmake/FindMySQL.cmake 
mysql-connector-odbc-5.3.4-src/cmake/FindMySQL.cmake
--- mysql-connector-odbc-5.3.4-src.orig/cmake/FindMySQL.cmake   2014-06-18 
18:50:16.000000000 -0400
+++ mysql-connector-odbc-5.3.4-src/cmake/FindMySQL.cmake        2014-08-20 
10:05:00.191485304 -0400
@@ -105,16 +105,16 @@
   # Finally remove the dot
   STRING(REGEX REPLACE "[.]" "" MYSQL_NUM_VERSION "${MYSQL_NUM_VERSION}")
 
-  IF(MYSQL_CXX_LINKAGE OR MYSQL_NUM_VERSION GREATER 50603)
+  IF(MYSQL_CXX_LINKAGE)
     EXECUTE_PROCESS(COMMAND ${MYSQL_CONFIG_EXECUTABLE} "--cxxflags"
             OUTPUT_VARIABLE _mysql_config_output
             )
     SET(MYSQL_CXX_LINKAGE 1)
-  ELSE (MYSQL_CXX_LINKAGE OR MYSQL_NUM_VERSION GREATER 50603)
+  ELSE (MYSQL_CXX_LINKAGE)
     EXECUTE_PROCESS(COMMAND ${MYSQL_CONFIG_EXECUTABLE} "--cflags"
             OUTPUT_VARIABLE _mysql_config_output
             )
-  ENDIF(MYSQL_CXX_LINKAGE OR MYSQL_NUM_VERSION GREATER 50603)
+  ENDIF(MYSQL_CXX_LINKAGE)
 
   # Remove the stl4port dependency
   STRING(REGEX REPLACE "-library=stlport4" "" _mysql_config_output 
"${_mysql_config_output}")



1.1                  dev-db/myodbc/files/5.2.7-mariadb-dynamic-array.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/myodbc/files/5.2.7-mariadb-dynamic-array.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/myodbc/files/5.2.7-mariadb-dynamic-array.patch?rev=1.1&content-type=text/plain

Index: 5.2.7-mariadb-dynamic-array.patch
===================================================================
diff -aurN a/driver/catalog_no_i_s.c b/driver/catalog_no_i_s.c
--- a/driver/catalog_no_i_s.c   2014-06-18 18:50:16.000000000 -0400
+++ b/driver/catalog_no_i_s.c   2014-08-20 14:08:33.997339096 -0400
@@ -1093,7 +1093,11 @@
   unsigned long *lengths;
   SQLRETURN rc= SQL_SUCCESS;
 
+#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID > 100001
+  my_init_dynamic_array(&records, sizeof(MY_FOREIGN_KEY_FIELD), 0, 0, MYF(0));
+#else
   my_init_dynamic_array(&records, sizeof(MY_FOREIGN_KEY_FIELD), 0, 0);
+#endif
 
   /* Get the list of tables that match szCatalog and szTable */
   pthread_mutex_lock(&stmt->dbc->lock);
diff -aurN a/driver/desc.c b/driver/desc.c
--- a/driver/desc.c     2014-06-18 18:50:16.000000000 -0400
+++ b/driver/desc.c     2014-08-20 14:07:37.409169269 -0400
@@ -63,8 +63,12 @@
      but in desc_get_rec we manually get a pointer to it. This avoids
      having to call set_dynamic after modifying the DESCREC.
   */
+#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID > 100001
+  if (my_init_dynamic_array(&desc->records, sizeof(DESCREC), 0, 0, MYF(0)))
+#else
   if (my_init_dynamic_array(&desc->records, sizeof(DESCREC), 0, 0))
+#endif
   {
     x_free((char *)desc);
     return NULL;
   }
@@ -995,9 +1003,15 @@
 
   /* copy the records */
   delete_dynamic(&dest->records);
+#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID > 100001
+  if (my_init_dynamic_array(&dest->records, sizeof(DESCREC),
+                            src->records.max_element,
+                            src->records.alloc_increment, MYF(0)))
+#else
   if (my_init_dynamic_array(&dest->records, sizeof(DESCREC),
                             src->records.max_element,
                             src->records.alloc_increment))
+#endif
   {
     return set_desc_error(dest, "HY001",
               "Memory allocation error",
diff -aurN a/driver/handle.c b/driver/handle.c
--- a/driver/handle.c   2014-06-18 18:50:16.000000000 -0400
+++ b/driver/handle.c   2014-08-20 14:05:00.364248403 -0400
@@ -403,7 +403,11 @@
     }
   }
 
+#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID > 100001
+  my_init_dynamic_array(*param_bind, sizeof(MYSQL_BIND), elements, 10, MYF(0));
+#else
   my_init_dynamic_array(*param_bind, sizeof(MYSQL_BIND), elements, 10);
+#endif
   memset((*param_bind)->buffer, 0, sizeof(MYSQL_BIND) *
                                                                                
        (*param_bind)->max_element);
 
diff -aurN a/driver/parse.c b/driver/parse.c
--- a/driver/parse.c    2014-06-18 18:50:16.000000000 -0400
+++ b/driver/parse.c    2014-08-20 14:03:54.336383876 -0400
@@ -129,8 +129,13 @@
 
     /* TODO: Store offsets rather than ptrs. In this case we will be fine
        if work with copy of the originally parsed string */
+#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID > 100001
+    my_init_dynamic_array(&pq->token,     sizeof(uint), 20, 10, MYF(0));
+    my_init_dynamic_array(&pq->param_pos, sizeof(uint), 10, 10, MYF(0));
+#else
     my_init_dynamic_array(&pq->token,     sizeof(uint), 20, 10);
     my_init_dynamic_array(&pq->param_pos, sizeof(uint), 10, 10);
+#endif
   }
 
   return pq;




Reply via email to