all:
	make build
	make install

install:
	zip -r application_embroidery.zip . -x "lib/vendor/*"
	mv application_embroidery.zip ../../../dist/data/state/plugins/

build:
	make deps_embroidery

deps_embroidery:
	[ -d lib/vendor ] || mkdir -p lib/vendor
	[ -d lib/vendor/libembroidery ] || { \
		cd lib/vendor && git clone https://github.com/Embroidermodder/libembroidery.git && cd libembroidery; \
		emcmake cmake -B build -DCMAKE_BUILD_TYPE=Release; \
		emmake make -C build -j 8; \
	}
	emcc -g -c ./loader_embroidery.c -I./lib/vendor/libembroidery/src/
	emcc -g ./loader_embroidery.o lib/vendor/libembroidery/build/libembroidery_static.a -o ./lib/embroidery_wasm.js -s EXPORT_ES6=1 -s "EXPORTED_FUNCTIONS=['_main']" -s "EXPORTED_RUNTIME_METHODS=['FS', 'callMain']" -s INVOKE_RUN=0 -s ALLOW_MEMORY_GROWTH=1
