X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=blobdiff_plain;f=unittests%2FCMakeLists.txt;h=e5befcec6e0f1cf47ada1a66cad295f5fb91501f;hp=8551eb81bc7f11f35bc78f5761c56c6e25810e4e;hb=0136ee950c46aaf3922c42c48053f127490ced80;hpb=1f6efa3996dd1929fbc129203ce5009b620e6969 diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt index 8551eb81bc7..e5befcec6e0 100644 --- a/unittests/CMakeLists.txt +++ b/unittests/CMakeLists.txt @@ -1,137 +1,28 @@ -function(add_llvm_unittest test_name) - if (CMAKE_BUILD_TYPE) - set(CMAKE_RUNTIME_OUTPUT_DIRECTORY - ${LLVM_BINARY_DIR}/unittests/${test_name}/${CMAKE_BUILD_TYPE}) - else() - set(CMAKE_RUNTIME_OUTPUT_DIRECTORY - ${LLVM_BINARY_DIR}/unittests/${test_name}) - endif() - if( NOT LLVM_BUILD_TESTS ) - set(EXCLUDE_FROM_ALL ON) - endif() - add_llvm_executable(${test_name}Tests ${ARGN}) - add_dependencies(UnitTests ${test_name}Tests) -endfunction() - add_custom_target(UnitTests) +set_target_properties(UnitTests PROPERTIES FOLDER "Tests") -include_directories(${LLVM_MAIN_SRC_DIR}/utils/unittest/googletest/include) -add_definitions(-DGTEST_HAS_RTTI=0) -if (NOT LLVM_ENABLE_THREADS) - add_definitions(-DGTEST_HAS_PTHREAD=0) +if (APPLE) + set(CMAKE_INSTALL_RPATH "@executable_path/../../lib") +else(UNIX) + set(CMAKE_INSTALL_RPATH "\$ORIGIN/../../lib${LLVM_LIBDIR_SUFFIX}") endif() -set(LLVM_LINK_COMPONENTS - jit - interpreter - nativecodegen - BitWriter - BitReader - AsmParser - Core - Support - ) - -set(LLVM_USED_LIBS - gtest - gtest_main - LLVMSupport # gtest needs it for raw_ostream. - ) - -add_llvm_unittest(ADT - ADT/APFloatTest.cpp - ADT/APIntTest.cpp - ADT/BitVectorTest.cpp - ADT/DAGDeltaAlgorithmTest.cpp - ADT/DeltaAlgorithmTest.cpp - ADT/DenseMapTest.cpp - ADT/DenseSetTest.cpp - ADT/FoldingSet.cpp - ADT/ilistTest.cpp - ADT/ImmutableSetTest.cpp - ADT/IntervalMapTest.cpp - ADT/SmallBitVectorTest.cpp - ADT/SmallStringTest.cpp - ADT/SmallVectorTest.cpp - ADT/SparseBitVectorTest.cpp - ADT/StringMapTest.cpp - ADT/StringRefTest.cpp - ADT/TripleTest.cpp - ADT/TwineTest.cpp - ) - -add_llvm_unittest(Analysis - Analysis/ScalarEvolutionTest.cpp - ) - -add_llvm_unittest(ExecutionEngine - ExecutionEngine/ExecutionEngineTest.cpp - ) - -set(JITTestsSources - ExecutionEngine/JIT/JITEventListenerTest.cpp - ExecutionEngine/JIT/JITMemoryManagerTest.cpp - ExecutionEngine/JIT/JITTest.cpp - ExecutionEngine/JIT/MultiJITTest.cpp - ) - -if(MSVC) - list(APPEND JITTestsSources ExecutionEngine/JIT/JITTests.def) -endif() - -add_llvm_unittest(JIT ${JITTestsSources}) - -if(MINGW) - set_property(TARGET JITTests PROPERTY LINK_FLAGS -Wl,--export-all-symbols) -endif() - -add_llvm_unittest(Transforms - Transforms/Utils/Cloning.cpp - ) - -set(VMCoreSources - VMCore/ConstantsTest.cpp - VMCore/DerivedTypesTest.cpp - VMCore/InstructionsTest.cpp - VMCore/MetadataTest.cpp - VMCore/PassManagerTest.cpp - VMCore/ValueMapTest.cpp - VMCore/VerifierTest.cpp - ) - -# MSVC9 and 8 cannot compile ValueMapTest.cpp due to their bug. -# See issue#331418 in Visual Studio. -if(MSVC AND MSVC_VERSION LESS 1600) - list(REMOVE_ITEM VMCoreSources VMCore/ValueMapTest.cpp) -endif() - -add_llvm_unittest(VMCore ${VMCoreSources}) - -set(LLVM_LINK_COMPONENTS - Support - Core - ) - -add_llvm_unittest(Support - Support/AllocatorTest.cpp - Support/Casting.cpp - Support/CommandLineTest.cpp - Support/ConstantRangeTest.cpp - Support/EndianTest.cpp - Support/LeakDetectorTest.cpp - Support/MathExtrasTest.cpp - Support/raw_ostream_test.cpp - Support/RegexTest.cpp - Support/SwapByteOrderTest.cpp - Support/TypeBuilderTest.cpp - Support/ValueHandleTest.cpp - ) - -set(LLVM_LINK_COMPONENTS - Support - ) +function(add_llvm_unittest test_dirname) + add_unittest(UnitTests ${test_dirname} ${ARGN}) +endfunction() -add_llvm_unittest(System - System/Path.cpp - System/TimeValue.cpp - ) +add_subdirectory(ADT) +add_subdirectory(Analysis) +add_subdirectory(AsmParser) +add_subdirectory(Bitcode) +add_subdirectory(CodeGen) +add_subdirectory(DebugInfo) +add_subdirectory(ExecutionEngine) +add_subdirectory(IR) +add_subdirectory(LineEditor) +add_subdirectory(Linker) +add_subdirectory(MC) +add_subdirectory(Option) +add_subdirectory(ProfileData) +add_subdirectory(Support) +add_subdirectory(Transforms)