mirror of
https://github.com/neovim/neovim.git
synced 2024-12-27 14:21:31 -07:00
parent
5cd68b3900
commit
a7538371fe
@ -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}")
|
||||
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)
|
||||
# XXX: /W4 gives too many warnings. #3241
|
||||
add_definitions(/W3 -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE)
|
||||
@ -324,7 +334,6 @@ main(void)
|
||||
return MSGPACK_OBJECT_FLOAT32;
|
||||
}
|
||||
" MSGPACK_HAS_FLOAT32)
|
||||
|
||||
if(MSGPACK_HAS_FLOAT32)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNVIM_MSGPACK_HAS_FLOAT32")
|
||||
endif()
|
||||
|
@ -68,4 +68,6 @@
|
||||
#cmakedefine ORDER_BIG_ENDIAN
|
||||
#define ENDIAN_INCLUDE_FILE <@ENDIAN_INCLUDE_FILE@>
|
||||
|
||||
#cmakedefine HAVE_EXECINFO_BACKTRACE
|
||||
|
||||
#endif // AUTO_CONFIG_H
|
||||
|
@ -25,6 +25,10 @@ static uv_mutex_t mutex;
|
||||
# include "log.c.generated.h"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||
# include <execinfo.h>
|
||||
#endif
|
||||
|
||||
static bool log_try_create(char *fname)
|
||||
{
|
||||
if (fname == NULL || fname[0] == '\0') {
|
||||
@ -173,8 +177,7 @@ FILE *open_log_file(void)
|
||||
return stderr;
|
||||
}
|
||||
|
||||
#if defined(__linux__)
|
||||
# include <execinfo.h>
|
||||
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||
void log_callstack(const char *const func_name, const int line_num)
|
||||
{
|
||||
void *trace[100];
|
||||
|
@ -61,7 +61,7 @@
|
||||
__VA_ARGS__)
|
||||
#endif
|
||||
|
||||
#if defined(__linux__)
|
||||
#ifdef HAVE_EXECINFO_BACKTRACE
|
||||
# define LOG_CALLSTACK() log_callstack(__func__, __LINE__)
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user