aboutsummaryrefslogtreecommitdiff
path: root/build/root.build
diff options
context:
space:
mode:
Diffstat (limited to 'build/root.build')
-rw-r--r--build/root.build15
1 files changed, 14 insertions, 1 deletions
diff --git a/build/root.build b/build/root.build
index 2151480..17e42b1 100644
--- a/build/root.build
+++ b/build/root.build
@@ -5,7 +5,7 @@ cxx.std = latest
using cxx
-hxx{*}: extension = hxx # We also have .mxx; see libbutl/buildfile.
+hxx{*}: extension = hxx
ixx{*}: extension = ixx
txx{*}: extension = txx
cxx{*}: extension = cxx
@@ -15,6 +15,19 @@ if ($cxx.target.system == 'win32-msvc')
if ($cxx.class == 'msvc')
cxx.coptions += /wd4251 /wd4275 /wd4800
+elif ($cxx.id == 'gcc')
+{
+ # See GCC bugs 100115, 98753 (attachment 50081/comment 15), and 101361. Note
+ # that these must also be disabled in projects that use libbutl.
+ #
+ cxx.coptions += -Wno-maybe-uninitialized -Wno-free-nonheap-object \
+-Wno-stringop-overread
+
+ if ($cxx.version.major >= 13)
+ cxx.coptions += -Wno-dangling-reference
+}
+elif ($cxx.id.type == 'clang' && $cxx.version.major >= 15)
+ cxx.coptions += -Wno-unqualified-std-cast-call
# Load the cli module but only if it's available. This way a distribution
# that includes pre-generated files can be built without installing cli.