mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-09 01:56:21 +00:00
This is pretty heavy and unoptimized, but it will do the trick for now. Basically, Heap now has a HashTable<HandleImpl*> and you can call JS::make_handle(T*) to construct a Handle<T> that guarantees that the pointee will always survive GC until the Handle<T> is destroyed.
32 lines
729 B
Makefile
32 lines
729 B
Makefile
OBJS = \
|
|
AST.o \
|
|
Heap/Handle.o \
|
|
Heap/Heap.o \
|
|
Heap/HeapBlock.o \
|
|
Interpreter.o \
|
|
Lexer.o \
|
|
Parser.o \
|
|
Runtime/Cell.o \
|
|
Runtime/ConsoleObject.o \
|
|
Runtime/Function.o \
|
|
Runtime/GlobalObject.o \
|
|
Runtime/NativeFunction.o \
|
|
Runtime/NativeProperty.o \
|
|
Runtime/Object.o \
|
|
Runtime/ObjectPrototype.o \
|
|
Runtime/PrimitiveString.o \
|
|
Runtime/ScriptFunction.o \
|
|
Runtime/StringObject.o \
|
|
Runtime/StringPrototype.o \
|
|
Runtime/Value.o \
|
|
Token.o
|
|
|
|
LIBRARY = libjs.a
|
|
|
|
install:
|
|
mkdir -p $(SERENITY_BASE_DIR)/Root/usr/include/LibJS/
|
|
cp *.h $(SERENITY_BASE_DIR)/Root/usr/include/LibJS/
|
|
cp $(LIBRARY) $(SERENITY_BASE_DIR)/Root/usr/lib/
|
|
|
|
include ../../Makefile.common
|