Accepting request 482195 from home:adamm:branches:server:database
Initial package of MariaDB Connector/C This package is required for other connectors, like MariaDB Connector/ODBC OBS-URL: https://build.opensuse.org/request/show/482195 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb-connector-c?expand=0&rev=1
This commit is contained in:
commit
3f4e62bc91
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
41
absolute_path_fix.patch
Normal file
41
absolute_path_fix.patch
Normal file
@ -0,0 +1,41 @@
|
||||
Author: Adam Majer <amajer@suse.de>
|
||||
Date: Fri Mar 3 15:59:09 CET 2017
|
||||
Summary: Remove pure ugliness with paths
|
||||
|
||||
Index: mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/mariadb_config/mariadb_config.c.in
|
||||
+++ mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in
|
||||
@@ -3,12 +3,12 @@
|
||||
#include <getopt.h>
|
||||
#include <stdio.h>
|
||||
|
||||
-#define INCLUDE "-I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/mysql"
|
||||
-#define LIBS "-L@PREFIX_INSTALL_DIR@/@LIB_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -lmariadb" \
|
||||
+#define INCLUDE "-I@INCLUDE_INSTALL_DIR@ -I@INCLUDE_INSTALL_DIR@/mariadb"
|
||||
+#define LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadb" \
|
||||
"@extra_dynamic_LDFLAGS@"
|
||||
#define CFLAGS INCLUDE " @CMAKE_C_FLAGS@"
|
||||
#define VERSION "@MYSQL_CLIENT_VERSION@"
|
||||
-#define PLUGIN_DIR "@PREFIX_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/@PLUGIN_INSTALL_DIR@"
|
||||
+#define PLUGIN_DIR "@PLUGIN_INSTALL_DIR@"
|
||||
#define SOCKET "@MYSQL_UNIX_ADDR@"
|
||||
#define PORT "@MYSQL_PORT@"
|
||||
|
||||
Index: mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/libmariadb/CMakeLists.txt
|
||||
+++ mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt
|
||||
@@ -430,9 +430,9 @@ ENDIF()
|
||||
|
||||
INSTALL(TARGETS
|
||||
libmariadb mariadbclient
|
||||
- RUNTIME DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}"
|
||||
- LIBRARY DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}"
|
||||
- ARCHIVE DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}")
|
||||
+ RUNTIME DESTINATION "${LIB_INSTALL_DIR}"
|
||||
+ LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
|
||||
+ ARCHIVE DESTINATION "${LIB_INSTALL_DIR}")
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include/
|
||||
DESTINATION ${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR})
|
25
bigendian_type_fixes.patch
Normal file
25
bigendian_type_fixes.patch
Normal file
@ -0,0 +1,25 @@
|
||||
Author: Adam Majer <amajer@suse.de>
|
||||
Date: Fri Mar 3 14:57:53 CET 2017
|
||||
Summary: Fix build failure on Big Endien machines
|
||||
|
||||
include/my_global.h:930:31: warning: dereferencing 'void *' pointer [enabled by default]
|
||||
*((T)+2)=(char) ((uchar *) &A)[1];\
|
||||
^
|
||||
libmariadb/my_stmt_codec.c:361:7: note: in expansion of macro 'float4store'
|
||||
float4store(r_param->buffer, fval);
|
||||
^
|
||||
libmariadb/my_stmt_codec.c:361:7: error: invalid use of void expression
|
||||
|
||||
Index: mariadb-connector-c-2.3.2-src/libmariadb/my_stmt_codec.c
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/libmariadb/my_stmt_codec.c
|
||||
+++ mariadb-connector-c-2.3.2-src/libmariadb/my_stmt_codec.c
|
||||
@@ -358,7 +358,7 @@ static void convert_from_long(MYSQL_BIND
|
||||
{
|
||||
float fval;
|
||||
fval= is_unsigned ? (float)(ulonglong)(val) : (float)val;
|
||||
- float4store(r_param->buffer, fval);
|
||||
+ float4store((uchar *)r_param->buffer, fval);
|
||||
*r_param->error= is_unsigned ? (ulonglong)fval != (ulonglong)val : (longlong)fval != val;
|
||||
r_param->buffer_length= 4;
|
||||
}
|
12
mariadb-connector-c-2.3.1_unresolved_symbols.patch
Normal file
12
mariadb-connector-c-2.3.1_unresolved_symbols.patch
Normal file
@ -0,0 +1,12 @@
|
||||
Index: mariadb-connector-c-2.3.1/plugins/auth/CMakeLists.txt
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.1.orig/plugins/auth/CMakeLists.txt
|
||||
+++ mariadb-connector-c-2.3.1/plugins/auth/CMakeLists.txt
|
||||
@@ -11,6 +11,7 @@ IF(WIN32)
|
||||
SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def)
|
||||
ENDIF()
|
||||
ADD_LIBRARY(dialog SHARED ${dialog_RC} ${DIALOG_SOURCES})
|
||||
+TARGET_LINK_LIBRARIES(dialog dl)
|
||||
SET_TARGET_PROPERTIES(dialog PROPERTIES PREFIX "")
|
||||
SIGN_TARGET(dialog)
|
||||
|
3
mariadb-connector-c-2.3.2-src.tar.gz
Normal file
3
mariadb-connector-c-2.3.2-src.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4063c8655dc37608d4eade981e25b76f67f5d36e8426dc7f20d59e48ebba628a
|
||||
size 538172
|
11
mariadb-connector-c-2.3.2-src.tar.gz.asc
Normal file
11
mariadb-connector-c-2.3.2-src.tar.gz.asc
Normal file
@ -0,0 +1,11 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2
|
||||
|
||||
iQEcBAABCAAGBQJYfrGoAAoJEM4aPdXjyU9J1U0H/0U+qBNVoVTSXh++rWofQ2Mq
|
||||
aC0qtyRe2eZ9ybuW2qRntDgix8tv8xY9edjMPI8huZqEKKyNCa+KkC2z5vdduRo9
|
||||
KpWqzAGuTGrHfiSFFx8uYa7DJMz++rApNsPVclCV5l/KqYpDHnjP1nvjBDAkksj9
|
||||
570DhN+lfW4jPb6YU8cZ21k1k6oJTi/tXaxletrXeu8erab2Srf17LbNCXV4fMid
|
||||
u+LfDfqCJ0XsUobEDnxMYpNGOhv8ZEqQh6mdIbND4alqS8ty5vcvWAJtRXaMjhaA
|
||||
nOscbaWlWnuy0e0lZXCHd7hZFdSpQNGYfIOJ1uizjhXKYUZo9vE4lNqIE4sWbF4=
|
||||
=ZhvH
|
||||
-----END PGP SIGNATURE-----
|
34
mariadb-connector-c.changes
Normal file
34
mariadb-connector-c.changes
Normal file
@ -0,0 +1,34 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 23 10:56:02 UTC 2017 - adam.majer@suse.de
|
||||
|
||||
- Update to version 2.3.2
|
||||
* Plugin API interface change: Changed the interface of
|
||||
authentication plugins, allowing plugins from C/C 3.0
|
||||
(like GSSAPI/Kerberos plugin)
|
||||
* CONC-205: Any field going after a TEXT field in the selecion
|
||||
list is fetched incorrectly (prepared statements)
|
||||
* CONC-198: Can't use more than one statement per connection
|
||||
* CONC-223: Add client support for missing collations
|
||||
* MDEV-10894: big endian conversion
|
||||
* fixed packet_length in dialog plugin
|
||||
* fixed include of my_stmt.h
|
||||
* fixed wrong behavior of read_timeout
|
||||
* fixed timeout for non-blocking operations
|
||||
* fixed output for plugindir in mariadb_config
|
||||
* removed extra check for non binary result types in fetch_bin
|
||||
(prepared statements)
|
||||
- mariadb.keyring: add MariaDB Enterprise signing key
|
||||
- bigendian_type_fixes.patch: fix build failure on Big endien
|
||||
- absolute_path_fix.patch:
|
||||
* remove ugly paths in mariadb_config
|
||||
* list correct include paths
|
||||
- private_library.patch: shared library with exported private
|
||||
symbols in place of a static library
|
||||
- mariadb-connector-c-2.3.1_unresolved_symbols.patch: add missing
|
||||
library to link requirements.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 22 14:57:06 UTC 2016 - mrueckert@suse.de
|
||||
|
||||
- initial package
|
||||
|
142
mariadb-connector-c.spec
Normal file
142
mariadb-connector-c.spec
Normal file
@ -0,0 +1,142 @@
|
||||
#
|
||||
# spec file for package mariadb-connector-c
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
%bcond_with sqlite3
|
||||
%define sover 2
|
||||
%define libname libmariadb
|
||||
|
||||
Name: mariadb-connector-c
|
||||
Version: 2.3.2
|
||||
Release: 0
|
||||
License: LGPL-2.1+
|
||||
Summary: MariaDB Connector/C
|
||||
Url: https://github.com/MariaDB/mariadb-connector-c
|
||||
Group: Development/Libraries/C and C++
|
||||
Source: https://downloads.mariadb.com/Connectors/c/connector-c-2.3.2/%{name}-%{version}-src.tar.gz
|
||||
Source1: https://downloads.mariadb.com/Connectors/c/connector-c-2.3.2/%{name}-%{version}-src.tar.gz.asc
|
||||
# Imported from keyserver based on keyid @ https://mariadb.com/kb/en/mariadb-enterprise/mariadb-enterprise-installation-guide/
|
||||
Source2: mariadb.keyring
|
||||
Patch1: mariadb-connector-c-2.3.1_unresolved_symbols.patch
|
||||
Patch2: bigendian_type_fixes.patch
|
||||
Patch3: absolute_path_fix.patch
|
||||
Patch4: private_library.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: cmake
|
||||
BuildRequires: curl-devel
|
||||
BuildRequires: pkgconfig(gnutls)
|
||||
BuildRequires: pkgconfig(krb5)
|
||||
BuildRequires: pkgconfig(krb5-gssapi)
|
||||
BuildRequires: pkgconfig(openssl)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
%if %{with sqlite3}
|
||||
BuildRequires: sqlite3-devel
|
||||
%endif
|
||||
|
||||
%description
|
||||
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.
|
||||
|
||||
%package -n %{libname}%{sover}
|
||||
Group: Development/Libraries/C and C++
|
||||
Summary: MariaDB Connector/C
|
||||
|
||||
%description -n %{libname}%{sover}
|
||||
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.
|
||||
|
||||
This package holds the runtime components.
|
||||
|
||||
%package -n %{libname}_plugins
|
||||
Group: Development/Libraries/C and C++
|
||||
Summary: MariaDB Connector/C
|
||||
|
||||
%description -n %{libname}_plugins
|
||||
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.
|
||||
|
||||
This package holds MariaDB library plugins.
|
||||
|
||||
%package -n %{libname}private
|
||||
Group: Development/Libraries/C and C++
|
||||
Summary: MariaDB Connector/C
|
||||
|
||||
%description -n %{libname}private
|
||||
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.
|
||||
|
||||
This package holds the runtime components with private API.
|
||||
|
||||
%package -n %{libname}-devel
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{libname}%{sover} = %{version}
|
||||
Requires: pkgconfig(openssl)
|
||||
#
|
||||
Summary: Development files for MariaDB Connector/C
|
||||
%description -n %{libname}-devel
|
||||
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.
|
||||
|
||||
This package holds the development files.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}-src
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
|
||||
%build
|
||||
%cmake \
|
||||
%if %{with sqlite3}
|
||||
-DWITH_SQLITE:BOOL=ON \
|
||||
%endif
|
||||
-DWITH_EXTERNAL_ZLIB:BOOL=ON \
|
||||
-DPLUGIN_INSTALL_DIR:STRING=%{_libdir}/mariadb/plugin/
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
rm %{buildroot}%{_includedir}/mariadb/CMakeLists.txt \
|
||||
%{buildroot}%{_includedir}/mariadb/*.am
|
||||
|
||||
rm %{buildroot}%{_libdir}/mariadb/*.a
|
||||
rm %{buildroot}%{_libdir}/*.a
|
||||
|
||||
%files -n %{libname}%{sover}
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libmariadb.so.%{sover}
|
||||
|
||||
%files -n %{libname}_plugins
|
||||
%dir %{_libdir}/mariadb/
|
||||
%dir %{_libdir}/mariadb/plugin/
|
||||
%{_libdir}/mariadb/plugin/dialog.so
|
||||
%{_libdir}/mariadb/plugin/mysql_clear_password.so
|
||||
|
||||
%files -n %{libname}private
|
||||
%{_libdir}/libmariadbprivate.so
|
||||
|
||||
%files -n %{libname}-devel
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/mariadb_config
|
||||
%{_includedir}/mariadb/
|
||||
%{_libdir}/libmariadb.so
|
||||
%{_libdir}/mariadb/libmysqlclient.so
|
||||
%{_libdir}/mariadb/libmysqlclient_r.so
|
||||
|
||||
%post -n %{libname}%{sover} -p /sbin/ldconfig
|
||||
%post -n %{libname}private -p /sbin/ldconfig
|
||||
%postun -n %{libname}%{sover} -p /sbin/ldconfig
|
||||
%postun -n %{libname}private -p /sbin/ldconfig
|
||||
|
||||
%changelog
|
||||
|
43
mariadb.keyring
Normal file
43
mariadb.keyring
Normal file
@ -0,0 +1,43 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v2
|
||||
|
||||
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
|
||||
Tmu3wSPRFsnHsQksxFhCqGYdUKyfRsobs/Ns
|
||||
=ovQp
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
107
private_library.patch
Normal file
107
private_library.patch
Normal file
@ -0,0 +1,107 @@
|
||||
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-2.3.2-src/libmariadb/CMakeLists.txt
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/libmariadb/CMakeLists.txt
|
||||
+++ mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt
|
||||
@@ -397,13 +397,22 @@ IF(UNIX)
|
||||
ENDIF()
|
||||
SIGN_TARGET(libmariadb)
|
||||
|
||||
+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")
|
||||
TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined")
|
||||
TARGET_LINK_LIBRARIES (libmariadb "-Wl,--version-script=${EXPORT_FILE}")
|
||||
TARGET_LINK_LIBRARIES (mariadbclient "-Wl,--no-undefined")
|
||||
TARGET_LINK_LIBRARIES (mariadbclient "-Wl,--version-script=${EXPORT_FILE}")
|
||||
+ TARGET_LINK_LIBRARIES (libmariadbprivate "-Wl,--no-undefined")
|
||||
ENDIF()
|
||||
|
||||
+SET_TARGET_PROPERTIES(libmariadbprivate PROPERTIES PREFIX "")
|
||||
+
|
||||
SET_TARGET_PROPERTIES(libmariadb PROPERTIES PREFIX "")
|
||||
|
||||
SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION
|
||||
@@ -429,7 +438,7 @@ ENDIF()
|
||||
|
||||
|
||||
INSTALL(TARGETS
|
||||
- libmariadb mariadbclient
|
||||
+ libmariadb libmariadbprivate mariadbclient
|
||||
RUNTIME DESTINATION "${LIB_INSTALL_DIR}"
|
||||
LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
|
||||
ARCHIVE DESTINATION "${LIB_INSTALL_DIR}")
|
||||
Index: mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/mariadb_config/mariadb_config.c.in
|
||||
+++ mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in
|
||||
@@ -6,6 +6,8 @@
|
||||
#define INCLUDE "-I@INCLUDE_INSTALL_DIR@ -I@INCLUDE_INSTALL_DIR@/mariadb"
|
||||
#define LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadb" \
|
||||
"@extra_dynamic_LDFLAGS@"
|
||||
+#define PRIVATE_LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadbprivate" \
|
||||
+ "@extra_dynamic_LDFLAGS@"
|
||||
#define CFLAGS INCLUDE " @CMAKE_C_FLAGS@"
|
||||
#define VERSION "@MYSQL_CLIENT_VERSION@"
|
||||
#define PLUGIN_DIR "@PLUGIN_INSTALL_DIR@"
|
||||
@@ -22,6 +24,7 @@ static struct option long_options[]=
|
||||
{"version", no_argument, 0, 'f'},
|
||||
{"socket", no_argument, 0, 'g'},
|
||||
{"port", no_argument, 0, 'h'},
|
||||
+ {"privatelibs", no_argument, 0, 'i'},
|
||||
{"plugindir", no_argument, 0, 'p'},
|
||||
{NULL, 0, 0, 0}
|
||||
};
|
||||
@@ -36,6 +39,7 @@ static char *values[]=
|
||||
VERSION,
|
||||
SOCKET,
|
||||
PORT,
|
||||
+ PRIVATE_LIBS,
|
||||
PLUGIN_DIR
|
||||
};
|
||||
|
||||
@@ -92,6 +96,9 @@ int main(int argc, char **argv)
|
||||
case 'h':
|
||||
puts(PORT);
|
||||
break;
|
||||
+ case 'i':
|
||||
+ puts(PRIVATE_LIBS);
|
||||
+ break;
|
||||
case 'p':
|
||||
puts(PLUGIN_DIR);
|
||||
break;
|
||||
Index: mariadb-connector-c-2.3.2-src/plugins/auth/CMakeLists.txt
|
||||
===================================================================
|
||||
--- mariadb-connector-c-2.3.2-src.orig/plugins/auth/CMakeLists.txt
|
||||
+++ mariadb-connector-c-2.3.2-src/plugins/auth/CMakeLists.txt
|
||||
@@ -10,7 +10,7 @@ IF(WIN32)
|
||||
"FILE_DESCRIPTION:Authentication plugin")
|
||||
SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def)
|
||||
ENDIF()
|
||||
-ADD_LIBRARY(dialog SHARED ${dialog_RC} ${DIALOG_SOURCES})
|
||||
+ADD_LIBRARY(dialog MODULE ${dialog_RC} ${DIALOG_SOURCES})
|
||||
TARGET_LINK_LIBRARIES(dialog dl)
|
||||
SET_TARGET_PROPERTIES(dialog PROPERTIES PREFIX "")
|
||||
SIGN_TARGET(dialog)
|
||||
@@ -32,7 +32,7 @@ IF(WIN32)
|
||||
"FILE_DESCRIPTION:Authentication plugin")
|
||||
SET(CTEXT_SOURCES ${CTEXT_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def)
|
||||
ENDIF()
|
||||
-ADD_LIBRARY(mysql_clear_password SHARED ${mysql_clear_password_RC} ${CTEXT_SOURCES})
|
||||
+ADD_LIBRARY(mysql_clear_password MODULE ${mysql_clear_password_RC} ${CTEXT_SOURCES})
|
||||
SET_TARGET_PROPERTIES(mysql_clear_password PROPERTIES PREFIX "")
|
||||
SIGN_TARGET(mysql_clear_password)
|
||||
|
Loading…
x
Reference in New Issue
Block a user