summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2013-10-21 06:34:34 +0000
committerDaniel Jasper <djasper@google.com>2013-10-21 06:34:34 +0000
commitac42b7519507ce19aca4ca646baef03bc0f46042 (patch)
treea63d4f660f4cf85c2605daad41e3eef7aeb22d2d /clang/lib/Driver/Tools.cpp
parent63c63ac21ebd0d70b6e4c10ce8520934f4b3b26e (diff)
downloadbcm5719-llvm-ac42b7519507ce19aca4ca646baef03bc0f46042.tar.gz
bcm5719-llvm-ac42b7519507ce19aca4ca646baef03bc0f46042.zip
Expose -fmodule-name and -fmodule-map-file as driver options.
Review: http://llvm-reviews.chandlerc.com/D1974 llvm-svn: 193069
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index d6ddd024437..3c98cb38eef 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -3060,13 +3060,28 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back("-fmodule-maps");
}
- // -fmodules-decluse checks that modules used are declared so (off by default).
+ // -fmodules-decluse checks that modules used are declared so (off by
+ // default).
if (Args.hasFlag(options::OPT_fmodules_decluse,
options::OPT_fno_modules_decluse,
false)) {
CmdArgs.push_back("-fmodules-decluse");
}
+ // -fmodule-name specifies the module that is currently being built (or
+ // used for header checking by -fmodule-maps).
+ if (Arg *A = Args.getLastArg(options::OPT_fmodule_name)) {
+ A->claim();
+ A->render(Args, CmdArgs);
+ }
+
+ // -fmodule-map-file can be used to specify a file containing module
+ // definitions.
+ if (Arg *A = Args.getLastArg(options::OPT_fmodule_map_file)) {
+ A->claim();
+ A->render(Args, CmdArgs);
+ }
+
// If a module path was provided, pass it along. Otherwise, use a temporary
// directory.
if (Arg *A = Args.getLastArg(options::OPT_fmodules_cache_path)) {
OpenPOWER on IntegriCloud