Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/creator')
-rw-r--r--source/creator/CMakeLists.txt10
-rw-r--r--source/creator/creator_args.c22
2 files changed, 31 insertions, 1 deletions
diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
index f923c834e93..d00285adb02 100644
--- a/source/creator/CMakeLists.txt
+++ b/source/creator/CMakeLists.txt
@@ -115,6 +115,10 @@ if(WITH_XR_OPENXR)
add_definitions(-DWITH_XR_OPENXR)
endif()
+if(WITH_GMP)
+ add_definitions(-DWITH_GMP)
+endif()
+
# Setup the exe sources and buildinfo
set(SRC
creator.c
@@ -191,6 +195,12 @@ if(WITH_BUILDINFO)
message(FATAL_ERROR "File \"${buildinfo_h_fake}\" found, this should never be created, remove!")
endif()
+ # From the cmake documentation "If the output of the custom command is not actually created as a
+ # file on disk it should be marked with the SYMBOLIC source file property."
+ #
+ # Not doing this leads to build warnings for the not generated file on windows when using msbuild
+ SET_SOURCE_FILES_PROPERTIES(${buildinfo_h_fake} PROPERTIES SYMBOLIC TRUE)
+
# a custom target that is always built
add_custom_target(buildinfo ALL
DEPENDS ${buildinfo_h_fake})
diff --git a/source/creator/creator_args.c b/source/creator/creator_args.c
index 164e670c444..0d1c932d2d2 100644
--- a/source/creator/creator_args.c
+++ b/source/creator/creator_args.c
@@ -751,6 +751,25 @@ static int arg_handle_abort_handler_disable(int UNUSED(argc),
return 0;
}
+static void clog_abort_on_error_callback(void *fp)
+{
+ BLI_system_backtrace(fp);
+ fflush(fp);
+ abort();
+}
+
+static const char arg_handle_debug_exit_on_error_doc[] =
+ "\n\t"
+ "Immediately exit when internal errors are detected.";
+static int arg_handle_debug_exit_on_error(int UNUSED(argc),
+ const char **UNUSED(argv),
+ void *UNUSED(data))
+{
+ MEM_enable_fail_on_memleak();
+ CLG_error_fn_set(clog_abort_on_error_callback);
+ return 0;
+}
+
static const char arg_handle_background_mode_set_doc[] =
"\n\t"
"Run in background (often used for UI-less rendering).";
@@ -1300,7 +1319,7 @@ static int arg_handle_register_extension(int UNUSED(argc), const char **UNUSED(a
if (data) {
G.background = 1;
}
- RegisterBlendExtension();
+ BLI_windows_register_blend_extension(G.background);
# else
(void)data; /* unused */
# endif
@@ -2214,6 +2233,7 @@ void main_args_setup(bContext *C, bArgs *ba)
"--debug-gpu-force-workarounds",
CB_EX(arg_handle_debug_mode_generic_set, gpumem),
(void *)G_DEBUG_GPU_FORCE_WORKAROUNDS);
+ BLI_argsAdd(ba, 1, NULL, "--debug-exit-on-error", CB(arg_handle_debug_exit_on_error), NULL);
BLI_argsAdd(ba, 1, NULL, "--verbose", CB(arg_handle_verbosity_set), NULL);