mirror of
https://github.com/neovim/neovim.git
synced 2025-09-28 22:18:33 +00:00
@@ -192,6 +192,16 @@ if(CMAKE_EXE_LINKER_FLAGS MATCHES "--sort-common" OR
|
|||||||
string(REGEX REPLACE "-Wl($| )" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
|
string(REGEX REPLACE "-Wl($| )" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
check_c_source_compiles("
|
||||||
|
#include <execinfo.h>
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
void *trace[1];
|
||||||
|
int trace_size = backtrace(trace, 1);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
" HAVE_EXECINFO_BACKTRACE)
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# XXX: /W4 gives too many warnings. #3241
|
# XXX: /W4 gives too many warnings. #3241
|
||||||
add_definitions(/W3 -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE)
|
add_definitions(/W3 -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE)
|
||||||
@@ -324,7 +334,6 @@ main(void)
|
|||||||
return MSGPACK_OBJECT_FLOAT32;
|
return MSGPACK_OBJECT_FLOAT32;
|
||||||
}
|
}
|
||||||
" MSGPACK_HAS_FLOAT32)
|
" MSGPACK_HAS_FLOAT32)
|
||||||
|
|
||||||
if(MSGPACK_HAS_FLOAT32)
|
if(MSGPACK_HAS_FLOAT32)
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNVIM_MSGPACK_HAS_FLOAT32")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNVIM_MSGPACK_HAS_FLOAT32")
|
||||||
endif()
|
endif()
|
||||||
|
@@ -68,4 +68,6 @@
|
|||||||
#cmakedefine ORDER_BIG_ENDIAN
|
#cmakedefine ORDER_BIG_ENDIAN
|
||||||
#define ENDIAN_INCLUDE_FILE <@ENDIAN_INCLUDE_FILE@>
|
#define ENDIAN_INCLUDE_FILE <@ENDIAN_INCLUDE_FILE@>
|
||||||
|
|
||||||
|
#cmakedefine HAVE_EXECINFO_BACKTRACE
|
||||||
|
|
||||||
#endif // AUTO_CONFIG_H
|
#endif // AUTO_CONFIG_H
|
||||||
|
@@ -25,6 +25,10 @@ static uv_mutex_t mutex;
|
|||||||
# include "log.c.generated.h"
|
# include "log.c.generated.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||||
|
# include <execinfo.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
static bool log_try_create(char *fname)
|
static bool log_try_create(char *fname)
|
||||||
{
|
{
|
||||||
if (fname == NULL || fname[0] == '\0') {
|
if (fname == NULL || fname[0] == '\0') {
|
||||||
@@ -173,8 +177,7 @@ FILE *open_log_file(void)
|
|||||||
return stderr;
|
return stderr;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__linux__)
|
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||||
# include <execinfo.h>
|
|
||||||
void log_callstack(const char *const func_name, const int line_num)
|
void log_callstack(const char *const func_name, const int line_num)
|
||||||
{
|
{
|
||||||
void *trace[100];
|
void *trace[100];
|
||||||
|
@@ -61,7 +61,7 @@
|
|||||||
__VA_ARGS__)
|
__VA_ARGS__)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__linux__)
|
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||||
# define LOG_CALLSTACK() log_callstack(__func__, __LINE__)
|
# define LOG_CALLSTACK() log_callstack(__func__, __LINE__)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user