set(SOURCES
    AST.cpp
    Console.cpp
    Heap/Allocator.cpp
    Heap/Handle.cpp
    Heap/HeapBlock.cpp
    Heap/Heap.cpp
    Interpreter.cpp
    Lexer.cpp
    MarkupGenerator.cpp
    Parser.cpp
    Runtime/Array.cpp
    Runtime/ArrayConstructor.cpp
    Runtime/ArrayIterator.cpp
    Runtime/ArrayIteratorPrototype.cpp
    Runtime/ArrayPrototype.cpp
    Runtime/BigInt.cpp
    Runtime/BigIntConstructor.cpp
    Runtime/BigIntObject.cpp
    Runtime/BigIntPrototype.cpp
    Runtime/BooleanConstructor.cpp
    Runtime/BooleanObject.cpp
    Runtime/BooleanPrototype.cpp
    Runtime/BoundFunction.cpp
    Runtime/Cell.cpp
    Runtime/ConsoleObject.cpp
    Runtime/DateConstructor.cpp
    Runtime/Date.cpp
    Runtime/DatePrototype.cpp
    Runtime/ErrorConstructor.cpp
    Runtime/Error.cpp
    Runtime/ErrorPrototype.cpp
    Runtime/ErrorTypes.cpp
    Runtime/Exception.cpp
    Runtime/FunctionConstructor.cpp
    Runtime/Function.cpp
    Runtime/FunctionPrototype.cpp
    Runtime/GlobalObject.cpp
    Runtime/IndexedProperties.cpp
    Runtime/IteratorOperations.cpp
    Runtime/IteratorPrototype.cpp
    Runtime/JSONObject.cpp
    Runtime/LexicalEnvironment.cpp
    Runtime/MarkedValueList.cpp
    Runtime/MathObject.cpp
    Runtime/NativeFunction.cpp
    Runtime/NativeProperty.cpp
    Runtime/NumberConstructor.cpp
    Runtime/NumberObject.cpp
    Runtime/NumberPrototype.cpp
    Runtime/ObjectConstructor.cpp
    Runtime/Object.cpp
    Runtime/ObjectPrototype.cpp
    Runtime/PrimitiveString.cpp
    Runtime/PropertyAttributes.cpp
    Runtime/ProxyConstructor.cpp
    Runtime/ProxyObject.cpp
    Runtime/ProxyPrototype.cpp
    Runtime/Reference.cpp
    Runtime/ReflectObject.cpp
    Runtime/RegExpConstructor.cpp
    Runtime/RegExpObject.cpp
    Runtime/RegExpPrototype.cpp
    Runtime/ScriptFunction.cpp
    Runtime/Shape.cpp
    Runtime/StringConstructor.cpp
    Runtime/StringIterator.cpp
    Runtime/StringIteratorPrototype.cpp
    Runtime/StringObject.cpp
    Runtime/StringPrototype.cpp
    Runtime/Symbol.cpp
    Runtime/SymbolConstructor.cpp
    Runtime/SymbolObject.cpp
    Runtime/SymbolPrototype.cpp
    Runtime/Uint8ClampedArray.cpp
    Runtime/VM.cpp
    Runtime/Value.cpp
    Token.cpp
)

serenity_lib(LibJS js)
target_link_libraries(LibJS LibM LibCore LibCrypto)
