0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-11-29 11:24:18 +01:00
Bootstrap/Makefile

108 lines
3.3 KiB
Makefile
Raw Normal View History

BOOTSTRAP ?= ./dist/css/bootstrap.css
2013-07-19 03:33:20 +02:00
BOOTSTRAP_MIN ?= ./dist/css/bootstrap.min.css
BOOTSTRAP_LESS ?= ./less/bootstrap.less
DATE=$(shell date +%I:%M%p)
2013-02-15 07:57:25 +01:00
CHECK=\033[32m✔ Done\033[39m
HR=\033[37m--------------------------------------------------\033[39m
PATH := ./node_modules/.bin:$(PATH)
2012-01-23 23:14:16 +01:00
#
# BUILD DOCS
2012-01-23 23:14:16 +01:00
#
build:
2013-02-15 07:57:25 +01:00
@echo "\n\n"
@echo "\033[36mBuilding Bootstrap...\033[39m"
@echo "${HR}"
@printf "Running JSHint on JavaScript..."
@jshint js/*.js --config js/.jshintrc
@jshint js/tests/unit/*.js --config js/.jshintrc
@echo " ${CHECK}"
@printf "Compiling LESS with Recess..."
@recess --compile ${BOOTSTRAP_LESS} > ${BOOTSTRAP}
2013-07-19 03:33:20 +02:00
@recess --compress ${BOOTSTRAP_LESS} > ${BOOTSTRAP_MIN}
@echo " ${CHECK}"
@printf "Prepping documentation assets..."
@cp js/tests/vendor/jquery.js assets/js/
@echo " ${CHECK}"
@printf "Compiling and minifying JavaScript..."
2013-07-26 06:49:19 +02:00
@echo "if (!jQuery) throw new Error(\"Bootstrap requires jQuery\")\n" | cat - js/transition.js js/alert.js js/button.js js/carousel.js js/collapse.js js/dropdown.js js/modal.js js/tooltip.js js/popover.js js/scrollspy.js js/tab.js js/affix.js > dist/js/bootstrap.js
@uglifyjs -nc dist/js/bootstrap.js > dist/js/bootstrap.min.tmp.js
@echo "/**\n* Bootstrap.js v3.0.0 by @fat & @mdo\n* Copyright 2013 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > dist/js/copyright.js
@cat dist/js/copyright.js dist/js/bootstrap.min.tmp.js > dist/js/bootstrap.min.js
@rm dist/js/copyright.js dist/js/bootstrap.min.tmp.js
@echo " ${CHECK}"
2013-02-15 07:57:25 +01:00
@echo "${HR}"
@echo "\033[36mSuccess!\n\033[39m"
@echo "\033[37mThanks for using Bootstrap,"
@echo "<3 @mdo and @fat\n\033[39m"
#
# RUN JSHINT & QUNIT TESTS IN PHANTOMJS
#
test:
jshint js/*.js --config js/.jshintrc
jshint js/tests/unit/*.js --config js/.jshintrc
node js/tests/server.js &
phantomjs js/tests/phantom.js "http://localhost:3000/js/tests"
kill -9 `cat js/tests/pid.txt`
rm js/tests/pid.txt
#
# CLEANS THE ROOT DIRECTORY OF PRIOR BUILDS
#
clean:
rm -r bootstrap
2012-01-23 23:14:16 +01:00
#
2012-01-30 01:33:29 +01:00
# BUILD SIMPLE BOOTSTRAP DIRECTORY
# recess & uglifyjs are required
#
2013-06-28 14:19:46 +02:00
bootstrap: bootstrap-css bootstrap-js
#
# JS COMPILE
#
bootstrap-js: bootstrap/js/*.js
bootstrap/js/*.js: js/*.js
2012-01-30 01:33:29 +01:00
mkdir -p bootstrap/js
2013-05-16 20:06:30 +02:00
cat js/transition.js js/alert.js js/button.js js/carousel.js js/collapse.js js/dropdown.js js/modal.js js/tooltip.js js/popover.js js/scrollspy.js js/tab.js js/affix.js > bootstrap/js/bootstrap.js
uglifyjs -nc bootstrap/js/bootstrap.js > bootstrap/js/bootstrap.min.tmp.js
echo "/*!\n* Bootstrap.js by @fat & @mdo\n* Copyright 2013 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > bootstrap/js/copyright.js
2012-03-08 20:39:00 +01:00
cat bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js > bootstrap/js/bootstrap.min.js
rm bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js
#
2013-05-21 23:43:12 +02:00
# CSS COMPILE
#
bootstrap-css: bootstrap/css/*.css
bootstrap/css/*.css: less/*.less
mkdir -p bootstrap/css
recess --compile ${BOOTSTRAP_LESS} > bootstrap/css/bootstrap.css
recess --compress ${BOOTSTRAP_LESS} > bootstrap/css/bootstrap.min.css
2012-02-02 01:38:58 +01:00
#
# WATCH LESS FILES
#
watch:
echo "Watching less files..."; \
watchr -e "watch('less/.*\.less') { system 'make' }"
#
# BUILD AND START SERVER
#
run: build
jekyll build && jekyll server
2013-06-28 04:27:44 +02:00
.PHONY: docs watch gh-pages bootstrap-css bootstrap-js