forked from OSchip/llvm-project
GNU: Add --no-export-dynamic command line option.
llvm-svn: 228749
This commit is contained in:
parent
13d0b11d7b
commit
2050b61451
|
@ -508,8 +508,9 @@ bool GnuLdDriver::parse(int argc, const char *argv[],
|
|||
if (parsedArgs->hasArg(OPT_noinhibit_exec))
|
||||
ctx->setAllowRemainingUndefines(true);
|
||||
|
||||
if (parsedArgs->hasArg(OPT_export_dynamic))
|
||||
ctx->setExportDynamic(true);
|
||||
if (auto val = getBool(*parsedArgs, OPT_export_dynamic,
|
||||
OPT_no_export_dynamic))
|
||||
ctx->setExportDynamic(*val);
|
||||
|
||||
if (parsedArgs->hasArg(OPT_allow_multiple_definition))
|
||||
ctx->setAllowDuplicates(true);
|
||||
|
|
|
@ -156,6 +156,8 @@ def export_dynamic : Flag<["-", "--"], "export-dynamic">,
|
|||
Group<grp_main>;
|
||||
def alias_export_dynamic: Flag<["-"], "E">,
|
||||
Alias<export_dynamic>;
|
||||
def no_export_dynamic : Flag<["--"], "no-export-dynamic">,
|
||||
Group<grp_main>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
/// Dynamic Library Options
|
||||
|
|
|
@ -91,6 +91,18 @@ TEST_F(GnuLdParserTest, EntryJoined) {
|
|||
EXPECT_EQ("foo", _context->entrySymbolName());
|
||||
}
|
||||
|
||||
// --export-dynamic
|
||||
|
||||
TEST_F(GnuLdParserTest, ExportDynamic) {
|
||||
EXPECT_TRUE(parse("ld", "a.o", "--export-dynamic", nullptr));
|
||||
EXPECT_TRUE(_context->shouldExportDynamic());
|
||||
}
|
||||
|
||||
TEST_F(GnuLdParserTest, NoExportDynamic) {
|
||||
EXPECT_TRUE(parse("ld", "a.o", "--no-export-dynamic", nullptr));
|
||||
EXPECT_FALSE(_context->shouldExportDynamic());
|
||||
}
|
||||
|
||||
// --init
|
||||
|
||||
TEST_F(GnuLdParserTest, Init) {
|
||||
|
|
Loading…
Reference in New Issue