aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
diff options
context:
space:
mode:
authorJordan Rupprecht <rupprecht@google.com>2018-11-01 17:36:37 +0000
committerJordan Rupprecht <rupprecht@google.com>2018-11-01 17:36:37 +0000
commitfc780bbb1604859511dc74fc4b8986bb11194019 (patch)
tree7923ebcff0253e1a9b045bee84599d32be5da899 /llvm/tools/llvm-objcopy/llvm-objcopy.cpp
parentcc1e9c414bd2109927ac37fb46c1c4b3967682e6 (diff)
downloadllvm-fc780bbb1604859511dc74fc4b8986bb11194019.zip
llvm-fc780bbb1604859511dc74fc4b8986bb11194019.tar.gz
llvm-fc780bbb1604859511dc74fc4b8986bb11194019.tar.bz2
[llvm-objcopy] Support --{enable,disable}-deterministic-archives
Summary: ar and objcopy/strip all support configuring whether archives are written deterministically (timestamps/UIDs/GIDs/etc zero'd). This has been ported to llvm-ar (the U/D modifiers) but not yet to llvm-objcopy/strip. Reviewers: jakehehrlich, jhenderson, alexshap Reviewed By: jhenderson Subscribers: ruiu, mgrang, llvm-commits Differential Revision: https://reviews.llvm.org/D53913 llvm-svn: 345859
Diffstat (limited to 'llvm/tools/llvm-objcopy/llvm-objcopy.cpp')
-rw-r--r--llvm/tools/llvm-objcopy/llvm-objcopy.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
index deaea5e..a033aae 100644
--- a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
+++ b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
@@ -147,7 +147,7 @@ static void executeObjcopyOnArchive(const CopyConfig &Config,
executeObjcopyOnBinary(Config, *Bin, MB);
Expected<NewArchiveMember> Member =
- NewArchiveMember::getOldMember(Child, true);
+ NewArchiveMember::getOldMember(Child, Config.DeterministicArchives);
if (!Member)
reportError(Ar.getFileName(), Member.takeError());
Member->Buf = MB.releaseMemoryBuffer();
@@ -157,9 +157,9 @@ static void executeObjcopyOnArchive(const CopyConfig &Config,
if (Err)
reportError(Config.InputFilename, std::move(Err));
- if (Error E =
- deepWriteArchive(Config.OutputFilename, NewArchiveMembers,
- Ar.hasSymbolTable(), Ar.kind(), true, Ar.isThin()))
+ if (Error E = deepWriteArchive(Config.OutputFilename, NewArchiveMembers,
+ Ar.hasSymbolTable(), Ar.kind(),
+ Config.DeterministicArchives, Ar.isThin()))
reportError(Config.OutputFilename, std::move(E));
}