solidity/test/CMakeLists.txt

222 lines
6.5 KiB
CMake
Raw Normal View History

2019-11-08 15:07:15 +00:00
set(sources
soltest.cpp
2019-11-08 15:07:15 +00:00
Common.cpp
Common.h
2020-02-04 18:40:32 +00:00
CommonSyntaxTest.cpp
CommonSyntaxTest.h
2019-11-08 15:07:15 +00:00
EVMHost.cpp
EVMHost.h
ExecutionFramework.cpp
ExecutionFramework.h
FilesystemUtils.cpp
FilesystemUtils.h
2019-11-08 15:07:15 +00:00
InteractiveTests.h
Metadata.cpp
Metadata.h
TemporaryDirectory.cpp
TemporaryDirectory.h
TemporaryDirectoryTest.cpp
2019-11-08 15:07:15 +00:00
TestCase.cpp
TestCase.h
2020-03-06 00:22:51 +00:00
TestCaseReader.cpp
TestCaseReader.h
2019-11-08 15:07:15 +00:00
)
detect_stray_source_files("${sources}" ".")
set(contracts_sources
contracts/AuctionRegistrar.cpp
contracts/ContractInterface.h
contracts/Wallet.cpp
)
detect_stray_source_files("${contracts_sources}" "contracts/")
set(libsolutil_sources
libsolutil/Checksum.cpp
libsolutil/CommonData.cpp
2021-06-25 13:28:54 +00:00
libsolutil/CommonIO.cpp
libsolutil/FixedHash.cpp
2022-09-27 12:13:44 +00:00
libsolutil/FunctionSelector.cpp
libsolutil/IndentedWriter.cpp
libsolutil/IpfsHash.cpp
libsolutil/IterateReplacing.cpp
libsolutil/JSON.cpp
libsolutil/Keccak256.cpp
2020-05-14 14:48:50 +00:00
libsolutil/LazyInit.cpp
2020-09-28 16:02:22 +00:00
libsolutil/LEB128.cpp
libsolutil/StringUtils.cpp
libsolutil/SwarmHash.cpp
libsolutil/UTF8.cpp
libsolutil/Whiskers.cpp
2019-11-08 15:07:15 +00:00
)
detect_stray_source_files("${libsolutil_sources}" "libsolutil/")
2019-11-08 15:07:15 +00:00
set(libevmasm_sources
libevmasm/Assembler.cpp
libevmasm/Optimiser.cpp
)
detect_stray_source_files("${libevmasm_sources}" "libevmasm/")
set(liblangutil_sources
liblangutil/CharStream.cpp
liblangutil/Scanner.cpp
2019-11-08 15:07:15 +00:00
liblangutil/SourceLocation.cpp
)
detect_stray_source_files("${liblangutil_sources}" "liblangutil/")
set(libsolidity_sources
libsolidity/ABIDecoderTests.cpp
libsolidity/ABIEncoderTests.cpp
libsolidity/ABIJsonTest.cpp
libsolidity/ABIJsonTest.h
libsolidity/ABITestsCommon.h
libsolidity/AnalysisFramework.cpp
libsolidity/AnalysisFramework.h
libsolidity/Assembly.cpp
libsolidity/ASTJSONTest.cpp
libsolidity/ASTJSONTest.h
libsolidity/ErrorCheck.cpp
libsolidity/ErrorCheck.h
libsolidity/GasCosts.cpp
libsolidity/GasMeter.cpp
libsolidity/GasTest.cpp
libsolidity/GasTest.h
libsolidity/Imports.cpp
libsolidity/InlineAssembly.cpp
libsolidity/LibSolc.cpp
libsolidity/Metadata.cpp
2022-02-10 16:57:43 +00:00
libsolidity/MemoryGuardTest.cpp
libsolidity/MemoryGuardTest.h
2019-11-08 15:07:15 +00:00
libsolidity/SemanticTest.cpp
libsolidity/SemanticTest.h
libsolidity/SemVerMatcher.cpp
2019-12-03 15:50:28 +00:00
libsolidity/SMTCheckerTest.cpp
libsolidity/SMTCheckerTest.h
2019-11-08 15:07:15 +00:00
libsolidity/SolidityCompiler.cpp
libsolidity/SolidityEndToEndTest.cpp
libsolidity/SolidityExecutionFramework.cpp
libsolidity/SolidityExecutionFramework.h
libsolidity/SolidityExpressionCompiler.cpp
libsolidity/SolidityNameAndTypeResolution.cpp
libsolidity/SolidityNatspecJSON.cpp
libsolidity/SolidityOptimizer.cpp
libsolidity/SolidityParser.cpp
libsolidity/SolidityTypes.cpp
libsolidity/StandardCompiler.cpp
libsolidity/SyntaxTest.cpp
libsolidity/SyntaxTest.h
libsolidity/ViewPureChecker.cpp
2021-01-28 20:11:30 +00:00
libsolidity/analysis/FunctionCallGraph.cpp
libsolidity/interface/FileReader.cpp
2019-11-08 15:07:15 +00:00
)
detect_stray_source_files("${libsolidity_sources}" "libsolidity/")
set(libsolidity_util_sources
libsolidity/util/BytesUtils.cpp
libsolidity/util/BytesUtilsTests.cpp
2019-11-08 15:07:15 +00:00
libsolidity/util/BytesUtils.h
libsolidity/util/ContractABIUtils.cpp
libsolidity/util/ContractABIUtils.h
libsolidity/util/SoltestErrors.h
libsolidity/util/SoltestTypes.h
libsolidity/util/TestFileParser.cpp
libsolidity/util/TestFileParser.h
libsolidity/util/TestFileParserTests.cpp
libsolidity/util/TestFunctionCall.cpp
libsolidity/util/TestFunctionCall.h
libsolidity/util/TestFunctionCallTests.cpp
)
detect_stray_source_files("${libsolidity_util_sources}" "libsolidity/util/")
set(libyul_sources
libyul/Common.cpp
libyul/Common.h
libyul/CompilabilityChecker.cpp
2021-06-11 17:17:41 +00:00
libyul/ControlFlowGraphTest.cpp
libyul/ControlFlowGraphTest.h
libyul/ControlFlowSideEffectsTest.cpp
libyul/ControlFlowSideEffectsTest.h
2021-03-09 13:53:10 +00:00
libyul/EVMCodeTransformTest.cpp
libyul/EVMCodeTransformTest.h
libyul/EwasmTranslationTest.cpp
libyul/EwasmTranslationTest.h
2019-11-08 15:07:15 +00:00
libyul/FunctionSideEffects.cpp
libyul/FunctionSideEffects.h
libyul/Inliner.cpp
2021-05-05 16:02:35 +00:00
libyul/KnowledgeBaseTest.cpp
2019-11-08 15:07:15 +00:00
libyul/Metrics.cpp
libyul/ObjectCompilerTest.cpp
libyul/ObjectCompilerTest.h
libyul/ObjectParser.cpp
libyul/Parser.cpp
libyul/StackLayoutGeneratorTest.cpp
libyul/StackLayoutGeneratorTest.h
libyul/StackShufflingTest.cpp
2020-02-04 18:40:32 +00:00
libyul/SyntaxTest.h
libyul/SyntaxTest.cpp
2019-11-08 15:07:15 +00:00
libyul/YulInterpreterTest.cpp
libyul/YulInterpreterTest.h
libyul/YulOptimizerTest.cpp
libyul/YulOptimizerTest.h
libyul/YulOptimizerTestCommon.cpp
libyul/YulOptimizerTestCommon.h
2019-11-08 15:07:15 +00:00
)
detect_stray_source_files("${libyul_sources}" "libyul/")
set(solcli_sources
solc/Common.cpp
solc/Common.h
solc/CommandLineInterface.cpp
solc/CommandLineInterfaceAllowPaths.cpp
solc/CommandLineParser.cpp
)
detect_stray_source_files("${solcli_sources}" "solc/")
set(yul_phaser_sources
yulPhaser/TestHelpers.h
yulPhaser/TestHelpers.cpp
yulPhaser/TestHelpersTest.cpp
2020-03-02 09:19:44 +00:00
yulPhaser/Common.cpp
yulPhaser/Chromosome.cpp
2020-02-05 13:58:06 +00:00
yulPhaser/FitnessMetrics.cpp
yulPhaser/AlgorithmRunner.cpp
yulPhaser/GeneticAlgorithms.cpp
yulPhaser/Mutations.cpp
yulPhaser/PairSelections.cpp
yulPhaser/Phaser.cpp
yulPhaser/Population.cpp
2020-01-23 18:02:59 +00:00
yulPhaser/Program.cpp
2020-02-26 18:28:58 +00:00
yulPhaser/ProgramCache.cpp
yulPhaser/Selections.cpp
yulPhaser/SimulationRNG.cpp
)
detect_stray_source_files("${yul_phaser_sources}" "yulPhaser/")
2019-11-08 15:07:15 +00:00
add_executable(soltest ${sources}
${contracts_sources}
${libsolutil_sources}
2019-11-08 15:07:15 +00:00
${liblangutil_sources}
${libevmasm_sources}
${libyul_sources}
${libsolidity_sources}
${libsolidity_util_sources}
${solcli_sources}
${yul_phaser_sources}
)
target_link_libraries(soltest PRIVATE solcli libsolc yul solidity smtutil solutil phaser Boost::boost yulInterpreter evmasm Boost::filesystem Boost::program_options Boost::unit_test_framework evmc)
2018-11-13 14:34:19 +00:00
# Special compilation flag for Visual Studio (version 2019 at least affected)
# in order to compile SolidityEndToEndTest.cpp, which is quite huge.
# We can remove this flag once we've extracted the tests.
# TODO: Remove this option as soon as we have reduced the SLoC's in SolidityEndToEndTest.cpp
if (MSVC)
target_compile_options(soltest PUBLIC "/bigobj")
endif()
if (NOT Boost_USE_STATIC_LIBS)
target_compile_definitions(soltest PUBLIC -DBOOST_TEST_DYN_LINK)
endif()
add_subdirectory(tools)
add_subdirectory(evmc)