--- title: Make for assets hljs_languages: [makefile] --- ## Basic compiling ```makefile bin := ./node_modules/.bin all: build/foo.js build/%.js: src/%.coffee @$(bin)/coffee < $^ > $@ ``` ## Stylus + Autoprefixer bin := ./node_modules/.bin stylus := $(bin)/stylus autoprefixer := $(bin)/autoprefixer styl_files := $(shell find web/ -name "*.styl") all: public/app.css public/app.css: css/app.styl %.css: %.styl $(styl_files) @$(stylus) $< | $(autoprefixer) -b "> 1%" > $@ ## Hint hint: $(js_files) ## Watching watch: @echo "... watching for changes" @while true; do make -s; sleep 1; done ## Browserify js_files := $(shell find web/ -name "*.js") public/app.js: web/app.js public/vendor.js: web/vendor.js public/%.js: web/%.js $(js_files) $(browserify) -t [ cssify -x .css ] $< > $@