From 2c290709d867ffd54b0011373de292b8e86a3509 Mon Sep 17 00:00:00 2001 From: jeresig Date: Wed, 26 Jan 2011 16:36:33 -0500 Subject: [PATCH] Make sure that init is run before jquery is built (avoiding weird warnings when running 'make jquery' or 'make min'). Additionally only attempt to run JSLint or the minifier if NodeJS is installed (avoiding a weird warning when you first run 'make' or 'make all'). --- Makefile | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index c708db5a..4dcc9e35 100644 --- a/Makefile +++ b/Makefile @@ -43,7 +43,7 @@ VER = sed "s/@VERSION/${JQ_VER}/" DATE=$(shell git log -1 --pretty=format:%ad) -all: init jquery min lint +all: jquery min lint @@echo "jQuery build complete." ${DIST_DIR}: @@ -68,12 +68,16 @@ define clone_or_pull endef -init: +${QUNIT_DIR}: $(call clone_or_pull, ${QUNIT_DIR}, git://github.com/jquery/qunit.git) + +${SIZZLE_DIR}: $(call clone_or_pull, ${SIZZLE_DIR}, git://github.com/jeresig/sizzle.git) -jquery: ${JQ} -jq: ${JQ} +init: ${QUNIT_DIR} ${SIZZLE_DIR} + +jquery: init ${JQ} +jq: init ${JQ} ${JQ}: ${MODULES} | ${DIST_DIR} @@echo "Building" ${JQ} @@ -88,18 +92,27 @@ ${SRC_DIR}/selector.js: ${SIZZLE_DIR}/sizzle.js @@echo "Building selector code from Sizzle" @@sed '/EXPOSE/r src/sizzle-jquery.js' ${SIZZLE_DIR}/sizzle.js | grep -v window.Sizzle > ${SRC_DIR}/selector.js -lint: ${JQ} - @@echo "Checking jQuery against JSLint..." - @@${JS_ENGINE} build/jslint-check.js +lint: jquery + @@if test ! -z ${JS_ENGINE}; then \ + echo "Checking jQuery against JSLint..."; \ + ${JS_ENGINE} build/jslint-check.js; \ + else \ + echo "You must have NodeJS installed in order to test jQuery against JSLint."; \ + fi min: ${JQ_MIN} -${JQ_MIN}: ${JQ} - @@echo "Building" ${JQ_MIN} - @@${COMPILER} ${JQ} > ${JQ_MIN}.tmp - @@echo ";" >> ${JQ_MIN}.tmp - @@sed 's/\*\/(/*\/ʩ(/' ${JQ_MIN}.tmp | tr "ʩ" "\n" > ${JQ_MIN} - @@rm -rf ${JQ_MIN}.tmp +${JQ_MIN}: jquery + @@if test ! -z ${JS_ENGINE}; then \ + echo "Minifying jQuery" ${JQ_MIN}; \ + ${COMPILER} ${JQ} > ${JQ_MIN}.tmp; \ + echo ";" >> ${JQ_MIN}.tmp; \ + sed 's/\*\/(/*\/ʩ(/' ${JQ_MIN}.tmp | tr "ʩ" "\n" > ${JQ_MIN}; \ + rm -rf ${JQ_MIN}.tmp; \ + else \ + echo "You must have NodeJS installed in order to minify jQuery."; \ + fi + clean: @@echo "Removing Distribution directory:" ${DIST_DIR}