Hacker News new | ask | show | jobs
by Alexqw85 3746 days ago
Make works well for me...

  TMPDIR=$(BASEDIR)/tmp

  THEME=$(BASEDIR)/theme
  THEME_CSS=$(THEME)/css
  THEME_FONT=$(THEME)/fonts
  THEME_JS=$(THEME)/js

  VER_BOOTSTRAP=3.3.6
  VER_FONTAWESOME=4.5.0
  VER_JQUERY=2.2.1

  updatedeps: $(TMPDIR) bootstrap fontawesome jquery

  bootstrap:
	curl -L -o $(TMPDIR)/bs.zip https://github.com/twbs/bootstrap/releases/download/v$(VER_BOOTSTRAP)/bootstrap-$(VER_BOOTSTRAP)-dist.zip
	unzip -j $(TMPDIR)/bs.zip bootstrap-*/js/bootstrap.min.js -d $(THEME_JS)
	unzip -j $(TMPDIR)/bs.zip bootstrap-*/css/bootstrap.min.css -d $(THEME_CSS)

  fontawesome:
	curl -L -o $(TMPDIR)/fa.zip https://fortawesome.github.io/Font-Awesome/assets/font-awesome-$(VER_FONTAWESOME).zip
	unzip -j $(TMPDIR)/fa.zip font-awesome-*/css/*.min.css -d $(THEME_CSS)
	unzip -j $(TMPDIR)/fa.zip font-awesome-*/fonts/*webfont* -d $(THEME_FONT)

  jquery:
	curl -L -o $(THEME_JS)/jquery.min.js http://code.jquery.com/jquery-$(VER_JQUERY).min.js
1 comments

This is actually a shell script in disguise. If this is all you do with make, I suggest you make this into a shell script:

  <Makefile sed -E 's/.*:$//; s/\(|\)//g; s/^updatedeps:.*/mkdir -p $TMPDIR/' > update-deps.sh
  BASEDIR=$PWD sh ./update-deps.sh
Make is for generating output from interdependent input. It can be used for minifying your JS, or compiling your CoffeeScript in to js, or your sass (but that is handled mostly by respective compilers, tho I prefer running the compiler myself) (also, I don't use coffeescript or sass, so IDK if I'm mistaken).