ΒΆbool ExpandResponseFiles(
llvm::StringSaver& Saver,
llvm::cl::TokenizerCallback Tokenizer,
SmallVectorImpl<const char*>& Argv,
bool MarkEOLs = false,
bool RelativeNames = false,
llvm::vfs::FileSystem& FS =
*llvm::vfs::getRealFileSystem(),
llvm::Optional<llvm::StringRef> CurrentDir =
llvm::None)
bool ExpandResponseFiles(
llvm::StringSaver& Saver,
llvm::cl::TokenizerCallback Tokenizer,
SmallVectorImpl<const char*>& Argv,
bool MarkEOLs = false,
bool RelativeNames = false,
llvm::vfs::FileSystem& FS =
*llvm::vfs::getRealFileSystem(),
llvm::Optional<llvm::StringRef> CurrentDir =
llvm::None)
Description
Expand response files on a command line recursively using the given StringSaver and tokenization strategy. Argv should contain the command line before expansion and will be modified in place. If requested, Argv will also be populated with nullptrs indicating where each response file line ends, which is useful for the "/link" argument that needs to consume all remaining arguments only until the next end of line, when in a response file.
Declared at: llvm/include/llvm/Support/CommandLine.h:2083
Parameters
- llvm::StringSaver& Saver
- Delegates back to the caller for saving parsed strings.
- llvm::cl::TokenizerCallback Tokenizer
- Tokenization strategy. Typically Unix or Windows.
- SmallVectorImpl<const char*>& Argv
- Command line into which to expand response files.
- bool MarkEOLs = false
- Mark end of lines and the end of the response file with nullptrs in the Argv vector.
- bool RelativeNames = false
- true if names of nested response files must be resolved relative to including file.
- llvm::vfs::FileSystem& FS = * llvm::vfs::getRealFileSystem()
- File system used for all file access when running the tool.
- llvm::Optional<llvm::StringRef> CurrentDir = llvm::None
- Path used to resolve relative rsp files. If set to None, process' cwd is used instead.
Returns
true if all