BUILD_DIR = build
PREFIX = .
-DOCS_DIR = ${PREFIX}/docs
-TEST_DIR = ${PREFIX}/test
DIST_DIR = ${PREFIX}/dist
-SPEED_DIR = ${PREFIX}/speed
BASE_FILES = ${SRC_DIR}/core.js\
+ ${SRC_DIR}/support.js\
${SRC_DIR}/data.js\
+ ${SRC_DIR}/queue.js\
+ ${SRC_DIR}/attributes.js\
${SRC_DIR}/event.js\
- ${SRC_DIR}/support.js\
${SRC_DIR}/selector.js\
${SRC_DIR}/traversing.js\
- ${SRC_DIR}/attributes.js\
${SRC_DIR}/manipulation.js\
${SRC_DIR}/css.js\
${SRC_DIR}/ajax.js\
- ${SRC_DIR}/fx.js\
+ ${SRC_DIR}/effects.js\
${SRC_DIR}/offset.js\
${SRC_DIR}/dimensions.js
${SRC_DIR}/outro.js
JQ = ${DIST_DIR}/jquery.js
-JQ_LITE = ${DIST_DIR}/jquery.lite.js
JQ_MIN = ${DIST_DIR}/jquery.min.js
JQ_VER = `cat version.txt`
VER = sed s/@VERSION/${JQ_VER}/
-MINJAR = java -jar ${BUILD_DIR}/yuicompressor-2.4.2.jar
+RHINO = java -jar ${BUILD_DIR}/js.jar
+MINJAR = java -jar ${BUILD_DIR}/google-compiler-20091218.jar
-DATE=`svn info . | grep Date: | sed 's/.*: //g'`
-REV=`svn info . | grep Rev: | sed 's/.*: //g'`
+DATE=`git log -1 | grep Date: | sed 's/[^:]*: *//'`
-all: jquery test min speed
+all: jquery lint min
@@echo "jQuery build complete."
${DIST_DIR}:
@@mkdir -p ${DIST_DIR}
-jquery: ${DIST_DIR} ${JQ}
+init:
+ @@echo "Grabbing external dependencies..."
+ @@if test ! -d test/qunit/.git; then git clone git://github.com/jquery/qunit.git test/qunit; fi
+ @@if test ! -d src/sizzle/.git; then git clone git://github.com/jeresig/sizzle.git src/sizzle; fi
+ - @@cd src/sizzle && git pull origin master > /dev/null 2>&1
+ - @@cd test/qunit && git pull origin master > /dev/null 2>&1
-${JQ}: ${MODULES}
+jquery: ${DIST_DIR} selector ${JQ}
+jq: ${DIST_DIR} ${JQ}
+
+${JQ}: selector ${MODULES}
@@echo "Building" ${JQ}
@@mkdir -p ${DIST_DIR}
+
@@cat ${MODULES} | \
sed 's/Date:./&'"${DATE}"'/' | \
- sed 's/Revision:./&'"${REV}"'/' | \
${VER} > ${JQ};
- @@echo ${JQ} "Built"
- @@echo
-
-lite: ${JQ_LITE}
-
-${JQ_LITE}: ${JQ}
- @@echo "Building" ${JQ_LITE}
+selector: ${DIST_DIR} init
+ @@echo "Building selector code from Sizzle"
+ @@sed '/EXPOSE/r src/sizzle-jquery.js' src/sizzle/sizzle.js | grep -v window.Sizzle > src/selector.js
- @@cp ${JQ} ${JQ_LITE}
-
- @@echo ${JQ_LITE} "Built"
- @@echo
+lint: ${JQ}
+ @@echo "Checking jQuery against JSLint..."
+ @@${RHINO} build/jslint-check.js
min: ${JQ_MIN}
${JQ_MIN}: ${JQ}
@@echo "Building" ${JQ_MIN}
- @@echo " - Compressing using Minifier"
- @@${MINJAR} ${JQ} > ${JQ_MIN}
-
- @@echo ${JQ_MIN} "Built"
- @@echo
-
-test: ${JQ}
- @@echo "Building Test Suite"
- @@echo "Test Suite Built"
- @@echo
- git submodule init
- git submodule update
-
-speed: ${JQ}
- @@echo "Building Speed Test Suite"
-
- @@echo " - Making Speed Test Suite Directory:" ${SPEED_DIR}
- @@mkdir -p ${SPEED_DIR}
-
- @@echo " - Copying over script files."
- @@cp -f ${BUILD_DIR}/speed/index.html ${SPEED_DIR}
- @@cp -f ${BUILD_DIR}/speed/benchmarker.css ${SPEED_DIR}
- @@cp -f ${BUILD_DIR}/speed/benchmarker.js ${SPEED_DIR}
- @@cp -f ${BUILD_DIR}/speed/jquery-basis.js ${SPEED_DIR}
-
- @@echo "Speed Test Suite Built"
- @@echo
+ @@head -15 ${JQ} > ${JQ_MIN}
+ @@${MINJAR} --js ${JQ} --warning_level QUIET >> ${JQ_MIN}
clean:
@@echo "Removing Distribution directory:" ${DIST_DIR}
@@rm -rf ${DIST_DIR}
- @@echo "Removing Documentation directory:" ${DOCS_DIR}
- @@rm -rf ${DOCS_DIR}
+ @@echo "Removing built copy of Sizzle"
+ @@rm src/selector.js
- @@echo "Removing Speed Test Suite directory:" ${SPEED_DIR}
- @@rm -rf ${SPEED_DIR}
+ @@echo "Removing cloned directories"
+ @@rm -rf test/qunit src/sizzle