include_directories(${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${CMAKE_CURRENT_BINARY_DIR})

# ------------------- Source files --------------------

add_subdirectory(node_processor)

add_library(
  PugsLanguage
  ASTBuilder.cpp
  ASTDotPrinter.cpp
  ASTNodeAffectationExpressionBuilder.cpp
  ASTNodeBinaryOperatorExpressionBuilder.cpp
  ASTNodeDataType.cpp
  ASTNodeDataTypeBuilder.cpp
  ASTNodeDataTypeChecker.cpp
  ASTNodeDeclarationToAffectationConverter.cpp
  ASTNodeDeclarationCleaner.cpp
  ASTNodeEmptyBlockCleaner.cpp
  ASTNodeExpressionBuilder.cpp
  ASTNodeIncDecExpressionBuilder.cpp
  ASTNodeJumpPlacementChecker.cpp
  ASTNodeUnaryOperatorExpressionBuilder.cpp
  ASTNodeValueBuilder.cpp
  ASTPrinter.cpp
  ASTSymbolTableBuilder.cpp
  ASTSymbolInitializationChecker.cpp
  PugsParser.cpp)

# Additional dependencies
add_dependencies(PugsLanguage
  PugsUtils)
