[test-suite] r352385 - [test-suite] Fix stdthreadbug when building static

Aleksandar Beserminji via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 28 08:52:57 PST 2019


Author: abeserminji
Date: Mon Jan 28 08:52:57 2019
New Revision: 352385

URL: http://llvm.org/viewvc/llvm-project?rev=352385&view=rev
Log:
[test-suite] Fix stdthreadbug when building static

This patch adds necessary flags for the test stdthreadbug.cpp, so it can
be executed without error, when tests are compiled with -static flag.

Differential Revision: https://reviews.llvm.org/D52878

Modified:
    test-suite/trunk/SingleSource/UnitTests/C++11/CMakeLists.txt
    test-suite/trunk/SingleSource/UnitTests/C++11/Makefile

Modified: test-suite/trunk/SingleSource/UnitTests/C++11/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/UnitTests/C%2B%2B11/CMakeLists.txt?rev=352385&r1=352384&r2=352385&view=diff
==============================================================================
--- test-suite/trunk/SingleSource/UnitTests/C++11/CMakeLists.txt (original)
+++ test-suite/trunk/SingleSource/UnitTests/C++11/CMakeLists.txt Mon Jan 28 08:52:57 2019
@@ -1,3 +1,9 @@
 list(APPEND CXXFLAGS -std=c++11 -pthread)
 list(APPEND LDFLAGS -lstdc++ -pthread)
+
+file(GLOB Source RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.c *.cpp)
+if(${CMAKE_EXE_LINKER_FLAGS} MATCHES "-static")
+	list(APPEND LDFLAGS -Wl,--whole-archive -lpthread -Wl,--no-whole-archive)
+endif()
+
 llvm_singlesource()

Modified: test-suite/trunk/SingleSource/UnitTests/C++11/Makefile
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/UnitTests/C%2B%2B11/Makefile?rev=352385&r1=352384&r2=352385&view=diff
==============================================================================
--- test-suite/trunk/SingleSource/UnitTests/C++11/Makefile (original)
+++ test-suite/trunk/SingleSource/UnitTests/C++11/Makefile Mon Jan 28 08:52:57 2019
@@ -6,6 +6,10 @@ CPPFLAGS += -std=c++11 -pthread
 
 ifdef BENCHMARKING_ONLY
 PROGRAMS_TO_SKIP += stdthreadbug
+else
+ifeq (-static, $(findstring -static, $(TARGET_FLAGS)))
+LDFLAGS += -Wl,--whole-archive -lpthread -Wl,--no-whole-archive
+endif
 endif
 
 LDFLAGS += -lstdc++ -pthread




More information about the llvm-commits mailing list