# https://stackoverflow.com/a/6273809 run_options := $(filter-out $@,$(MAKECMDGOALS)) .PHONY: all clean test lint chromium firefox npm dig mv3 \ compare maxcost medcost mincost modifiers record wasm sources := $(wildcard assets/resources/* src/* src/*/* src/*/*/* src/*/*/*/*) platform := $(wildcard platform/* platform/*/*) assets := $(wildcard submodules/uAssets/* \ submodules/uAssets/*/* \ submodules/uAssets/*/*/* \ submodules/uAssets/*/*/*/*) all: chromium firefox npm dist/build/uBlock0.chromium: tools/make-chromium.sh $(sources) $(platform) $(assets) tools/make-chromium.sh # Build the extension for Chromium. chromium: dist/build/uBlock0.chromium dist/build/uBlock0.firefox: tools/make-firefox.sh $(sources) $(platform) $(assets) tools/make-firefox.sh all # Build the extension for Firefox. firefox: dist/build/uBlock0.firefox dist/build/uBlock0.npm: tools/make-nodejs.sh $(sources) $(platform) $(assets) tools/make-npm.sh # Build the Node.js package. npm: dist/build/uBlock0.npm lint: npm cd dist/build/uBlock0.npm && npm run lint test: npm cd dist/build/uBlock0.npm && npm run test test-full-battery: npm cd dist/build/uBlock0.npm && npm run test-full-battery check-leaks: npm cd dist/build/uBlock0.npm && npm run check-leaks dist/build/uBlock0.dig: tools/make-nodejs.sh $(sources) $(platform) $(assets) tools/make-dig.sh dig: dist/build/uBlock0.dig cd dist/build/uBlock0.dig && npm install dig-snfe: dig cd dist/build/uBlock0.dig && npm run snfe $(run_options) dist/build/uBlock0.mv3: tools/make-mv3.sh $(sources) $(platform) tools/make-mv3.sh all mv3: dist/build/uBlock0.mv3 # Update submodules. update-submodules: tools/update-submodules.sh clean: rm -rf dist/build tmp/node_modules # Not real targets, just convenient for auto-completion at shell prompt compare: @echo maxcost: @echo medcost: @echo mincost: @echo modifiers: @echo record: @echo wasm: @echo