]> git.proxmox.com Git - ceph.git/blame - ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/libmysql/export-cmake-targets.patch
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / tools / vcpkg / ports / libmysql / export-cmake-targets.patch
CommitLineData
1e59de90
TL
1diff --git a/cmake/install_macros.cmake b/cmake/install_macros.cmake
2index c3a05ec..0d44ef2 100644
3--- a/cmake/install_macros.cmake
4+++ b/cmake/install_macros.cmake
5@@ -100,7 +100,7 @@ ENDFUNCTION()
6
7 FUNCTION(MYSQL_INSTALL_TARGETS)
8 MYSQL_PARSE_ARGUMENTS(ARG
9- "DESTINATION;COMPONENT"
10+ "DESTINATION;COMPONENT;EXPORT"
11 ""
12 ${ARGN}
13 )
14@@ -115,7 +115,20 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
15 IF(ARG_COMPONENT)
16 SET(COMP COMPONENT ${ARG_COMPONENT})
17 ENDIF()
18- INSTALL(TARGETS ${TARGETS} DESTINATION ${ARG_DESTINATION} ${COMP})
19+ IF (ARG_EXPORT)
20+ FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/${ARG_EXPORT}-config.cmake"
21+"include(CMakeFindDependencyMacro)
22+find_dependency(ZLIB)
23+find_dependency(OpenSSL)
24+include(\"\${CMAKE_CURRENT_LIST_DIR}/${ARG_EXPORT}-targets.cmake\")
25+")
26+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${ARG_EXPORT}-config.cmake DESTINATION share/${ARG_EXPORT})
27+ set(EXPORT_ARGS EXPORT ${ARG_EXPORT}-targets)
28+ ENDIF()
29+ INSTALL(TARGETS ${TARGETS} ${EXPORT_ARGS} RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ${COMP})
30+ IF (ARG_EXPORT)
31+ INSTALL(${EXPORT_ARGS} DESTINATION share/${ARG_EXPORT})
32+ ENDIF()
33 SET(INSTALL_LOCATION ${ARG_DESTINATION} )
34 INSTALL_DEBUG_SYMBOLS("${TARGETS}")
35 SET(INSTALL_LOCATION)
36diff --git a/cmake/libutils.cmake b/cmake/libutils.cmake
37index 5481fae..3fa58da 100644
38--- a/cmake/libutils.cmake
39+++ b/cmake/libutils.cmake
40@@ -237,7 +237,7 @@ MACRO(MERGE_LIBRARIES_SHARED)
41 IF(ARG_COMPONENT)
42 SET(COMP COMPONENT ${ARG_COMPONENT})
43 ENDIF()
44- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
45+ MYSQL_INSTALL_TARGETS(${TARGET} EXPORT unofficial-libmysql DESTINATION "${INSTALL_LIBDIR}" ${COMP})
46 ENDIF()
47 ENDMACRO()
48
49@@ -372,7 +372,7 @@ MACRO(MERGE_CONVENIENCE_LIBRARIES)
50 SET(COMP COMPONENT ${ARG_COMPONENT})
51 ENDIF()
52 IF(INSTALL_STATIC_LIBRARIES)
53- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
54+ MYSQL_INSTALL_TARGETS(${TARGET} EXPORT unofficial-libmysql DESTINATION "${INSTALL_LIBDIR}" ${COMP})
55 ENDIF()
56 ENDIF()
57 ENDMACRO()
58diff --git a/libmysql/CMakeLists.txt b/libmysql/CMakeLists.txt
59index 605288d..c5d0f5d 100644
60--- a/libmysql/CMakeLists.txt
61+++ b/libmysql/CMakeLists.txt
62@@ -245,8 +245,16 @@ ENDIF()
63 # LDAP authentication SASL client plugin
64 ADD_SUBDIRECTORY(authentication_ldap)
65
66+IF (BUILD_SHARED_LIBS)
67+ set(INSTALL_SHARED )
68+ set(INSTALL_STATIC SKIP_INSTALL)
69+ELSE()
70+ set(INSTALL_SHARED SKIP_INSTALL)
71+ set(INSTALL_STATIC )
72+ENDIF()
73+
74 # Merge several convenience libraries into one big mysqlclient
75-MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} COMPONENT Development)
76+MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} ${INSTALL_STATIC} COMPONENT Development)
77 TARGET_LINK_LIBRARIES(mysqlclient PRIVATE ${LIBS_TO_LINK})
78
79 # Visual Studio users need debug static library for debug projects
80@@ -283,6 +291,7 @@ ENDIF()
81 # Merge several convenience libraries into one big mysqlclient
82 # and link them together into shared library.
83 MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE}
84+ ${INSTALL_SHARED}
85 EXPORTS
86 ${CLIENT_API_FUNCTIONS}
87 ${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
88@@ -370,6 +379,7 @@ CONFIGURE_FILE(api_test.c.in ${CMAKE_CURRENT_BINARY_DIR}/api_test.c)
89 # from @CLIENT_API_FUNCTIONS@ are declared by <mysql.h>. It will fail
90 # to run if not all of these symbols are exported by the library.
91 #
92+IF (ENABLE_TESTING)
93 MYSQL_ADD_EXECUTABLE(libmysql_api_test
94 ${CMAKE_CURRENT_BINARY_DIR}/api_test.c
95 LINK_LIBRARIES libmysql ${LIBRT}
96@@ -398,3 +408,4 @@ ADD_CUSTOM_COMMAND(TARGET libmysql_api_test POST_BUILD
97 COMMAND libmysql_api_test
98 > ${CMAKE_CURRENT_BINARY_DIR}/libmysql_api_test.out
99 )
100+ENDIF()
101\ No newline at end of file
102diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
103index a5fa18e..0f2e15c 100644
104--- a/scripts/CMakeLists.txt
105+++ b/scripts/CMakeLists.txt
106@@ -329,13 +329,13 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
107 STRING(REGEX REPLACE "^[ ]+" "" ${var} "${${var}}")
108 STRING(REGEX REPLACE "[ ]+$" "" ${var} "${${var}}")
109 ENDMACRO()
110-
111+IF (NOT BUILD_SHARED_LIBS)
112 EXTRACT_LINK_LIBRARIES(mysqlclient CLIENT_LIBS)
113-
114-IF(MSVC)
115+ENDIF()
116+IF(MSVC AND NOT BUILD_SHARED_LIBS)
117 GET_TARGET_PROPERTY(LIBMYSQL_OS_SHLIB_VERSION mysqlclient VERSION)
118 GET_TARGET_PROPERTY(LIBMYSQL_OS_OUTPUT_NAME mysqlclient OUTPUT_NAME)
119-ELSE()
120+ELSEIF(BUILD_SHARED_LIBS)
121 GET_TARGET_PROPERTY(LIBMYSQL_OS_SHLIB_VERSION libmysql VERSION)
122 GET_TARGET_PROPERTY(LIBMYSQL_OS_OUTPUT_NAME libmysql OUTPUT_NAME)
123 ENDIF()