forked from pool/mariadb-connector-c
- New upstream version 3.0.3 * Added support for new utf8mb4 character sets * MDEV-9059: Bundle first command with authentication packet * Build: support static OpenSSL on Windows * MDEV-14101: Add support for tls-version, via mysql_options(mysql, MARIADB_OPT_TLS_VERSION, value), where value must be "TLSv1.1", "TLSv1.2" or "TLSv1.3". * CONC-275: New indicator type STMT_INDICATOR_IGNORE_ROW for skipping particular parameter set in bulk operation (prepared statements). * MDEV-10361: Don't try to reconnect twice if mysql_ping failed. * Build fix for TSAN build with Clang * CONC-302: Fix output of mariadb_config * CONC-301: In case of a truncation the statement status was not updated correctly and further calls to mysql_stmt_fetch_column failed * MDEV-14647: Fixed crash when client receives extended ok packet with SESSION_TRACK_STATE_CHANGE information flag * CONC-297: setting MYSQL_OPT_LOCAL_INFILE failed on big endian systems. * MDEV-14514: mariadb_config returned wrong exit code when specifying an invalid option * MDEV-11546: Fixed timeout problem in Schannel * CONC-277: Allow reinitialization of the library if mysql_server_end() was called. * CONC-292: Fixed malloc result check in dynamic columns * MDEV-14165: The metadata length value for a column with a zerofill flag was calculated with a fixed length instead of using the reported length. * CONC-286: Force TLS/SSL usage if fingerprint parameters were OBS-URL: https://build.opensuse.org/request/show/598524 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb-connector-c?expand=0&rev=26
89 lines
3.3 KiB
Diff
89 lines
3.3 KiB
Diff
Author: Adam Majer <amajer@suse.de>
|
|
Date: Thu Mar 23 11:54:11 CET 2017
|
|
Summary: Build private symbols library
|
|
|
|
Some of the private symbols have very generic names and are required
|
|
by other connectors, like the ODBC connector. Instead of using
|
|
static linking, create a private shared library that simply
|
|
exports all symbols. With the exception of exported symbols, it is
|
|
identical to the regular library.
|
|
|
|
Index: mariadb-connector-c-3.0.3-src/libmariadb/CMakeLists.txt
|
|
===================================================================
|
|
--- mariadb-connector-c-3.0.3-src.orig/libmariadb/CMakeLists.txt
|
|
+++ mariadb-connector-c-3.0.3-src/libmariadb/CMakeLists.txt
|
|
@@ -391,16 +391,24 @@ IF(CMAKE_SIZEOF_VOID_P EQUAL 8 AND MSVC)
|
|
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES STATIC_LIBRARY_FLAGS "/machine:x64")
|
|
ENDIF()
|
|
|
|
+ADD_LIBRARY(libmariadbprivate SHARED ${libmariadb_RC} $<TARGET_OBJECTS:mariadb_obj> ${EMPTY_FILE} ${EXPORT_LINK})
|
|
+TARGET_LINK_LIBRARIES(libmariadbprivate ${SYSTEM_LIBS})
|
|
+IF(UNIX)
|
|
+ SET_TARGET_PROPERTIES(libmariadbprivate PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}")
|
|
+ENDIF()
|
|
+
|
|
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|
IF (NOT WITH_ASAN AND NOT WITH_TSAN)
|
|
TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
|
|
ENDIF()
|
|
TARGET_LINK_LIBRARIES (libmariadb "${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
|
|
+ TARGET_LINK_LIBRARIES (libmariadbprivate "-Wl,--no-undefined")
|
|
ENDIF()
|
|
|
|
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
|
|
SET_TARGET_PROPERTIES(libmariadb PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
|
|
|
|
+SET_TARGET_PROPERTIES(libmariadbprivate PROPERTIES PREFIX "")
|
|
SET_TARGET_PROPERTIES(libmariadb PROPERTIES PREFIX "")
|
|
|
|
SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION
|
|
@@ -434,6 +442,9 @@ INSTALL(TARGETS mariadbclient
|
|
INSTALL(TARGETS libmariadb
|
|
COMPONENT SharedLibraries
|
|
DESTINATION ${INSTALL_LIBDIR})
|
|
+INSTALL(TARGETS libmariadbprivate
|
|
+ COMPONENT SharedLibraries
|
|
+ DESTINATION ${INSTALL_LIBDIR})
|
|
|
|
IF(WIN32)
|
|
# On Windows, install PDB
|
|
Index: mariadb-connector-c-3.0.3-src/mariadb_config/mariadb_config.c.in
|
|
===================================================================
|
|
--- mariadb-connector-c-3.0.3-src.orig/mariadb_config/mariadb_config.c.in
|
|
+++ mariadb-connector-c-3.0.3-src/mariadb_config/mariadb_config.c.in
|
|
@@ -8,6 +8,8 @@ static char *mariadb_progname;
|
|
#define INCLUDE "-I@INSTALL_INCLUDEDIR@ -I@INSTALL_INCLUDEDIR@/mariadb"
|
|
#define LIBS "-L@INSTALL_LIBDIR@ -lmariadb "\
|
|
"@extra_dynamic_LDFLAGS@"
|
|
+#define PRIVATE_LIBS "-L@INSTALL_LIBDIR@ -lmariadbprivate " \
|
|
+ "@extra_dynamic_LDFLAGS@"
|
|
#define LIBS_SYS "@extra_dynamic_LDFLAGS@"
|
|
#define CFLAGS INCLUDE
|
|
#define VERSION "@MARIADB_CLIENT_VERSION@"
|
|
@@ -31,6 +33,7 @@ static struct option long_options[]=
|
|
{"port", no_argument, 0, 'i'},
|
|
{"plugindir", no_argument, 0, 'j'},
|
|
{"tlsinfo", no_argument, 0, 'k'},
|
|
+ {"privatelibs", no_argument, 0, 'm'},
|
|
{NULL, 0, 0, 0}
|
|
};
|
|
|
|
@@ -46,6 +49,7 @@ static const char *values[]=
|
|
CC_VERSION,
|
|
SOCKET,
|
|
PORT,
|
|
+ PRIVATE_LIBS,
|
|
PLUGIN_DIR,
|
|
TLS_LIBRARY_VERSION
|
|
};
|
|
@@ -116,6 +120,9 @@ int main(int argc, char **argv)
|
|
case 'l':
|
|
puts(LIBS_SYS);
|
|
break;
|
|
+ case 'm':
|
|
+ puts(PRIVATE_LIBS);
|
|
+ break;
|
|
default:
|
|
exit((c != -1));
|
|
}
|