$NetBSD: patch-libmysql_CMakeLists.txt,v 1.2 2022/11/02 17:02:10 jperkin Exp $

Do not install libmysqlclient with the server.
Generate versioned lib symlinks on FreeBSD to supress PLIST divergence.
authentication_ldap and libmysql_api_test require libmysqld.

--- libmysql/CMakeLists.txt.orig	2022-09-13 16:15:16.000000000 +0000
+++ libmysql/CMakeLists.txt
@@ -286,8 +286,14 @@ ADD_SUBDIRECTORY(authentication_kerberos
 # authentication IAM client plug-in
 ADD_SUBDIRECTORY(authentication_oci_client)
 
+IF(WITHOUT_SERVER)
+  SET(SERVER_SKIP_INSTALL "")
+ELSE()
+  SET(SERVER_SKIP_INSTALL SKIP_INSTALL)
+ENDIF()
+
 # Merge several convenience libraries into one big mysqlclient
-MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE}
+MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${SERVER_SKIP_INSTALL} ${LIBS_TO_MERGE}
   COMPONENT Development
   LINK_LIBRARIES ${LIBS_TO_LINK}
   )
@@ -325,7 +331,7 @@ ENDIF()
 
 IF(UNIX)
   SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
-  IF(NOT FREEBSD AND NOT APPLE)
+  IF(NOT APPLE)
     STRING_APPEND(OS_SHARED_LIB_VERSION
       ".${SHARED_LIB_MINOR_VERSION}.${SHARED_LIB_PATCH_VERSION}")
   ENDIF()
@@ -337,7 +343,7 @@ ENDIF()
 
 # Merge several convenience libraries into one big mysqlclient
 # and link them together into shared library.
-MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE}
+MERGE_LIBRARIES_SHARED(libmysql ${SERVER_SKIP_INSTALL} ${LIBS_TO_MERGE}
   EXPORTS
   ${CLIENT_API_FUNCTIONS}
   ${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
@@ -403,6 +409,7 @@ CONFIGURE_FILE(api_test.c.in ${CMAKE_CUR
 # from @CLIENT_API_FUNCTIONS@ are declared by <mysql.h>. It will fail
 # to run if not all of these symbols are exported by the library.
 #
+IF(NOT WITHOUT_SERVER)
 MYSQL_ADD_EXECUTABLE(libmysql_api_test
   ${CMAKE_CURRENT_BINARY_DIR}/api_test.c
   LINK_LIBRARIES libmysql ${LIBRT}
@@ -432,3 +439,4 @@ MY_ADD_CUSTOM_TARGET(run_libmysql_api_te
   COMMAND libmysql_api_test
   > ${CMAKE_CURRENT_BINARY_DIR}/libmysql_api_test.out
   )
+ENDIF()
