Add headers to targets in CMakeLists.txt.

This commit is contained in:
Daniel Kirchner 2018-12-17 15:00:39 +01:00
parent 8d3617b7c5
commit 2353f73c39
7 changed files with 160 additions and 4 deletions

View File

@ -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})

View File

@ -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})

View File

@ -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})

View File

@ -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})

View File

@ -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()

View File

@ -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()

View File

@ -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)