]> source.dussan.org Git - jquery.git/commitdiff
Made a bunch of changes to the build system.
authorJohn Resig <jeresig@gmail.com>
Sun, 13 Aug 2006 18:58:58 +0000 (18:58 +0000)
committerJohn Resig <jeresig@gmail.com>
Sun, 13 Aug 2006 18:58:58 +0000 (18:58 +0000)
Makefile
build/build.js [deleted file]
build/build/build.js [new file with mode: 0644]
build/docs.js [deleted file]
build/docs/docs.js [new file with mode: 0644]
build/docs/style/docs.xsl
build/lite.js [new file with mode: 0644]

index f949811aa898e333286180b4d147b15685994d1a..5b2cae8d9eebf13d9b92df0672c1fd7283f1eda4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,10 @@
 SRC_DIR = src
 BUILD_DIR = build
 
-DOCS_DIR = docs
-DIST_DIR = dist
+PREFIX = .
+DOCS_DIR = ${PREFIX}/docs
+TEST_DIR = ${PREFIX}/test
+DIST_DIR = ${PREFIX}/dist
 
 MODULES = jquery event fx ajax
 JQ = ${DIST_DIR}/jquery.js
@@ -10,44 +12,63 @@ JQ_LITE = ${DIST_DIR}/jquery.lite.js
 JQ_PACK = ${DIST_DIR}/jquery.pack.js
 
 all: jquery lite pack docs
+       @@echo "jQuery build complete."
 
 ${DIST_DIR}:
-       mkdir -p ${DIST_DIR}
+       @@mkdir -p ${DIST_DIR}
 
 jquery: ${DIST_DIR} ${JQ}
 
 ${JQ}:
-       @@echo "Building" ${JQ};
+       @@echo "Building" ${JQ}
 
        @@for f in ${MODULES}; do \
-               echo "Adding module:" $$f;\
+               echo " - Adding module:" $$f;\
                cat ${SRC_DIR}/$$f/$$f.js >> ${JQ};\
        done
 
-       @@echo ${JQ} "built.";
+       @@echo ${JQ} "built."
+       @@echo
 
 lite: ${JQ_LITE}
 
-${JQ_LITE}: ${JQ}
-       @@echo "Building" ${JQ_LITE};
-       java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/lite.js ${JQ} ${JQ_LITE}
-       @@echo ${JQ_LITE} "built.";
+${JQ_LITE}: jquery
+       @@echo "Building" ${JQ_LITE}
+       @@echo " - Removing ScriptDoc from" ${JQ}
+       @@java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/lite.js ${JQ} ${JQ_LITE}
+       @@echo ${JQ_LITE} "built."
+       @@echo
 
 pack: ${JQ_PACK}
 
-${JQ_PACK}: ${JQ}
-       @@echo "Building" ${JQ_PACK};
-       java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/build.js ${JQ} ${JQ_PACK}
-       @@echo ${JQ_PACK} "built.";
+${JQ_PACK}: jquery
+       @@echo "Building" ${JQ_PACK}
+       @@echo " - Compressing using Packer"
+       @@java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/build.js ${JQ} ${JQ_PACK}
+       @@echo ${JQ_PACK} "built."
+       @@echo
 
-test:
+test: ${JQ}
 
 docs: ${JQ}
-       @@echo "Building Documentation";
-       java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/docs.js ${JQ} ${DOCS_DIR}
-       @@echo "Documentation built.";
+       @@echo "Building Documentation"
+
+       @@echo " - Making Documentation Directory:" ${DOCS_DIR}
+       @@mkdir -p ${DOCS_DIR}
+       @@mkdir -p ${DOCS_DIR}/data
+
+       @@echo " - Copying over script files."
+       @@cp -R ${BUILD_DIR}/docs/js ${DOCS_DIR}/js
+
+       @@echo " - Copying over style files."
+       @@cp -R ${BUILD_DIR}/docs/style ${DOCS_DIR}/style
+
+       @@echo " - Extracting ScriptDoc from" ${JQ}
+       @@java -jar ${BUILD_DIR}/js.jar ${BUILD_DIR}/docs.js ${JQ} ${DOCS_DIR}
+
+       @@echo "Documentation built."
+       @@echo
 
 clean:
