Diff
checker
Text
Text
Bilder
Dokumente
Excel
Ordner
Legal
Enterprise
Desktop-App
Preise
Einloggen
Diffchecker Desktop herunterladen
Texte vergleichen
Finde den Unterschied zwischen zwei Textdateien
Werkzeuge
Verlauf
Live-Editor
Leerzeichen ausblenden
Gleiches ausblenden
Zeilenumbruch aus
Ansicht
Zweispaltig
Einspaltig
Vergleichsgenauigkeit
Intelligent
Wort
Zeichen
Textstile
Darstellung ändern
Syntaxhervorhebung
Syntax auswählen
Ignorieren
Text umwandeln
Zur ersten Änderung
Eingabe bearbeiten
Diffchecker Desktop
Der sicherste Weg, Diffchecker zu nutzen. Hol dir die Desktop-App: Deine Diffs verlassen nie deinen Computer!
Desktop holen
txiki.js Makefile FFI support removed
Erstellt
vor 10 Monaten
Diff läuft nie ab
Löschen
Exportieren
Teilen
Erklären
8 Entfernungen
Zeilen
Gesamt
Entfernt
Zeichen
Gesamt
Entfernt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
183 Zeilen
Kopieren
2 Hinzufügungen
Zeilen
Gesamt
Hinzugefügt
Zeichen
Gesamt
Hinzugefügt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
177 Zeilen
Kopieren
BUILD_DIR=build
BUILD_DIR=build
BUILDTYPE?=Release
BUILDTYPE?=Release
JOBS?=$(shell getconf _NPROCESSORS_ONLN)
JOBS?=$(shell getconf _NPROCESSORS_ONLN)
ifeq ($(JOBS),)
ifeq ($(JOBS),)
JOBS := $(shell sysctl -n hw.ncpu)
JOBS := $(shell sysctl -n hw.ncpu)
endif
endif
ifeq ($(JOBS),)
ifeq ($(JOBS),)
JOBS := $(shell nproc)
JOBS := $(shell nproc)
endif
endif
ifeq ($(JOBS),)
ifeq ($(JOBS),)
JOBS := 4
JOBS := 4
endif
endif
TJS=$(BUILD_DIR)/tjs
TJS=$(BUILD_DIR)/tjs
QJSC=$(BUILD_DIR)/tjsc
QJSC=$(BUILD_DIR)/tjsc
STDLIB_MODULES=$(wildcard src/js/stdlib/*.js)
STDLIB_MODULES=$(wildcard src/js/stdlib/*.js)
ESBUILD?=npx esbuild
ESBUILD?=npx esbuild
ESBUILD_PARAMS_COMMON=--target=es2023 --platform=neutral --format=esm --main-fields=main,module
ESBUILD_PARAMS_COMMON=--target=es2023 --platform=neutral --format=esm --main-fields=main,module
ESBUILD_PARAMS_MINIFY=--minify --keep-names
ESBUILD_PARAMS_MINIFY=--minify --keep-names
QJSC_PARAMS_STIP=-s
QJSC_PARAMS_STIP=-s
JS_NO_STRIP?=0
JS_NO_STRIP?=0
BUILD_MACOS_MULTIARCH?=0
BUILD_MACOS_MULTIARCH?=0
EXTRA_CMAKE_PARAMS=
EXTRA_CMAKE_PARAMS=
ifeq ($(JS_NO_STRIP),1)
ifeq ($(JS_NO_STRIP),1)
ESBUILD_PARAMS_MINIFY=
ESBUILD_PARAMS_MINIFY=
QJSC_PARAMS_STIP=
QJSC_PARAMS_STIP=
endif
endif
ifeq ($(BUILD_MACOS_MULTIARCH),1)
ifeq ($(BUILD_MACOS_MULTIARCH),1)
EXTRA_CMAKE_PARAMS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
EXTRA_CMAKE_PARAMS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
endif
endif
all: $(TJS)
all: $(TJS)
$(BUILD_DIR):
$(BUILD_DIR):
cmake -B $(BUILD_DIR) -DCMAKE_BUILD_TYPE=$(BUILDTYPE) $(EXTRA_CMAKE_PARAMS)
cmake -B $(BUILD_DIR) -DCMAKE_BUILD_TYPE=$(BUILDTYPE) $(EXTRA_CMAKE_PARAMS)
$(TJS): $(BUILD_DIR)
$(TJS): $(BUILD_DIR)
cmake --build $(BUILD_DIR) -j $(JOBS)
cmake --build $(BUILD_DIR) -j $(JOBS)
$(QJSC): $(BUILD_DIR)
$(QJSC): $(BUILD_DIR)
cmake --build $(BUILD_DIR) --target tjsc -j $(JOBS)
cmake --build $(BUILD_DIR) --target tjsc -j $(JOBS)
src/bundles/js/core/polyfills.js: src/js/polyfills/*.js
src/bundles/js/core/polyfills.js: src/js/polyfills/*.js
$(ESBUILD) src/js/polyfills/index.js \
$(ESBUILD) src/js/polyfills/index.js \
--bundle \
--bundle \
--metafile=$@.json \
--metafile=$@.json \
--outfile=$@ \
--outfile=$@ \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_COMMON)
$(ESBUILD_PARAMS_COMMON)
src/bundles/c/core/polyfills.c: $(QJSC) src/bundles/js/core/polyfills.js
src/bundles/c/core/polyfills.c: $(QJSC) src/bundles/js/core/polyfills.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "polyfills.js" \
-n "polyfills.js" \
-p tjs__ \
-p tjs__ \
src/bundles/js/core/polyfills.js
src/bundles/js/core/polyfills.js
src/bundles/js/core/core.js: src/js/core/*.js
src/bundles/js/core/core.js: src/js/core/*.js
$(ESBUILD) src/js/core/index.js \
$(ESBUILD) src/js/core/index.js \
--bundle \
--bundle \
--metafile=$@.json \
--metafile=$@.json \
--outfile=$@ \
--outfile=$@ \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_COMMON)
$(ESBUILD_PARAMS_COMMON)
src/bundles/c/core/core.c: $(QJSC) src/bundles/js/core/core.js
src/bundles/c/core/core.c: $(QJSC) src/bundles/js/core/core.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "core.js" \
-n "core.js" \
-p tjs__ \
-p tjs__ \
src/bundles/js/core/core.js
src/bundles/js/core/core.js
src/bundles/js/core/run-main.js: src/js/run-main/*.js
src/bundles/js/core/run-main.js: src/js/run-main/*.js
$(ESBUILD) src/js/run-main/index.js \
$(ESBUILD) src/js/run-main/index.js \
--bundle \
--bundle \
--metafile=$@.json \
--metafile=$@.json \
--outfile=$@ \
--outfile=$@ \
--external:tjs:* \
--external:tjs:* \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_COMMON)
$(ESBUILD_PARAMS_COMMON)
src/bundles/c/core/run-main.c: $(QJSC) src/bundles/js/core/run-main.js
src/bundles/c/core/run-main.c: $(QJSC) src/bundles/js/core/run-main.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "run-main.js" \
-n "run-main.js" \
-p tjs__ \
-p tjs__ \
src/bundles/js/core/run-main.js
src/bundles/js/core/run-main.js
src/bundles/js/core/run-repl.js: src/js/run-repl/*.js
src/bundles/js/core/run-repl.js: src/js/run-repl/*.js
$(ESBUILD) src/js/run-repl/index.js \
$(ESBUILD) src/js/run-repl/index.js \
--bundle \
--bundle \
--metafile=$@.json \
--metafile=$@.json \
--outfile=$@ \
--outfile=$@ \
--external:tjs:* \
--external:tjs:* \
--log-override:direct-eval=silent \
--log-override:direct-eval=silent \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_COMMON)
$(ESBUILD_PARAMS_COMMON)
src/bundles/c/core/run-repl.c: $(QJSC) src/bundles/js/core/run-repl.js
src/bundles/c/core/run-repl.c: $(QJSC) src/bundles/js/core/run-repl.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "run-repl.js" \
-n "run-repl.js" \
-p tjs__ \
-p tjs__ \
src/bundles/js/core/run-repl.js
src/bundles/js/core/run-repl.js
src/bundles/c/core/worker-bootstrap.c: $(QJSC) src/js/worker/worker-bootstrap.js
src/bundles/c/core/worker-bootstrap.c: $(QJSC) src/js/worker/worker-bootstrap.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) \
$(QJSC) \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "worker-bootstrap.js" \
-n "worker-bootstrap.js" \
-p tjs__ \
-p tjs__ \
src/js/worker/worker-bootstrap.js
src/js/worker/worker-bootstrap.js
core: src/bundles/c/core/polyfills.c src/bundles/c/core/core.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c
core: src/bundles/c/core/polyfills.c src/bundles/c/core/core.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c
src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js
src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "tjs:$(basename $(notdir $@))" \
-n "tjs:$(basename $(notdir $@))" \
-p tjs__ \
-p tjs__ \
src/bundles/js/stdlib/$(basename $(notdir $@)).js
src/bundles/js/stdlib/$(basename $(notdir $@)).js
Kopieren
Kopiert
Kopieren
Kopiert
src/bundles/js/stdlib/%.js: src/js/stdlib/*.js src/js/stdlib/ffi/*.js
$(ESBUILD) src/js/stdlib/$(notdir $@) \
--bundle \
--outfile=$@ \
--external:buffer \
--external:crypto \
$(ESBUILD_PARAMS_MINIFY) \
$(ESBUILD_PARAMS_COMMON)
src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js
src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js
@mkdir -p $(basename $(dir $@))
@mkdir -p $(basename $(dir $@))
$(QJSC) -m \
$(QJSC) -m \
$(QJSC_PARAMS_STIP) \
$(QJSC_PARAMS_STIP) \
-o $@ \
-o $@ \
-n "tjs:$(basename $(notdir $@))" \
-n "tjs:$(basename $(notdir $@))" \
-p tjs__ \
-p tjs__ \
src/bundles/js/stdlib/$(basename $(notdir $@)).js
src/bundles/js/stdlib/$(basename $(notdir $@)).js
stdlib: $(addprefix src/bundles/c/stdlib/, $(patsubst %.js, %.c, $(notdir $(STDLIB_MODULES))))
stdlib: $(addprefix src/bundles/c/stdlib/, $(patsubst %.js, %.c, $(notdir $(STDLIB_MODULES))))
js: core stdlib
js: core stdlib
install: $(TJS)
install: $(TJS)
cmake --build $(BUILD_DIR) --target install
cmake --build $(BUILD_DIR) --target install
clean: $(BUILD_DIR)
clean: $(BUILD_DIR)
cmake --build $(BUILD_DIR) --target clean
cmake --build $(BUILD_DIR) --target clean
debug:
debug:
BUILDTYPE=Debug $(MAKE)
BUILDTYPE=Debug $(MAKE)
distclean:
distclean:
@rm -rf $(BUILD_DIR)
@rm -rf $(BUILD_DIR)
@rm -rf src/bundles/js/
@rm -rf src/bundles/js/
format:
format:
clang-format -i src/*.{c,h}
clang-format -i src/*.{c,h}
test:
test:
./$(BUILD_DIR)/tjs test tests/
./$(BUILD_DIR)/tjs test tests/
test-advanced:
test-advanced:
cd tests/advanced && npm install
cd tests/advanced && npm install
./$(BUILD_DIR)/tjs --stack-size 10485760 test tests/advanced/
./$(BUILD_DIR)/tjs --stack-size 10485760 test tests/advanced/
.PRECIOUS: src/bundles/js/core/%.js src/bundles/js/stdlib/%.js
.PRECIOUS: src/bundles/js/core/%.js src/bundles/js/stdlib/%.js
.PHONY: all js debug install clean distclean format test test-advanced core stdlib $(TJS)
.PHONY: all js debug install clean distclean format test test-advanced core stdlib $(TJS)
Kopieren
Kopiert
Kopieren
Kopiert
Gespeicherte Diffs
Originaltext
Datei öffnen
BUILD_DIR=build BUILDTYPE?=Release JOBS?=$(shell getconf _NPROCESSORS_ONLN) ifeq ($(JOBS),) JOBS := $(shell sysctl -n hw.ncpu) endif ifeq ($(JOBS),) JOBS := $(shell nproc) endif ifeq ($(JOBS),) JOBS := 4 endif TJS=$(BUILD_DIR)/tjs QJSC=$(BUILD_DIR)/tjsc STDLIB_MODULES=$(wildcard src/js/stdlib/*.js) ESBUILD?=npx esbuild ESBUILD_PARAMS_COMMON=--target=es2023 --platform=neutral --format=esm --main-fields=main,module ESBUILD_PARAMS_MINIFY=--minify --keep-names QJSC_PARAMS_STIP=-s JS_NO_STRIP?=0 BUILD_MACOS_MULTIARCH?=0 EXTRA_CMAKE_PARAMS= ifeq ($(JS_NO_STRIP),1) ESBUILD_PARAMS_MINIFY= QJSC_PARAMS_STIP= endif ifeq ($(BUILD_MACOS_MULTIARCH),1) EXTRA_CMAKE_PARAMS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" endif all: $(TJS) $(BUILD_DIR): cmake -B $(BUILD_DIR) -DCMAKE_BUILD_TYPE=$(BUILDTYPE) $(EXTRA_CMAKE_PARAMS) $(TJS): $(BUILD_DIR) cmake --build $(BUILD_DIR) -j $(JOBS) $(QJSC): $(BUILD_DIR) cmake --build $(BUILD_DIR) --target tjsc -j $(JOBS) src/bundles/js/core/polyfills.js: src/js/polyfills/*.js $(ESBUILD) src/js/polyfills/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/polyfills.c: $(QJSC) src/bundles/js/core/polyfills.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "polyfills.js" \ -p tjs__ \ src/bundles/js/core/polyfills.js src/bundles/js/core/core.js: src/js/core/*.js $(ESBUILD) src/js/core/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/core.c: $(QJSC) src/bundles/js/core/core.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "core.js" \ -p tjs__ \ src/bundles/js/core/core.js src/bundles/js/core/run-main.js: src/js/run-main/*.js $(ESBUILD) src/js/run-main/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ --external:tjs:* \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/run-main.c: $(QJSC) src/bundles/js/core/run-main.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "run-main.js" \ -p tjs__ \ src/bundles/js/core/run-main.js src/bundles/js/core/run-repl.js: src/js/run-repl/*.js $(ESBUILD) src/js/run-repl/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ --external:tjs:* \ --log-override:direct-eval=silent \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/run-repl.c: $(QJSC) src/bundles/js/core/run-repl.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "run-repl.js" \ -p tjs__ \ src/bundles/js/core/run-repl.js src/bundles/c/core/worker-bootstrap.c: $(QJSC) src/js/worker/worker-bootstrap.js @mkdir -p $(basename $(dir $@)) $(QJSC) \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "worker-bootstrap.js" \ -p tjs__ \ src/js/worker/worker-bootstrap.js core: src/bundles/c/core/polyfills.c src/bundles/c/core/core.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "tjs:$(basename $(notdir $@))" \ -p tjs__ \ src/bundles/js/stdlib/$(basename $(notdir $@)).js src/bundles/js/stdlib/%.js: src/js/stdlib/*.js src/js/stdlib/ffi/*.js $(ESBUILD) src/js/stdlib/$(notdir $@) \ --bundle \ --outfile=$@ \ --external:buffer \ --external:crypto \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "tjs:$(basename $(notdir $@))" \ -p tjs__ \ src/bundles/js/stdlib/$(basename $(notdir $@)).js stdlib: $(addprefix src/bundles/c/stdlib/, $(patsubst %.js, %.c, $(notdir $(STDLIB_MODULES)))) js: core stdlib install: $(TJS) cmake --build $(BUILD_DIR) --target install clean: $(BUILD_DIR) cmake --build $(BUILD_DIR) --target clean debug: BUILDTYPE=Debug $(MAKE) distclean: @rm -rf $(BUILD_DIR) @rm -rf src/bundles/js/ format: clang-format -i src/*.{c,h} test: ./$(BUILD_DIR)/tjs test tests/ test-advanced: cd tests/advanced && npm install ./$(BUILD_DIR)/tjs --stack-size 10485760 test tests/advanced/ .PRECIOUS: src/bundles/js/core/%.js src/bundles/js/stdlib/%.js .PHONY: all js debug install clean distclean format test test-advanced core stdlib $(TJS)
Bearbeitung
Datei öffnen
BUILD_DIR=build BUILDTYPE?=Release JOBS?=$(shell getconf _NPROCESSORS_ONLN) ifeq ($(JOBS),) JOBS := $(shell sysctl -n hw.ncpu) endif ifeq ($(JOBS),) JOBS := $(shell nproc) endif ifeq ($(JOBS),) JOBS := 4 endif TJS=$(BUILD_DIR)/tjs QJSC=$(BUILD_DIR)/tjsc STDLIB_MODULES=$(wildcard src/js/stdlib/*.js) ESBUILD?=npx esbuild ESBUILD_PARAMS_COMMON=--target=es2023 --platform=neutral --format=esm --main-fields=main,module ESBUILD_PARAMS_MINIFY=--minify --keep-names QJSC_PARAMS_STIP=-s JS_NO_STRIP?=0 BUILD_MACOS_MULTIARCH?=0 EXTRA_CMAKE_PARAMS= ifeq ($(JS_NO_STRIP),1) ESBUILD_PARAMS_MINIFY= QJSC_PARAMS_STIP= endif ifeq ($(BUILD_MACOS_MULTIARCH),1) EXTRA_CMAKE_PARAMS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" endif all: $(TJS) $(BUILD_DIR): cmake -B $(BUILD_DIR) -DCMAKE_BUILD_TYPE=$(BUILDTYPE) $(EXTRA_CMAKE_PARAMS) $(TJS): $(BUILD_DIR) cmake --build $(BUILD_DIR) -j $(JOBS) $(QJSC): $(BUILD_DIR) cmake --build $(BUILD_DIR) --target tjsc -j $(JOBS) src/bundles/js/core/polyfills.js: src/js/polyfills/*.js $(ESBUILD) src/js/polyfills/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/polyfills.c: $(QJSC) src/bundles/js/core/polyfills.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "polyfills.js" \ -p tjs__ \ src/bundles/js/core/polyfills.js src/bundles/js/core/core.js: src/js/core/*.js $(ESBUILD) src/js/core/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/core.c: $(QJSC) src/bundles/js/core/core.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "core.js" \ -p tjs__ \ src/bundles/js/core/core.js src/bundles/js/core/run-main.js: src/js/run-main/*.js $(ESBUILD) src/js/run-main/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ --external:tjs:* \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/run-main.c: $(QJSC) src/bundles/js/core/run-main.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "run-main.js" \ -p tjs__ \ src/bundles/js/core/run-main.js src/bundles/js/core/run-repl.js: src/js/run-repl/*.js $(ESBUILD) src/js/run-repl/index.js \ --bundle \ --metafile=$@.json \ --outfile=$@ \ --external:tjs:* \ --log-override:direct-eval=silent \ $(ESBUILD_PARAMS_MINIFY) \ $(ESBUILD_PARAMS_COMMON) src/bundles/c/core/run-repl.c: $(QJSC) src/bundles/js/core/run-repl.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "run-repl.js" \ -p tjs__ \ src/bundles/js/core/run-repl.js src/bundles/c/core/worker-bootstrap.c: $(QJSC) src/js/worker/worker-bootstrap.js @mkdir -p $(basename $(dir $@)) $(QJSC) \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "worker-bootstrap.js" \ -p tjs__ \ src/js/worker/worker-bootstrap.js core: src/bundles/c/core/polyfills.c src/bundles/c/core/core.c src/bundles/c/core/run-main.c src/bundles/c/core/run-repl.c src/bundles/c/core/worker-bootstrap.c src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "tjs:$(basename $(notdir $@))" \ -p tjs__ \ src/bundles/js/stdlib/$(basename $(notdir $@)).js src/bundles/c/stdlib/%.c: $(QJSC) src/bundles/js/stdlib/%.js @mkdir -p $(basename $(dir $@)) $(QJSC) -m \ $(QJSC_PARAMS_STIP) \ -o $@ \ -n "tjs:$(basename $(notdir $@))" \ -p tjs__ \ src/bundles/js/stdlib/$(basename $(notdir $@)).js stdlib: $(addprefix src/bundles/c/stdlib/, $(patsubst %.js, %.c, $(notdir $(STDLIB_MODULES)))) js: core stdlib install: $(TJS) cmake --build $(BUILD_DIR) --target install clean: $(BUILD_DIR) cmake --build $(BUILD_DIR) --target clean debug: BUILDTYPE=Debug $(MAKE) distclean: @rm -rf $(BUILD_DIR) @rm -rf src/bundles/js/ format: clang-format -i src/*.{c,h} test: ./$(BUILD_DIR)/tjs test tests/ test-advanced: cd tests/advanced && npm install ./$(BUILD_DIR)/tjs --stack-size 10485760 test tests/advanced/ .PRECIOUS: src/bundles/js/core/%.js src/bundles/js/stdlib/%.js .PHONY: all js debug install clean distclean format test test-advanced core stdlib $(TJS)
Unterschied finden