new configure option: NOT_FOR_DISTRIBUTION
fix safemalloc to compile w/o libbfd. CMakeLists.txt: NOT_FOR_DISTRIBUTION option cmake/readline.cmake: simplify libedit/readline detection. never use bundled libedit. use system readline v6 only if NOT_FOR_DISTRIBUTION=1 configure.cmake: use libbfd only if NOT_FOR_DISTRIBUTION=1 include/my_stacktrace.h: link with libbfd even w/o safemalloc.
This commit is contained in:
parent
44d335b828
commit
db8f698c8a
@ -166,6 +166,7 @@ ENDIF()
|
|||||||
OPTION (WITH_UNIT_TESTS "Compile MySQL with unit tests" ON)
|
OPTION (WITH_UNIT_TESTS "Compile MySQL with unit tests" ON)
|
||||||
MARK_AS_ADVANCED(CYBOZU BACKUP_TEST WITHOUT_SERVER DISABLE_SHARED)
|
MARK_AS_ADVANCED(CYBOZU BACKUP_TEST WITHOUT_SERVER DISABLE_SHARED)
|
||||||
|
|
||||||
|
OPTION(NOT_FOR_DISTRIBUTION "Allow linking with GPLv2-incompatible system libraries. Only set it you never plan to distribute the resulting binaries" OFF)
|
||||||
|
|
||||||
OPTION(ENABLE_DEBUG_SYNC "Enable debug sync (debug builds only)" ON)
|
OPTION(ENABLE_DEBUG_SYNC "Enable debug sync (debug builds only)" ON)
|
||||||
IF(ENABLE_DEBUG_SYNC)
|
IF(ENABLE_DEBUG_SYNC)
|
||||||
@ -264,9 +265,9 @@ MYSQL_CHECK_READLINE()
|
|||||||
#
|
#
|
||||||
IF(MYSQL_MAINTAINER_MODE)
|
IF(MYSQL_MAINTAINER_MODE)
|
||||||
# Set compiler flags required under maintainer mode.
|
# Set compiler flags required under maintainer mode.
|
||||||
MESSAGE(STATUS "C warning options: ${MY_MAINTAINER_C_WARNINGS}")
|
#MESSAGE(STATUS "C warning options: ${MY_MAINTAINER_C_WARNINGS}")
|
||||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_MAINTAINER_C_WARNINGS}")
|
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_MAINTAINER_C_WARNINGS}")
|
||||||
MESSAGE(STATUS "C++ warning options: ${MY_MAINTAINER_CXX_WARNINGS}")
|
#MESSAGE(STATUS "C++ warning options: ${MY_MAINTAINER_CXX_WARNINGS}")
|
||||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_MAINTAINER_CXX_WARNINGS}")
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_MAINTAINER_CXX_WARNINGS}")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
@ -392,3 +393,9 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
|
|||||||
PATTERN "sp-imp-spec.txt" EXCLUDE
|
PATTERN "sp-imp-spec.txt" EXCLUDE
|
||||||
)
|
)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
|
IF(NON_DISTRIBUTABLE_WARNING)
|
||||||
|
MESSAGE(WARNING "
|
||||||
|
You have linked MariaDB with GPLv3 libraries! You may not distribute the resulting binary. If you do, you will put yourself into a legal problem with Free Software Foundation.")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
@ -21,16 +21,15 @@ INCLUDE_DIRECTORIES(
|
|||||||
${CMAKE_SOURCE_DIR}/regex
|
${CMAKE_SOURCE_DIR}/regex
|
||||||
${CMAKE_SOURCE_DIR}/sql
|
${CMAKE_SOURCE_DIR}/sql
|
||||||
${CMAKE_SOURCE_DIR}/strings
|
${CMAKE_SOURCE_DIR}/strings
|
||||||
${READLINE_INCLUDE_DIR}
|
${MY_READLINE_INCLUDE_DIR}
|
||||||
${CMAKE_CURRENT_BINARY_DIR}
|
${CMAKE_CURRENT_BINARY_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_DEFINITIONS(${READLINE_DEFINES})
|
|
||||||
ADD_DEFINITIONS(${SSL_DEFINES})
|
ADD_DEFINITIONS(${SSL_DEFINES})
|
||||||
MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc)
|
MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc)
|
||||||
TARGET_LINK_LIBRARIES(mysql mysqlclient)
|
TARGET_LINK_LIBRARIES(mysql mysqlclient)
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
TARGET_LINK_LIBRARIES(mysql ${READLINE_LIBRARY})
|
TARGET_LINK_LIBRARIES(mysql ${MY_READLINE_LIBRARY})
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -rdynamic")
|
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -rdynamic")
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
INCLUDE(CheckCXXSourceCompiles)
|
||||||
|
|
||||||
MACRO (MYSQL_CHECK_MULTIBYTE)
|
MACRO (MYSQL_CHECK_MULTIBYTE)
|
||||||
CHECK_INCLUDE_FILE(wctype.h HAVE_WCTYPE_H)
|
CHECK_INCLUDE_FILE(wctype.h HAVE_WCTYPE_H)
|
||||||
CHECK_INCLUDE_FILE(wchar.h HAVE_WCHAR_H)
|
CHECK_INCLUDE_FILE(wchar.h HAVE_WCHAR_H)
|
||||||
@ -112,56 +114,22 @@ ENDMACRO()
|
|||||||
MACRO (MYSQL_USE_BUNDLED_READLINE)
|
MACRO (MYSQL_USE_BUNDLED_READLINE)
|
||||||
SET(USE_NEW_READLINE_INTERFACE 1)
|
SET(USE_NEW_READLINE_INTERFACE 1)
|
||||||
SET(HAVE_HIST_ENTRY)
|
SET(HAVE_HIST_ENTRY)
|
||||||
SET(USE_LIBEDIT_INTERFACE)
|
|
||||||
SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils)
|
SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils)
|
||||||
SET(READLINE_LIBRARY readline)
|
SET(READLINE_LIBRARY readline)
|
||||||
FIND_CURSES()
|
FIND_CURSES()
|
||||||
ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/readline)
|
ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/readline)
|
||||||
ENDMACRO()
|
ENDMACRO()
|
||||||
|
|
||||||
MACRO (MYSQL_USE_BUNDLED_LIBEDIT)
|
MACRO (MYSQL_FIND_SYSTEM_READLINE)
|
||||||
SET(USE_LIBEDIT_INTERFACE 1)
|
|
||||||
SET(HAVE_HIST_ENTRY 1)
|
|
||||||
SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
|
|
||||||
SET(READLINE_LIBRARY edit)
|
|
||||||
FIND_CURSES()
|
|
||||||
ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
|
|
||||||
ENDMACRO()
|
|
||||||
|
|
||||||
|
|
||||||
MACRO (MYSQL_FIND_SYSTEM_READLINE name)
|
|
||||||
|
|
||||||
FIND_PATH(${name}_INCLUDE_DIR readline/readline.h )
|
FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h )
|
||||||
FIND_LIBRARY(${name}_LIBRARY NAMES ${name})
|
FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
|
||||||
MARK_AS_ADVANCED(${name}_INCLUDE_DIR ${name}_LIBRARY)
|
MARK_AS_ADVANCED(READLINE_INCLUDE_DIR READLINE_LIBRARY)
|
||||||
|
|
||||||
INCLUDE(CheckCXXSourceCompiles)
|
|
||||||
SET(CMAKE_REQUIRES_LIBRARIES ${${name}_LIBRARY})
|
|
||||||
|
|
||||||
IF(${name}_LIBRARY AND ${name}_INCLUDE_DIR)
|
|
||||||
SET(SYSTEM_READLINE_FOUND 1)
|
|
||||||
SET(CMAKE_REQUIRED_LIBRARIES ${${name}_LIBRARY})
|
|
||||||
CHECK_CXX_SOURCE_COMPILES("
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <readline/readline.h>
|
|
||||||
int main(int argc, char **argv)
|
|
||||||
{
|
|
||||||
HIST_ENTRY entry;
|
|
||||||
return 0;
|
|
||||||
}"
|
|
||||||
${name}_HAVE_HIST_ENTRY)
|
|
||||||
|
|
||||||
CHECK_CXX_SOURCE_COMPILES("
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <readline/readline.h>
|
|
||||||
int main(int argc, char **argv)
|
|
||||||
{
|
|
||||||
char res= *(*rl_completion_entry_function)(0,0);
|
|
||||||
completion_matches(0,0);
|
|
||||||
}"
|
|
||||||
${name}_USE_LIBEDIT_INTERFACE)
|
|
||||||
|
|
||||||
|
SET(CMAKE_REQUIRES_LIBRARIES ${READLINE_LIBRARY})
|
||||||
|
|
||||||
|
IF(READLINE_LIBRARY AND READLINE_INCLUDE_DIR)
|
||||||
|
SET(CMAKE_REQUIRED_LIBRARIES ${READLINE_LIBRARY})
|
||||||
CHECK_CXX_SOURCE_COMPILES("
|
CHECK_CXX_SOURCE_COMPILES("
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <readline/readline.h>
|
#include <readline/readline.h>
|
||||||
@ -170,16 +138,64 @@ MACRO (MYSQL_FIND_SYSTEM_READLINE name)
|
|||||||
rl_completion_func_t *func1= (rl_completion_func_t*)0;
|
rl_completion_func_t *func1= (rl_completion_func_t*)0;
|
||||||
rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
|
rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
|
||||||
}"
|
}"
|
||||||
${name}_USE_NEW_READLINE_INTERFACE)
|
NEW_READLINE_INTERFACE)
|
||||||
|
|
||||||
|
CHECK_CXX_SOURCE_COMPILES("
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <readline/readline.h>
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
HIST_ENTRY entry;
|
||||||
|
return 0;
|
||||||
|
}"
|
||||||
|
HAVE_HIST_ENTRY)
|
||||||
|
|
||||||
IF(${name}_USE_LIBEDIT_INTERFACE OR ${name}_USE_NEW_READLINE_INTERFACE)
|
CHECK_C_SOURCE_COMPILES("
|
||||||
SET(READLINE_LIBRARY ${${name}_LIBRARY})
|
#include <stdio.h>
|
||||||
SET(READLINE_INCLUDE_DIR ${${name}_INCLUDE_DIR})
|
#include <readline/readline.h>
|
||||||
SET(HAVE_HIST_ENTRY ${${name}_HAVE_HIST_ENTRY})
|
#if RL_VERSION_MAJOR > 5
|
||||||
SET(USE_LIBEDIT_INTERFACE ${${name}_USE_LIBEDIT_INTERFACE})
|
#error
|
||||||
SET(USE_NEW_READLINE_INTERFACE ${${name}_USE_NEW_READLINE_INTERFACE})
|
#endif
|
||||||
SET(READLINE_FOUND 1)
|
int main(int argc, char **argv)
|
||||||
ENDIF()
|
{
|
||||||
|
return 0;
|
||||||
|
}"
|
||||||
|
READLINE_V5)
|
||||||
|
|
||||||
|
IF(NEW_READLINE_INTERFACE)
|
||||||
|
IF (READLINE_V5)
|
||||||
|
SET(USE_NEW_READLINE_INTERFACE 1)
|
||||||
|
ELSE()
|
||||||
|
IF(NOT_FOR_DISTRIBUTION)
|
||||||
|
SET(NON_DISTRIBUTABLE_WARNING 1)
|
||||||
|
SET(USE_NEW_READLINE_INTERFACE 1)
|
||||||
|
ELSE()
|
||||||
|
SET(USE_NEW_READLINE_INTERFACE 0)
|
||||||
|
ENDIF(NOT_FOR_DISTRIBUTION)
|
||||||
|
ENDIF(READLINE_V5)
|
||||||
|
ENDIF(NEW_READLINE_INTERFACE)
|
||||||
|
ENDIF()
|
||||||
|
ENDMACRO()
|
||||||
|
|
||||||
|
MACRO (MYSQL_FIND_SYSTEM_LIBEDIT)
|
||||||
|
|
||||||
|
FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h )
|
||||||
|
FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
|
||||||
|
MARK_AS_ADVANCED(READLINE_INCLUDE_DIR READLINE_LIBRARY)
|
||||||
|
|
||||||
|
SET(CMAKE_REQUIRES_LIBRARIES ${READLINE_LIBRARY})
|
||||||
|
|
||||||
|
IF(READLINE_LIBRARY AND READLINE_INCLUDE_DIR)
|
||||||
|
CHECK_CXX_SOURCE_COMPILES("
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <readline/readline.h>
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
char res= *(*rl_completion_entry_function)(0,0);
|
||||||
|
completion_matches(0,0);
|
||||||
|
}"
|
||||||
|
LIBEDIT_INTERFACE)
|
||||||
|
SET(USE_LIBEDIT_INTERFACE ${LIBEDIT_INTERFACE})
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDMACRO()
|
ENDMACRO()
|
||||||
|
|
||||||
@ -187,44 +203,21 @@ ENDMACRO()
|
|||||||
MACRO (MYSQL_CHECK_READLINE)
|
MACRO (MYSQL_CHECK_READLINE)
|
||||||
IF (NOT WIN32)
|
IF (NOT WIN32)
|
||||||
MYSQL_CHECK_MULTIBYTE()
|
MYSQL_CHECK_MULTIBYTE()
|
||||||
IF(NOT CYGWIN)
|
SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
|
||||||
SET(WITH_LIBEDIT ON CACHE BOOL "Use bundled libedit")
|
|
||||||
SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
|
|
||||||
ELSE()
|
|
||||||
# Bundled libedit does not compile on cygwin, only readline
|
|
||||||
SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
|
|
||||||
ENDIF()
|
|
||||||
|
|
||||||
# Handle mutual exclusion of WITH_READLINE/WITH_LIBEDIT variables
|
|
||||||
# We save current setting to recognize when user switched between
|
|
||||||
# WITH_READLINE and WITH_LIBEDIT
|
|
||||||
IF(WITH_READLINE)
|
|
||||||
IF(NOT SAVE_READLINE_SETTING OR SAVE_READLINE_SETTING MATCHES
|
|
||||||
"WITH_LIBEDIT")
|
|
||||||
SET(WITH_LIBEDIT OFF CACHE BOOL "Use bundled libedit" FORCE)
|
|
||||||
ENDIF()
|
|
||||||
ELSEIF(WITH_LIBEDIT)
|
|
||||||
IF(NOT SAVE_READLINE_SETTING OR SAVE_READLINE_SETTING MATCHES
|
|
||||||
"WITH_READLINE")
|
|
||||||
SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline" FORCE)
|
|
||||||
ENDIF()
|
|
||||||
ENDIF()
|
|
||||||
|
|
||||||
IF(WITH_READLINE)
|
IF(WITH_READLINE)
|
||||||
MYSQL_USE_BUNDLED_READLINE()
|
MYSQL_USE_BUNDLED_READLINE()
|
||||||
SET(SAVE_READLINE_SETTING WITH_READLINE CACHE INTERNAL "" FORCE)
|
|
||||||
ELSEIF(WITH_LIBEDIT)
|
|
||||||
MYSQL_USE_BUNDLED_LIBEDIT()
|
|
||||||
SET(SAVE_READLINE_SETTING WITH_LIBEDIT CACHE INTERNAL "" FORCE)
|
|
||||||
ELSE()
|
ELSE()
|
||||||
MYSQL_FIND_SYSTEM_READLINE(readline)
|
MYSQL_FIND_SYSTEM_READLINE()
|
||||||
IF(NOT READLINE_FOUND)
|
IF(NOT USE_NEW_READLINE_INTERFACE)
|
||||||
MYSQL_FIND_SYSTEM_READLINE(edit)
|
MYSQL_FIND_SYSTEM_LIBEDIT()
|
||||||
IF(NOT READLINE_FOUND)
|
IF(NOT USE_LIBEDIT_INTERFACE)
|
||||||
MESSAGE(FATAL_ERROR "Cannot find system readline or libedit libraries.Use WITH_READLINE or WITH_LIBEDIT")
|
MYSQL_USE_BUNDLED_READLINE()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
SET(MY_READLINE_INCLUDE_DIR ${READLINE_INCLUDE_DIR})
|
||||||
|
SET(MY_READLINE_LIBRARY ${READLINE_LIBRARY})
|
||||||
ENDIF(NOT WIN32)
|
ENDIF(NOT WIN32)
|
||||||
ENDMACRO()
|
ENDMACRO()
|
||||||
|
|
||||||
|
@ -187,7 +187,7 @@ CHECK_INCLUDE_FILES (aio.h HAVE_AIO_H)
|
|||||||
CHECK_INCLUDE_FILES (arpa/inet.h HAVE_ARPA_INET_H)
|
CHECK_INCLUDE_FILES (arpa/inet.h HAVE_ARPA_INET_H)
|
||||||
CHECK_INCLUDE_FILES (crypt.h HAVE_CRYPT_H)
|
CHECK_INCLUDE_FILES (crypt.h HAVE_CRYPT_H)
|
||||||
CHECK_INCLUDE_FILE_CXX (cxxabi.h HAVE_CXXABI_H)
|
CHECK_INCLUDE_FILE_CXX (cxxabi.h HAVE_CXXABI_H)
|
||||||
CHECK_INCLUDE_FILES (bfd.h HAVE_BFD_H)
|
CHECK_INCLUDE_FILES (bfd.h BFD_H_EXISTS)
|
||||||
CHECK_INCLUDE_FILES (dirent.h HAVE_DIRENT_H)
|
CHECK_INCLUDE_FILES (dirent.h HAVE_DIRENT_H)
|
||||||
CHECK_INCLUDE_FILES (dlfcn.h HAVE_DLFCN_H)
|
CHECK_INCLUDE_FILES (dlfcn.h HAVE_DLFCN_H)
|
||||||
CHECK_INCLUDE_FILES (execinfo.h HAVE_EXECINFO_H)
|
CHECK_INCLUDE_FILES (execinfo.h HAVE_EXECINFO_H)
|
||||||
@ -261,6 +261,13 @@ CHECK_INCLUDE_FILES (wchar.h HAVE_WCHAR_H)
|
|||||||
CHECK_INCLUDE_FILES (wctype.h HAVE_WCTYPE_H)
|
CHECK_INCLUDE_FILES (wctype.h HAVE_WCTYPE_H)
|
||||||
CHECK_INCLUDE_FILES (sys/sockio.h HAVE_SYS_SOCKIO_H)
|
CHECK_INCLUDE_FILES (sys/sockio.h HAVE_SYS_SOCKIO_H)
|
||||||
|
|
||||||
|
IF(BFD_H_EXISTS)
|
||||||
|
IF(NOT_FOR_DISTRIBUTION)
|
||||||
|
SET(NON_DISTRIBUTABLE_WARNING 1)
|
||||||
|
SET(HAVE_BFD_H 1)
|
||||||
|
ENDIF()
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
IF(HAVE_SYS_STREAM_H)
|
IF(HAVE_SYS_STREAM_H)
|
||||||
# Needs sys/stream.h on Solaris
|
# Needs sys/stream.h on Solaris
|
||||||
CHECK_INCLUDE_FILES ("sys/stream.h;sys/ptem.h" HAVE_SYS_PTEM_H)
|
CHECK_INCLUDE_FILES ("sys/stream.h;sys/ptem.h" HAVE_SYS_PTEM_H)
|
||||||
|
@ -55,23 +55,22 @@ void my_set_exception_pointers(EXCEPTION_POINTERS *ep);
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* at the moment, safemalloc is the main user of libbfd */
|
|
||||||
#ifndef SAFEMALLOC
|
|
||||||
#undef HAVE_BFD_H
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_BFD_H
|
#ifdef HAVE_BFD_H
|
||||||
#define HAVE_MY_ADDR_RESOLVE 1
|
#define HAVE_MY_ADDR_RESOLVE 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_MY_ADDR_RESOLVE
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
const char *file;
|
const char *file;
|
||||||
const char *func;
|
const char *func;
|
||||||
uint line;
|
uint line;
|
||||||
} my_addr_loc;
|
} my_addr_loc;
|
||||||
|
|
||||||
|
#ifdef HAVE_MY_ADDR_RESOLVE
|
||||||
int my_addr_resolve(void *ptr, my_addr_loc *loc);
|
int my_addr_resolve(void *ptr, my_addr_loc *loc);
|
||||||
const char *my_addr_resolve_init();
|
const char *my_addr_resolve_init();
|
||||||
|
#else
|
||||||
|
#define my_addr_resolve_init() (0)
|
||||||
|
#define my_addr_resolve(A,B) (1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_WRITE_CORE
|
#ifdef HAVE_WRITE_CORE
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
|
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
|
||||||
${CMAKE_SOURCE_DIR}/libmysqld/include
|
${CMAKE_SOURCE_DIR}/libmysqld/include
|
||||||
${CMAKE_SOURCE_DIR}/regex
|
${CMAKE_SOURCE_DIR}/regex
|
||||||
${READLINE_INCLUDE_DIR}
|
${MY_READLINE_INCLUDE_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -27,8 +27,7 @@ MYSQL_ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
|
|||||||
../../client/mysql.cc ../../client/readline.cc)
|
../../client/mysql.cc ../../client/readline.cc)
|
||||||
TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver)
|
TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver)
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
ADD_DEFINITIONS(${READLINE_DEFINES})
|
TARGET_LINK_LIBRARIES(mysql_embedded ${MY_READLINE_LIBRARY})
|
||||||
TARGET_LINK_LIBRARIES(mysql_embedded ${READLINE_LIBRARY})
|
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
MYSQL_ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.cc)
|
MYSQL_ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.cc)
|
||||||
|
@ -21,6 +21,7 @@
|
|||||||
/**
|
/**
|
||||||
strip the path, leave the file name and the last dirname
|
strip the path, leave the file name and the last dirname
|
||||||
*/
|
*/
|
||||||
|
static const char *strip_path(const char *s) __attribute__((unused));
|
||||||
static const char *strip_path(const char *s)
|
static const char *strip_path(const char *s)
|
||||||
{
|
{
|
||||||
const char *prev, *last;
|
const char *prev, *last;
|
||||||
|
@ -225,7 +225,7 @@ static void print_stack(void **frame)
|
|||||||
fprintf(stderr, ", ");
|
fprintf(stderr, ", ");
|
||||||
|
|
||||||
if (my_addr_resolve(frame[i], &loc))
|
if (my_addr_resolve(frame[i], &loc))
|
||||||
fprintf(stderr, "...");
|
fprintf(stderr, "%p", frame[i]);
|
||||||
else
|
else
|
||||||
fprintf(stderr, "%s:%u", loc.file, loc.line);
|
fprintf(stderr, "%s:%u", loc.file, loc.line);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user