diff options
-rw-r--r-- | libdevcore/CMakeLists.txt | 18 | ||||
-rw-r--r-- | libevmasm/CMakeLists.txt | 18 | ||||
-rw-r--r-- | liblangutil/CMakeLists.txt | 11 | ||||
-rw-r--r-- | liblll/CMakeLists.txt | 5 | ||||
-rw-r--r-- | libsolc/CMakeLists.txt | 4 | ||||
-rw-r--r-- | libsolidity/CMakeLists.txt | 58 | ||||
-rw-r--r-- | libyul/CMakeLists.txt | 50 |
7 files changed, 160 insertions, 4 deletions
diff --git a/libdevcore/CMakeLists.txt b/libdevcore/CMakeLists.txt index 01a8bcc6..e2309b16 100644 --- a/libdevcore/CMakeLists.txt +++ b/libdevcore/CMakeLists.txt @@ -1,14 +1,32 @@ set(sources + Algorithms.h + Assertions.h + boost_multiprecision_number_compare_bug_workaround.hpp + Common.h CommonData.cpp + CommonData.h CommonIO.cpp + CommonIO.h Exceptions.cpp + Exceptions.h + FixedHash.h IndentedWriter.cpp + IndentedWriter.h JSON.cpp + JSON.h Keccak256.cpp + Keccak256.h + Result.h StringUtils.cpp + StringUtils.h SwarmHash.cpp + SwarmHash.h UTF8.cpp + UTF8.h + vector_ref.h + Visitor.h Whiskers.cpp + Whiskers.h ) add_library(devcore ${sources}) diff --git a/libevmasm/CMakeLists.txt b/libevmasm/CMakeLists.txt index e0e3389a..42679938 100644 --- a/libevmasm/CMakeLists.txt +++ b/libevmasm/CMakeLists.txt @@ -1,20 +1,38 @@ set(sources Assembly.cpp + Assembly.h AssemblyItem.cpp + AssemblyItem.h BlockDeduplicator.cpp + BlockDeduplicator.h CommonSubexpressionEliminator.cpp + CommonSubexpressionEliminator.h ConstantOptimiser.cpp + ConstantOptimiser.h ControlFlowGraph.cpp + ControlFlowGraph.h + Exceptions.h ExpressionClasses.cpp + ExpressionClasses.h GasMeter.cpp + GasMeter.h Instruction.cpp + Instruction.h JumpdestRemover.cpp + JumpdestRemover.h KnownState.cpp + KnownState.h LinkerObject.cpp + LinkerObject.h PathGasMeter.cpp + PathGasMeter.h PeepholeOptimiser.cpp + PeepholeOptimiser.h SemanticInformation.cpp + SemanticInformation.h + SimplificationRule.h SimplificationRules.cpp + SimplificationRules.h ) add_library(evmasm ${sources}) diff --git a/liblangutil/CMakeLists.txt b/liblangutil/CMakeLists.txt index 5a82f3ff..b172108b 100644 --- a/liblangutil/CMakeLists.txt +++ b/liblangutil/CMakeLists.txt @@ -1,13 +1,24 @@ # Solidity Commons Library (Solidity related sharing bits between libsolidity and libyul) set(sources CharStream.cpp + CharStream.h ErrorReporter.cpp + ErrorReporter.h + EVMVersion.h Exceptions.cpp + Exceptions.h ParserBase.cpp + ParserBase.h Scanner.cpp + Scanner.h + SourceLocation.h SourceReferenceExtractor.cpp + SourceReferenceExtractor.h SourceReferenceFormatter.cpp + SourceReferenceFormatter.h Token.cpp + Token.h + UndefMacros.h ) add_library(langutil ${sources}) diff --git a/liblll/CMakeLists.txt b/liblll/CMakeLists.txt index 9566c62f..c529461b 100644 --- a/liblll/CMakeLists.txt +++ b/liblll/CMakeLists.txt @@ -1,8 +1,13 @@ set(sources CodeFragment.cpp + CodeFragment.h Compiler.cpp + Compiler.h CompilerState.cpp + CompilerState.h + Exceptions.h Parser.cpp + Parser.h ) add_library(lll ${sources}) diff --git a/libsolc/CMakeLists.txt b/libsolc/CMakeLists.txt index ed14e9fe..dfdf8162 100644 --- a/libsolc/CMakeLists.txt +++ b/libsolc/CMakeLists.txt @@ -1,9 +1,9 @@ if (EMSCRIPTEN) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s EXPORTED_FUNCTIONS='[\"_solidity_license\",\"_solidity_version\",\"_solidity_compile\"]' -s RESERVED_FUNCTION_POINTERS=20") - add_executable(soljson libsolc.cpp) + add_executable(soljson libsolc.cpp libsolc.h) target_link_libraries(soljson PRIVATE solidity) else() - add_library(libsolc libsolc.cpp) + add_library(libsolc libsolc.cpp libsolc.h) set_target_properties(libsolc PROPERTIES OUTPUT_NAME solc) target_link_libraries(libsolc PRIVATE solidity) endif() diff --git a/libsolidity/CMakeLists.txt b/libsolidity/CMakeLists.txt index 43d61c86..389f94bd 100644 --- a/libsolidity/CMakeLists.txt +++ b/libsolidity/CMakeLists.txt @@ -1,51 +1,105 @@ # Until we have a clear separation, libyul has to be included here set(sources analysis/ConstantEvaluator.cpp + analysis/ConstantEvaluator.h analysis/ContractLevelChecker.cpp + analysis/ContractLevelChecker.h analysis/ControlFlowAnalyzer.cpp + analysis/ControlFlowAnalyzer.h analysis/ControlFlowBuilder.cpp + analysis/ControlFlowBuilder.h analysis/ControlFlowGraph.cpp + analysis/ControlFlowGraph.h analysis/DeclarationContainer.cpp + analysis/DeclarationContainer.h analysis/DocStringAnalyser.cpp + analysis/DocStringAnalyser.h analysis/GlobalContext.cpp + analysis/GlobalContext.h analysis/NameAndTypeResolver.cpp + analysis/NameAndTypeResolver.h analysis/PostTypeChecker.cpp + analysis/PostTypeChecker.h analysis/ReferencesResolver.cpp + analysis/ReferencesResolver.h analysis/SemVerHandler.cpp + analysis/SemVerHandler.h analysis/StaticAnalyzer.cpp + analysis/StaticAnalyzer.h analysis/SyntaxChecker.cpp + analysis/SyntaxChecker.h analysis/TypeChecker.cpp + analysis/TypeChecker.h analysis/ViewPureChecker.cpp + analysis/ViewPureChecker.h ast/AST.cpp + ast/AST.h + ast/AST_accept.h ast/ASTAnnotations.cpp + ast/ASTAnnotations.h + ast/ASTEnums.h + ast/ASTForward.h ast/ASTJsonConverter.cpp + ast/ASTJsonConverter.h ast/ASTPrinter.cpp + ast/ASTPrinter.h + ast/ASTVisitor.h + ast/ExperimentalFeatures.h ast/Types.cpp + ast/Types.h codegen/ABIFunctions.cpp + codegen/ABIFunctions.h codegen/ArrayUtils.cpp + codegen/ArrayUtils.h codegen/AsmCodeGen.cpp + codegen/AsmCodeGen.h codegen/Compiler.cpp + codegen/Compiler.h codegen/CompilerContext.cpp + codegen/CompilerContext.h codegen/CompilerUtils.cpp + codegen/CompilerUtils.h codegen/ContractCompiler.cpp + codegen/ContractCompiler.h codegen/ExpressionCompiler.cpp + codegen/ExpressionCompiler.h codegen/LValue.cpp + codegen/LValue.h formal/SMTChecker.cpp + formal/SMTChecker.h formal/SMTLib2Interface.cpp + formal/SMTLib2Interface.h formal/SMTPortfolio.cpp + formal/SMTPortfolio.h + formal/SolverInterface.h formal/SSAVariable.cpp + formal/SSAVariable.h formal/SymbolicTypes.cpp + formal/SymbolicTypes.h formal/SymbolicVariables.cpp + formal/SymbolicVariables.h formal/VariableUsage.cpp + formal/VariableUsage.h interface/ABI.cpp + interface/ABI.h interface/AssemblyStack.cpp + interface/AssemblyStack.h interface/CompilerStack.cpp + interface/CompilerStack.h interface/GasEstimator.cpp + interface/GasEstimator.h interface/Natspec.cpp + interface/Natspec.h + interface/ReadFile.h interface/StandardCompiler.cpp + interface/StandardCompiler.h interface/Version.cpp + interface/Version.h parsing/DocStringParser.cpp + parsing/DocStringParser.h parsing/Parser.cpp + parsing/Parser.h + parsing/Token.h ) find_package(Z3 QUIET) @@ -53,7 +107,7 @@ if (${Z3_FOUND}) include_directories(${Z3_INCLUDE_DIR}) add_definitions(-DHAVE_Z3) message("Z3 SMT solver found. This enables optional SMT checking with Z3.") - set(z3_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/formal/Z3Interface.cpp") + set(z3_SRCS formal/Z3Interface.cpp formal/Z3Interface.h) else() set(z3_SRCS) endif() @@ -63,7 +117,7 @@ if (${CVC4_FOUND}) include_directories(${CVC4_INCLUDE_DIR}) add_definitions(-DHAVE_CVC4) message("CVC4 SMT solver found. This enables optional SMT checking with CVC4.") - set(cvc4_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/formal/CVC4Interface.cpp") + set(cvc4_SRCS formal/CVC4Interface.cpp formal/CVC4Interface.h) else() set(cvc4_SRCS) endif() diff --git a/libyul/CMakeLists.txt b/libyul/CMakeLists.txt index 5a86d2a2..52c4ac8e 100644 --- a/libyul/CMakeLists.txt +++ b/libyul/CMakeLists.txt @@ -1,48 +1,98 @@ add_library(yul AsmAnalysis.cpp + AsmAnalysis.h AsmAnalysisInfo.cpp + AsmAnalysisInfo.h + AsmData.h + AsmDataForward.h AsmParser.cpp + AsmParser.h AsmPrinter.cpp + AsmPrinter.h AsmScope.cpp + AsmScope.h AsmScopeFiller.cpp + AsmScopeFiller.h Dialect.cpp + Dialect.h + Exceptions.h Object.cpp + Object.h ObjectParser.cpp + ObjectParser.h + YulString.h + backends/evm/AbstractAssembly.h backends/evm/EVMAssembly.cpp + backends/evm/EVMAssembly.h backends/evm/EVMCodeTransform.cpp + backends/evm/EVMCodeTransform.h backends/evm/EVMDialect.cpp + backends/evm/EVMDialect.h backends/evm/EVMObjectCompiler.cpp + backends/evm/EVMObjectCompiler.h optimiser/ASTCopier.cpp + optimiser/ASTCopier.h optimiser/ASTWalker.cpp + optimiser/ASTWalker.h optimiser/BlockFlattener.cpp + optimiser/BlockFlattener.h optimiser/CommonSubexpressionEliminator.cpp + optimiser/CommonSubexpressionEliminator.h optimiser/DataFlowAnalyzer.cpp + optimiser/DataFlowAnalyzer.h optimiser/Disambiguator.cpp + optimiser/Disambiguator.h optimiser/ExpressionInliner.cpp + optimiser/ExpressionInliner.h optimiser/ExpressionJoiner.cpp + optimiser/ExpressionJoiner.h optimiser/ExpressionSimplifier.cpp + optimiser/ExpressionSimplifier.h optimiser/ExpressionSplitter.cpp + optimiser/ExpressionSplitter.h optimiser/ForLoopInitRewriter.cpp + optimiser/ForLoopInitRewriter.h optimiser/FullInliner.cpp + optimiser/FullInliner.h optimiser/FunctionGrouper.cpp + optimiser/FunctionGrouper.h optimiser/FunctionHoister.cpp + optimiser/FunctionHoister.h optimiser/InlinableExpressionFunctionFinder.cpp + optimiser/InlinableExpressionFunctionFinder.h optimiser/MainFunction.cpp + optimiser/MainFunction.h optimiser/Metrics.cpp + optimiser/Metrics.h optimiser/NameCollector.cpp + optimiser/NameCollector.h optimiser/NameDispenser.cpp + optimiser/NameDispenser.h optimiser/RedundantAssignEliminator.cpp + optimiser/RedundantAssignEliminator.h optimiser/Rematerialiser.cpp + optimiser/Rematerialiser.h optimiser/SSATransform.cpp + optimiser/SSATransform.h optimiser/SSAValueTracker.cpp + optimiser/SSAValueTracker.h optimiser/Semantics.cpp + optimiser/Semantics.h optimiser/SimplificationRules.cpp + optimiser/SimplificationRules.h optimiser/StructuralSimplifier.cpp + optimiser/StructuralSimplifier.h optimiser/Substitution.cpp + optimiser/Substitution.h optimiser/Suite.cpp + optimiser/Suite.h optimiser/SyntacticalEquality.cpp + optimiser/SyntacticalEquality.h optimiser/UnusedPruner.cpp + optimiser/UnusedPruner.h optimiser/Utilities.cpp + optimiser/Utilities.h optimiser/VarDeclInitializer.cpp + optimiser/VarDeclInitializer.h ) target_link_libraries(yul PUBLIC evmasm devcore langutil) |