summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/Support/DynamicLibrary
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2018-05-16 16:29:05 +0000
committerNico Weber <nicolasweber@gmx.de>2018-05-16 16:29:05 +0000
commit12389819381d1eb5b18998951ca3716f57d9d53b (patch)
treed3f45f22ca17b3ceed80000c868533f3eab201d9 /llvm/unittests/Support/DynamicLibrary
parent84caa9659e44216bc3c1c23804b54e64632d048d (diff)
downloadbcm5719-llvm-12389819381d1eb5b18998951ca3716f57d9d53b.tar.gz
bcm5719-llvm-12389819381d1eb5b18998951ca3716f57d9d53b.zip
Give shared modules in unittests the platform-native extension, make PipSqueak a MODULE
As far as I can tell from revision history, there's no good reason to call these files .so instead of .dll in Windows, so use the normal extension. Also change PipSquak from SHARED to MODULE -- it's never passed to target_link_libraries() and only loaded via dlopen(), so MODULE is more appropriate. This makes it possible to delete a workaround for SHARED ldflags being not quite right as well. No intended behavior change. https://reviews.llvm.org/D46898 llvm-svn: 332487
Diffstat (limited to 'llvm/unittests/Support/DynamicLibrary')
-rw-r--r--llvm/unittests/Support/DynamicLibrary/CMakeLists.txt11
-rw-r--r--llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp8
2 files changed, 7 insertions, 12 deletions
diff --git a/llvm/unittests/Support/DynamicLibrary/CMakeLists.txt b/llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
index 79603266a69..f883adbf06f 100644
--- a/llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
+++ b/llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
@@ -11,7 +11,7 @@ target_link_libraries(DynamicLibraryTests PRIVATE DynamicLibraryLib)
export_executable_symbols(DynamicLibraryTests)
function(dynlib_add_module NAME)
- add_library(${NAME} SHARED PipSqueak.cpp)
+ add_library(${NAME} MODULE PipSqueak.cpp)
set_target_properties(${NAME} PROPERTIES FOLDER "Tests")
set_output_directory(${NAME}
@@ -21,18 +21,11 @@ function(dynlib_add_module NAME)
set_target_properties(${NAME}
PROPERTIES PREFIX ""
- SUFFIX ".so"
+ SUFFIX ${LTDL_SHLIB_EXT}
)
add_dependencies(DynamicLibraryTests ${NAME})
endfunction(dynlib_add_module)
-# Revert -Wl,-z,nodelete on this test since it relies on the file
-# being unloaded.
-if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
- string(REPLACE "-Wl,-z,nodelete" "" CMAKE_SHARED_LINKER_FLAGS
- ${CMAKE_SHARED_LINKER_FLAGS})
-endif()
-
dynlib_add_module(PipSqueak)
dynlib_add_module(SecondLib)
diff --git a/llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp b/llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
index 370e1c5ed5e..50a0f1e621f 100644
--- a/llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
+++ b/llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
@@ -20,12 +20,14 @@ using namespace llvm;
using namespace llvm::sys;
std::string LibPath(const std::string Name = "PipSqueak") {
- const std::vector<testing::internal::string>& Argvs = testing::internal::GetArgvs();
- const char *Argv0 = Argvs.size() > 0 ? Argvs[0].c_str() : "DynamicLibraryTests";
+ const std::vector<testing::internal::string> &Argvs =
+ testing::internal::GetArgvs();
+ const char *Argv0 =
+ Argvs.size() > 0 ? Argvs[0].c_str() : "DynamicLibraryTests";
void *Ptr = (void*)(intptr_t)TestA;
std::string Path = fs::getMainExecutable(Argv0, Ptr);
llvm::SmallString<256> Buf(path::parent_path(Path));
- path::append(Buf, (Name+".so").c_str());
+ path::append(Buf, (Name + LTDL_SHLIB_EXT).c_str());
return Buf.str();
}
OpenPOWER on IntegriCloud