Commit f7fc3d3a authored by Marc Jeanmougin's avatar Marc Jeanmougin 👹

Fix build

parent 60e8d68a
Pipeline #46984515 failed with stages
in 116 minutes and 16 seconds
......@@ -2,5 +2,5 @@
Checks: 'clang-diagnostic-*,clang-analyzer-*, modernize-deprecated-headers, modernize-loop-convert, modernize-use-override, modernize-redundant-void-arg, modernize-use-emplace, modernize-use-noexcept, modernize-use-bool-literals, modernize-pass-by-value, modernize-use-equals-default, modernize-use-equals-default, modernize-use-equals-delete'
#, readability-*, bugprone-*'
WarningsAsErrors: ''
HeaderFilterRegex: ''
HeaderFilterRegex: '.*'
FormatStyle: 'file'
......@@ -114,7 +114,7 @@ option(WITH_LIBVISIO "Compile with support of libvisio for Microsoft Visio Diagr
option(WITH_LIBWPG "Compile with support of libwpg for WordPerfect Graphics" ON)
option(WITH_NLS "Compile with Native Language Support (using gettext)" ON)
option(WITH_YAML "Compile with YAML support (enables xverbs)" ON)
option(WITH_JEMALLOC "Compile with JEMALLOC support" ON)
option(WITH_JEMALLOC "Compile with JEMALLOC support" OFF)
option(WITH_FUZZ "Compile for fuzzing purpose (use 'make fuzz' only)" OFF)
......@@ -21,6 +21,7 @@ list(APPEND INKSCAPE_CXX_FLAGS "-std=c++11")
# Errors for common mistakes
list(APPEND INKSCAPE_CXX_FLAGS "-Werror=format") # e.g.: printf("%s", std::string("foo"))
list(APPEND INKSCAPE_CXX_FLAGS "-Werror=format-security") # e.g.: printf(variable);
list(APPEND INKSCAPE_CXX_FLAGS_DEBUG "-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection")
  • Why was -D_FORTIFY_SOURCE=2 explicitly excluded for debug builds before?

    Does it make sense to enable all of these for debug builds (as far as I understand some of them create additional code to avoid certain types of memory corruption - could this code make debugging in gdb harder)?

    P.S. at least fstack-protector causes the executable to crash on Windows (wether for valid reasons or not I don't know) - but then again Debug builds don't work on Windows at all right now, so unlikely to be an actual issue in practice.

  • It was apparently excluded in 5f8f0958 because Tav had warnings with it (he still does, apparently, but I cannot have them)

  • Also, it makes sense to enable those in Debug, because some crashes that happen e.g. on Fedora are caused by FORTIFY_SOURCE which runs runtime checks on containers and crashes Inkscape, which we cannot catch and debug without that ( found in !488 (comment 131832200) )

  • Ah, I see.

    I didn't question wether the options make sense in principle, only was wondering if they'd complicate debugging in certain cases (but I guess most of the time they'll place a crash due to a memory corruption closer to the source, which will usually be a good thing)

Please register or sign in to reply
# Define the flags for profiling if desired:
......@@ -364,6 +365,9 @@ list(REMOVE_DUPLICATES INKSCAPE_CXX_FLAGS)
foreach(flag ${INKSCAPE_CXX_FLAGS})
# Some linkers, like gold, don't find symbols recursively. So we have to link against X11 explicitly
......@@ -51,6 +51,11 @@
<release version="1.0-alpha" date="2019-01-04">
<p>This is the first public alpha release of Inkscape 1.0! This package is intended to test against regressions, try new features, and get a taste of the future of Inkscape!</p>
<release version="0.92.3" date="2018-03-23">
# List of source files containing translatable strings.
# Please keep this file sorted alphabetically.
# Generated by at Tue Feb 5 20:06:57 CET 2019
# Generated by ./ at Mon Feb 11 11:51:47 CET 2019
[encoding: UTF-8]
......@@ -109,6 +109,7 @@ src/gradient-chemistry.cpp
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment