1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
diff -aurN a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt 2018-03-28 16:15:18.101318534 -0400
+++ b/CMakeLists.txt 2018-03-28 16:18:43.863239965 -0400
@@ -452,8 +452,6 @@
MYSQL_CHECK_ZLIB_WITH_COMPRESS()
# Add bundled yassl/taocrypt or system openssl.
MYSQL_CHECK_SSL()
-# Add system/bundled editline.
-MYSQL_CHECK_EDITLINE()
# Add libevent
MYSQL_CHECK_LIBEVENT()
@@ -490,7 +488,9 @@
ADD_SUBDIRECTORY(storage/ndb)
ENDIF()
-ADD_SUBDIRECTORY(include)
+IF(NOT WITHOUT_CLIENTLIBS)
+ ADD_SUBDIRECTORY(include)
+ENDIF(NOT WITHOUT_CLIENTLIBS)
ADD_SUBDIRECTORY(dbug)
ADD_SUBDIRECTORY(strings)
ADD_SUBDIRECTORY(vio)
@@ -515,7 +515,6 @@
ENDIF()
ADD_SUBDIRECTORY(extra)
-ADD_SUBDIRECTORY(client)
ADD_SUBDIRECTORY(sql/share)
ADD_SUBDIRECTORY(libservices)
@@ -523,6 +522,13 @@
ADD_SUBDIRECTORY(man)
ENDIF()
+IF(NOT WITHOUT_TOOLS)
+ # Add system/bundled editline
+ MYSQL_CHECK_EDITLINE()
+ ADD_SUBDIRECTORY(client)
+ENDIF(NOT WITHOUT_TOOLS)
+
+
IF(NOT WITHOUT_SERVER)
ADD_SUBDIRECTORY(tests)
ADD_SUBDIRECTORY(sql)
diff -aurN a/extra/CMakeLists.txt b/extra/CMakeLists.txt
--- a/extra/CMakeLists.txt 2018-03-28 16:15:17.764325211 -0400
+++ b/extra/CMakeLists.txt 2018-03-28 16:20:44.569845200 -0400
@@ -60,11 +60,16 @@
ENDIF()
+IF(NOT WITHOUT_CLIENTLIBS)
MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c)
+MYSQL_ADD_EXECUTABLE(perror perror.c)
+ELSE(NOT WITHOUT_CLIENTLIBS)
+ADD_EXECUTABLE(my_print_defaults my_print_defaults.c)
+ADD_EXECUTABLE(perror perror.c)
+ENDIF(NOT WITHOUT_CLIENTLIBS)
TARGET_LINK_LIBRARIES(my_print_defaults mysys mysys_ssl)
SET_TARGET_PROPERTIES(my_print_defaults PROPERTIES LINKER_LANGUAGE CXX)
-MYSQL_ADD_EXECUTABLE(perror perror.c)
ADD_DEPENDENCIES(perror GenError)
TARGET_LINK_LIBRARIES(perror mysys mysys_ssl)
SET_TARGET_PROPERTIES(perror PROPERTIES LINKER_LANGUAGE CXX)
diff -aurN a/libmysql/CMakeLists.txt b/libmysql/CMakeLists.txt
--- a/libmysql/CMakeLists.txt 2018-03-28 16:15:18.014320257 -0400
+++ b/libmysql/CMakeLists.txt 2018-03-28 16:31:25.938114668 -0400
@@ -181,8 +181,13 @@
LIST(APPEND LIBS auth_win_client)
ENDIF()
+SET(INSTALL_STATIC_LIBS "")
+IF(NOT ENABLE_STATIC_LIBS)
+ SET(INSTALL_STATIC_LIBS "NOINSTALL")
+ENDIF()
+
# Merge several convenience libraries into one big perconaserverclient
-MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development)
+MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development ${INSTALL_STATIC_LIBS})
# Visual Studio users need debug static library for debug projects
IF(MSVC)
@@ -210,14 +215,14 @@
ENDMACRO()
ENDIF()
-IF(UNIX)
+IF(UNIX AND ENABLE_STATIC_LIBS AND NOT WITHOUT_CLIENTLIBS)
GET_TARGET_NAME(perconaserverclient lib_name)
INSTALL_SYMLINK(perconaserverclient
${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}perconaserverclient_r.a
${INSTALL_LIBDIR} Development)
ENDIF()
-IF(NOT DISABLE_SHARED)
+IF(NOT DISABLE_SHARED AND NOT WITHOUT_CLIENTLIBS)
# Merge several convenience libraries into one big perconaserverclient
# and link them together into shared library.
MERGE_LIBRARIES(libmysql SHARED ${LIBS}
diff -aurN a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
--- a/scripts/CMakeLists.txt 2018-03-28 16:15:17.706326360 -0400
+++ b/scripts/CMakeLists.txt 2018-03-28 16:29:23.168556104 -0400
@@ -358,7 +358,6 @@
SET(mysql_config_COMPONENT COMPONENT Development)
SET(BIN_SCRIPTS
msql2mysql
- mysql_config
mysql_fix_extensions
mysql_setpermission
mysql_zap
@@ -372,6 +371,12 @@
mysqld_safe
ps_tokudb_admin
)
+ IF(NOT WITHOUT_CLIENTLIBS)
+ SET(BIN_SCRIPTS
+ ${BIN_SCRIPTS}
+ mysql_config
+ )
+ ENDIF(NOT WITHOUT_CLIENTLIBS)
FOREACH(file ${BIN_SCRIPTS})
IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
|