Hi, Dmitry! ok to push. but see comments below On Oct 19, Dmitry Shulga wrote:
revision-id: b92597c220f (mariadb-10.2.31-479-gb92597c220f) parent(s): 577c61e8be0 author: Dmitry Shulga <dmitry.shulga@mariadb.com> committer: Dmitry Shulga <dmitry.shulga@mariadb.com> timestamp: 2020-10-08 00:48:47 +0700 message:
MDEV-23564: CMAKE failing due to deprecated Apple GSS method
Some GSS-API functions like gss_import_name(), gss_release_buffer() used in plugin/auth_gssapi and libmariadb/plugins/auth are marked as deprecated in MacOS starting from version 10.14+. It results in extra warnings output on server building.
To eliminate extra warnings the flag '-Wno-deprecated-declarations' has been added to compiler invocation string for those source files that invoke deprecated GSS-API functions.
diff --git a/libmariadb b/libmariadb index a746c3af449..fd0dc672309 160000 --- a/libmariadb +++ b/libmariadb @@ -1 +1 @@ -Subproject commit a746c3af449a8754e78ad7971e59e79af7957cdb +Subproject commit fd0dc6723095f066648a7c3b2a48523b3002e392
be careful when pushing this commit. you'd need something like 1. rebase your libmariadb fix on top of 3.1, push into 3.1 2. rebase your server fix on top of 10.2 2. update submodule reference in the server repo 3. amend your commit fix and push
diff --git a/plugin/auth_gssapi/CMakeLists.txt b/plugin/auth_gssapi/CMakeLists.txt index bca4f5af3a1..7a3c32a00b1 100644 --- a/plugin/auth_gssapi/CMakeLists.txt +++ b/plugin/auth_gssapi/CMakeLists.txt @@ -18,6 +18,13 @@ ELSE() SET(GSSAPI_SERVER gssapi_server.cc) SET(GSSAPI_ERRMSG gssapi_errmsg.cc)
+ IF(APPLE) + SET_SOURCE_FILES_PROPERTIES( + ${GSSAPI_CLIENT} ${GSSAPI_SERVER} ${GSSAPI_ERRMSG} + PROPERTY COMPILE_FLAGS "-Wno-deprecated-declarations") +# SET_SOURCE_FILES_PROPERTIES(${GSSAPI_SERVER} PROPERTY COMPILE_FLAGS "-Wno-deprecated-declarations") +# SET_SOURCE_FILES_PROPERTIES(${GSSAPI_ERRMSG} PROPERTY COMPILE_FLAGS "-Wno-deprecated-declarations")
you don't need these commented lines anymore, do you? Is it possible to use a compiler on APPLE that doesn't understand -Wno-deprecated-declarations? If not - your fix it ok. If it is - better use MY_CHECK_AND_SET_COMPILER_FLAG
+ ENDIF() SET(CMAKE_REQUIRED_INCLUDES ${GSSAPI_INCS}) SET(CMAKE_REQUIRED_LIBRARIES ${GSSAPI_LIBS}) INCLUDE(CheckCXXSymbolExists)
Regards, Sergei VP of MariaDB Server Engineering and security@mariadb.org