-       rm -rf ${DIST_DIR}
-       rm -f ${DOCS_DIR}/index.xml
-       rm -f ${DOCS_DIR}/data/*
+       @@rm -rf ${DIST_DIR}
+       @@rm -rf ${DOCS_DIR}
diff --git a/build/build.js b/build/build.js
deleted file mode 100644 (file)
index 8c622ec..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-load("build/js/ParseMaster.js", "build/js/pack.js", "build/js/writeFile.js");
-
-var out = readFile( arguments[0] );
-
-writeFile( arguments[1], pack( out, 62, true, false ) );
diff --git a/build/build/build.js b/build/build/build.js
new file mode 100644 (file)
index 0000000..8c622ec
--- /dev/null
@@ -0,0 +1,5 @@
+load("build/js/ParseMaster.js", "build/js/pack.js", "build/js/writeFile.js");
+
+var out = readFile( arguments[0] );
+
+writeFile( arguments[1], pack( out, 62, true, false ) );
diff --git a/build/docs.js b/build/docs.js
deleted file mode 100644 (file)
index 8186f9d..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-load("build/js/json.js", "build/js/xml.js", "build/js/writeFile.js");
-
-var types = {
-       jQuery: "A jQuery object.",
-       Object: "A simple Javascript object. For example, it could be a String or a Number.",
-       String: "A string of characters.",
-       Number: "A numeric valid.",
-       Element: "The Javascript object representation of a DOM Element.",
-       Hash: "A Javascript object that contains key/value pairs in the form of properties and values.",
-       "Array&lt;Element&gt;": "An Array of DOM Elements.",
-       "Array&lt;String&gt;": "An Array of strings.",
-       Function: "A reference to a Javascript function."
-};
-
-var f = readFile(arguments[0]);
-
-var c = [], bm, m;
-var blockMatch = /\/\*\*\s*((.|\n)*?)\s*\*\//g;
-var paramMatch = /\@(\S+) *((.|\n)*?)(?=\n\@|!!!)/m;
-
-while ( bm = blockMatch.exec(f) ) {
-       block = bm[1].replace(/^\s*\* ?/mg,"") + "!!!";
-       var ret = { params: [], examples: [] };
-
-       while ( m = paramMatch.exec( block ) ) {
-               block = block.replace( paramMatch, "" );
-
-               var n = m[1];
-               var v = m[2]
-                       .replace(/\s*$/g,"")
-                       .replace(/^\s*/g,"")
-                       .replace(/&/g, "&amp;")
-                       .replace(/</g, "&lt;")
-                       .replace(/>/g, "&gt;")
-                       .replace(/\n/g, "<br/>")
-                       /*.replace(/(\s\s+)/g, function(a){
-                               var ret = "";
-                               for ( var i = 0; i < a.length; i++ )
-                                       ret += "&nbsp;";
-                               return ret;
-                       })*/ || 1;
-
-               if ( n == 'param' || n == 'any' ) {
-                       var args = v.split(/\s+/);
-                       v = args.slice( 2, args.length );
-                       v = { type: args[0], name: args[1], desc: v.join(' ') };
-                       if ( n == 'any' ) v.any = 1;
-                       n = "params";
-               } else if ( n == 'example' ) {
-                       v = { code: v };
-                       n = "examples";
-               }
-
-               if ( n == 'desc' || n == 'before' || n == 'after' || n == 'result' ) {
-                       ret.examples[ ret.examples.length - 1 ][ n ] = v;
-               } else {
-                       if ( ret[ n ] ) {
-                               if ( ret[ n ].constructor == Array ) {
-                                       ret[ n ].push( v );
-                               } else {
-                                       ret[ n ] = [ ret[ n ], v ];
-                               }
-                       } else {
-                               ret[ n ] = v;
-                       }
-               }
-       }
-  
-       ret.desc = block.replace(/\s*!!!$/,"")
-                       .replace(/</g, "&lt;")
-                       .replace(/>/g, "&gt;");
-                       //.replace(/\n\n/g, "<br/><br/>")
-                       //.replace(/\n/g, " ");
-
-       var m = /^((.|\n)*?(\.|$))/.exec( ret.desc );
-       if ( m ) ret['short'] = m[1];
-
-       if ( ret.name ) c.push( ret );
-}
-
-var json = Object.toJSON( c );
-
-writeFile( arguments[1] + "/data/jquery-docs-json.js", json );
-writeFile( arguments[1] + "/data/jquery-docs-jsonp.js", "docsLoaded(" + json + ")" );
-
-Object.toXML.force = { desc: 1, code: 1, before: 1, result: 1 };
-
-var xml = Object.toXML( { method: c }, "docs" );
-
-writeFile( arguments[1] + "/data/jquery-docs-xml.xml", 
-       "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + xml );
-
-writeFile( arguments[1] + "/index.xml",
-       "<?xml version='1.0' encoding='ISO-8859-1'?>\n" +
-       "<?xml-stylesheet type='text/xsl' href='style/docs.xsl'?>\n" + xml
-);
diff --git a/build/docs/docs.js b/build/docs/docs.js
new file mode 100644 (file)
index 0000000..8186f9d
--- /dev/null
@@ -0,0 +1,96 @@
+load("build/js/json.js", "build/js/xml.js", "build/js/writeFile.js");
+
+var types = {
+       jQuery: "A jQuery object.",
+       Object: "A simple Javascript object. For example, it could be a String or a Number.",
+       String: "A string of characters.",
+       Number: "A numeric valid.",
+       Element: "The Javascript object representation of a DOM Element.",
+       Hash: "A Javascript object that contains key/value pairs in the form of properties and values.",
+       "Array&lt;Element&gt;": "An Array of DOM Elements.",
+       "Array&lt;String&gt;": "An Array of strings.",
+       Function: "A reference to a Javascript function."
+};
+
+var f = readFile(arguments[0]);
+
+var c = [], bm, m;
+var blockMatch = /\/\*\*\s*((.|\n)*?)\s*\*\//g;
+var paramMatch = /\@(\S+) *((.|\n)*?)(?=\n\@|!!!)/m;
+
+while ( bm = blockMatch.exec(f) ) {
+       block = bm[1].replace(/^\s*\* ?/mg,"") + "!!!";
+       var ret = { params: [], examples: [] };
+
+       while ( m = paramMatch.exec( block ) ) {
+               block = block.replace( paramMatch, "" );
+
+               var n = m[1];
+               var v = m[2]
+                       .replace(/\s*$/g,"")
+                       .replace(/^\s*/g,"")
+                       .replace(/&/g, "&amp;")
+                       .replace(/</g, "&lt;")
+                       .replace(/>/g, "&gt;")
+                       .replace(/\n/g, "<br/>")
+                       /*.replace(/(\s\s+)/g, function(a){
+                               var ret = "";
+                               for ( var i = 0; i < a.length; i++ )
+                                       ret += "&nbsp;";
+                               return ret;
+                       })*/ || 1;
+
+               if ( n == 'param' || n == 'any' ) {
+                       var args = v.split(/\s+/);
+                       v = args.slice( 2, args.length );
+                       v = { type: args[0], name: args[1], desc: v.join(' ') };
+                       if ( n == 'any' ) v.any = 1;
+                       n = "params";
+               } else if ( n == 'example' ) {
+                       v = { code: v };
+                       n = "examples";
+               }
+
+               if ( n == 'desc' || n == 'before' || n == 'after' || n == 'result' ) {
+                       ret.examples[ ret.examples.length - 1 ][ n ] = v;
+               } else {
+                       if ( ret[ n ] ) {
+                               if ( ret[ n ].constructor == Array ) {
+                                       ret[ n ].push( v );
+                               } else {
+                                       ret[ n ] = [ ret[ n ], v ];
+                               }
+                       } else {
+                               ret[ n ] = v;
+                       }
+               }
+       }
+  
+       ret.desc = block.replace(/\s*!!!$/,"")
+                       .replace(/</g, "&lt;")
+                       .replace(/>/g, "&gt;");
+                       //.replace(/\n\n/g, "<br/><br/>")
+                       //.replace(/\n/g, " ");
+
+       var m = /^((.|\n)*?(\.|$))/.exec( ret.desc );
+       if ( m ) ret['short'] = m[1];
+
+       if ( ret.name ) c.push( ret );
+}
+
+var json = Object.toJSON( c );
+
+writeFile( arguments[1] + "/data/jquery-docs-json.js", json );
+writeFile( arguments[1] + "/data/jquery-docs-jsonp.js", "docsLoaded(" + json + ")" );
+
+Object.toXML.force = { desc: 1, code: 1, before: 1, result: 1 };
+
+var xml = Object.toXML( { method: c }, "docs" );
+
+writeFile( arguments[1] + "/data/jquery-docs-xml.xml", 
+       "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + xml );
+
+writeFile( arguments[1] + "/index.xml",
+       "<?xml version='1.0' encoding='ISO-8859-1'?>\n" +
+       "<?xml-stylesheet type='text/xsl' href='style/docs.xsl'?>\n" + xml
+);
index 98b3ede90e938298f732916005de0481f9910f7b..4adac376f2449d8db8d7b66598b87aca36e70a93 100644 (file)
@@ -6,10 +6,10 @@
 <head>
        <title>jQuery Docs - API</title>
        <link rel="stylesheet" href="style/style.css"/>
-       <script src="../jquery-svn.js"></script>
+       <script src="../dist/jquery-svn.js"></script>
        <script src="js/tooltip.js"></script>
        <script src="js/pager.js"></script>
-       <script src="js/doc2.js"></script>
+       <script src="js/doc.js"></script>
 </head>
 <body>
        <h1>jQuery Docs - API</h1>
diff --git a/build/lite.js b/build/lite.js
new file mode 100644 (file)
index 0000000..bcfb096
--- /dev/null
@@ -0,0 +1,6 @@
+load("build/js/writeFile.js");
+
+var blockMatch = /\s*\/\*\*\s*((.|\n)*?)\n*\*\/\s*/g;
+var f = readFile(arguments[0]).replace( blockMatch, "" );
+
+writeFile( arguments[1], f );