mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
972cc0d54a
is testing the bitcode reader's functionality, not VMCore's. Add the what is a hope sufficient build system mojo to build and run a new unittest. Also clean up some of the test's naming. The goal for the file should be to unittest the Bitcode Reader, and this is just one particular test among potentially many in the future. Also, reverse my position and relegate the PR# to a comment, but stash the comment on the same line as the test name so it doesn't get lost. This makes the code more self-documenting hopefully w/o losing track of the PR number. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147431 91177308-0d34-0410-b5e6-96231b3b80d8
151 lines
3.5 KiB
CMake
151 lines
3.5 KiB
CMake
function(add_llvm_unittest test_dirname)
|
|
string(REGEX MATCH "([^/]+)$" test_name ${test_dirname})
|
|
if (CMAKE_BUILD_TYPE)
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
|
${LLVM_BINARY_DIR}/unittests/${test_dirname}/${CMAKE_BUILD_TYPE})
|
|
else()
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
|
${LLVM_BINARY_DIR}/unittests/${test_dirname})
|
|
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)
|
|
set_target_properties(${test_name}Tests PROPERTIES FOLDER "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( LLVM_COMPILER_IS_GCC_COMPATIBLE )
|
|
llvm_replace_compiler_option(CMAKE_CXX_FLAGS "-frtti" "-fno-rtti")
|
|
elseif( MSVC )
|
|
llvm_replace_compiler_option(CMAKE_CXX_FLAGS "/GR" "/GR-")
|
|
endif()
|
|
|
|
if (NOT LLVM_ENABLE_THREADS)
|
|
add_definitions(-DGTEST_HAS_PTHREAD=0)
|
|
endif()
|
|
|
|
if(SUPPORTS_NO_VARIADIC_MACROS_FLAG)
|
|
add_definitions("-Wno-variadic-macros")
|
|
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/IntEqClassesTest.cpp
|
|
ADT/IntervalMapTest.cpp
|
|
ADT/PackedVectorTest.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
|
|
ADT/VariadicFunctionTest.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(ExecutionEngine/JIT ${JITTestsSources})
|
|
|
|
if(MINGW OR CYGWIN)
|
|
set_property(TARGET JITTests PROPERTY LINK_FLAGS -Wl,--export-all-symbols)
|
|
endif()
|
|
|
|
add_llvm_unittest(Transforms/Utils
|
|
Transforms/Utils/Cloning.cpp
|
|
)
|
|
|
|
set(VMCoreSources
|
|
VMCore/ConstantsTest.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})
|
|
|
|
add_llvm_unittest(Bitcode
|
|
Bitcode/BitReaderTest.cpp
|
|
)
|
|
|
|
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/JSONParserTest.cpp
|
|
Support/LeakDetectorTest.cpp
|
|
Support/MathExtrasTest.cpp
|
|
Support/Path.cpp
|
|
Support/raw_ostream_test.cpp
|
|
Support/RegexTest.cpp
|
|
Support/SwapByteOrderTest.cpp
|
|
Support/TimeValue.cpp
|
|
Support/TypeBuilderTest.cpp
|
|
Support/ValueHandleTest.cpp
|
|
)
|