aboutsummaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-10-01 03:57:03 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-10-01 03:57:03 +0200
commitaa3583916131f21b6a936cd88c4b74a21151644f (patch)
tree845aa6e2ccd8320345dafb24f4e4657d8b164389 /build
parent0fa500a6d78cf6fd1d75d8db8ae28065bc2e36df (diff)
Only enable modularized build if forced
The two boolean command line variables that control this are: force_modules force_std_modules
Diffstat (limited to 'build')
-rw-r--r--build/root.build9
1 files changed, 4 insertions, 5 deletions
diff --git a/build/root.build b/build/root.build
index 5129a40..839e423 100644
--- a/build/root.build
+++ b/build/root.build
@@ -2,15 +2,14 @@
# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
# license : MIT; see accompanying LICENSE file
-using cxx.guess
-
-if ($force_modules != true && $cxx.id == 'clang')
- cxx.features.modules = false
-
cxx.std = experimental
+cxx.features.modules = ($force_modules == true)
using cxx
+if ($force_modules == true && !$cxx.features.modules)
+ fail 'c++ compiler does not support modules'
+
mxx{*}: extension = mxx
hxx{*}: extension = hxx
ixx{*}: extension = ixx