diff options
Diffstat (limited to 'src/rustllvm/ArchiveWrapper.cpp')
| -rw-r--r-- | src/rustllvm/ArchiveWrapper.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/rustllvm/ArchiveWrapper.cpp b/src/rustllvm/ArchiveWrapper.cpp index f04251136f4..7f76861c077 100644 --- a/src/rustllvm/ArchiveWrapper.cpp +++ b/src/rustllvm/ArchiveWrapper.cpp @@ -12,6 +12,7 @@ #include "llvm/Object/Archive.h" #include "llvm/Object/ArchiveWriter.h" +#include "llvm/Support/Path.h" using namespace llvm; using namespace llvm::object; @@ -256,6 +257,9 @@ LLVMRustWriteArchive(char *Dst, size_t NumMembers, LLVMRustSetLastError(toString(MOrErr.takeError()).c_str()); return LLVMRustResult::Failure; } +#if LLVM_VERSION_GE(5, 0) + MOrErr->MemberName = sys::path::filename(MOrErr->MemberName); +#endif Members.push_back(std::move(*MOrErr)); #elif LLVM_VERSION_EQ(3, 8) Members.push_back(NewArchiveIterator(Member->Filename)); |
