Merge pull request #7063 from timvandermeij/gulp

Migrate `clean` and `importl10n` target to gulp
This commit is contained in:
Yury Delendik 2016-03-07 13:29:29 -06:00
commit b540d7d6dc
12 changed files with 44 additions and 36 deletions

View File

@ -107,7 +107,7 @@ $ cd pdf.js
## Trying the Viewer
With the prebuilt or source version open `web/viewer.html` in a browser and the test pdf should load. Note: the worker is not enabled for file:// urls, so use a server. If you're using the source build and have node, you can run `node make server`.
With the prebuilt or source version open `web/viewer.html` in a browser and the test pdf should load. Note: the worker is not enabled for file:// urls, so use a server. If you're using the source build and have node, you can run `gulp server`.
## More Information

View File

@ -17,7 +17,7 @@
if (!PDFJS.PDFViewer || !PDFJS.getDocument) {
alert('Please build the library and components using\n' +
' `node make generic components`');
' `gulp generic components`');
}
// The workerSrc property shall be specified.

View File

@ -17,7 +17,7 @@
if (!PDFJS.PDFViewer || !PDFJS.getDocument) {
alert('Please build the library and components using\n' +
' `node make generic components`');
' `gulp generic components`');
}
// The workerSrc property shall be specified.

View File

@ -8,7 +8,7 @@ simple and human-readable PDF.
Instead of simply opening `index.html` in a browser, you must serve the page
using a web server. This can be done on your local machine without an internet
connection. In the root directory of PDF.js, run `node make server` in a
connection. In the root directory of PDF.js, run `gulp server` in a
terminal. The example can then be viewed using the following URL:
`http://localhost:8888/examples/helloworld/index.html`

View File

@ -4,7 +4,7 @@
//
// Basic node example that prints document metadata and text content.
// Requires single file built version of PDF.js -- please run
// `node make singlefile` before running the example.
// `gulp singlefile` before running the example.
//
var fs = require('fs');
@ -12,7 +12,7 @@ var fs = require('fs');
// HACK adding DOMParser to read XMP metadata.
global.DOMParser = require('./domparsermock.js').DOMParserMock;
// Run `node make dist` to generate 'pdfjs-dist' npm package files.
// Run `gulp dist` to generate 'pdfjs-dist' npm package files.
require('../../build/dist');
// Loading file from file system into typed array

View File

@ -10,7 +10,7 @@ var fs = require('fs');
// HACK few hacks to let PDF.js be loaded not as a module in global space.
require('./domstubs.js');
// Run `node make dist` to generate 'pdfjs-dist' npm package files.
// Run `gulp dist` to generate 'pdfjs-dist' npm package files.
require('../../build/dist');
// Loading file from file system into typed array

View File

@ -63,7 +63,7 @@ function pageLoaded() {
document.addEventListener('DOMContentLoaded', function () {
if (typeof PDFJS === 'undefined') {
alert('Built version of PDF.js was not found.\n' +
'Please run `node make generic`.');
'Please run `gulp generic`.');
return;
}
pageLoaded();

View File

@ -6,7 +6,7 @@ Example to demonstrate PDF.js library usage with webpack.
Build project and install the example dependencies:
$ node make dist
$ gulp dist
$ cd examples/webpack
$ npm install

View File

@ -41,7 +41,7 @@ function normalizeText(s) {
return s.replace(/\r\n?/g, '\n').replace(/\uFEFF/g, '');
}
function downloadLanguageFiles(langCode, callback) {
function downloadLanguageFiles(root, langCode, callback) {
console.log('Downloading ' + langCode + '...');
// Constants for constructing the URLs. Translations are taken from the
@ -56,12 +56,12 @@ function downloadLanguageFiles(langCode, callback) {
var downloadsLeft = files.length;
if (!fs.existsSync(langCode)) {
fs.mkdirSync(langCode);
fs.mkdirSync(path.join(root, langCode));
}
// Download the necessary files for this language.
files.forEach(function(fileName) {
var outputPath = path.join(langCode, fileName);
var outputPath = path.join(root, langCode, fileName);
var url = MOZCENTRAL_ROOT + langCode + MOZCENTRAL_PDFJS_DIR +
fileName + MOZCENTRAL_RAW_FLAG;
var request = http.get(url, function(response) {
@ -81,13 +81,13 @@ function downloadLanguageFiles(langCode, callback) {
});
}
function downloadL10n() {
function downloadL10n(root) {
var i = 0;
(function next() {
if (i >= langCodes.length) {
return;
}
downloadLanguageFiles(langCodes[i++], next);
downloadLanguageFiles(root, langCodes[i++], next);
})();
}

View File

@ -17,10 +17,15 @@
'use strict';
var fs = require('fs');
var gulp = require('gulp');
var gutil = require('gulp-util');
var rimraf = require('rimraf');
var stream = require('stream');
var BUILD_DIR = 'build/';
var L10N_DIR = 'l10n/';
require('./make.js');
function createStringSource(filename, content) {
@ -56,6 +61,13 @@ gulp.task('server', function () {
server.start();
});
gulp.task('clean', function(callback) {
console.log();
console.log('### Cleaning up project builds');
rimraf(BUILD_DIR, callback);
});
gulp.task('makefile', function () {
var makefileContent = 'help:\n\tgulp\n\n';
var targetsNames = [];
@ -68,6 +80,18 @@ gulp.task('makefile', function () {
.pipe(gulp.dest('.'));
});
gulp.task('importl10n', function() {
var locales = require('./external/importL10n/locales.js');
console.log();
console.log('### Importing translations from mozilla-aurora');
if (!fs.existsSync(L10N_DIR)) {
fs.mkdirSync(L10N_DIR);
}
locales.downloadL10n(L10N_DIR);
});
// Getting all shelljs registered tasks and register them with gulp
var gulpContext = false;
for (var taskName in global.target) {

26
make.js
View File

@ -1357,7 +1357,7 @@ target.mozcentralbaseline = function() {
if (test('-d', 'build')) {
rm('-rf', 'build');
}
exec('node make mozcentral');
exec('gulp mozcentral');
cd(ROOT_DIR);
mkdir(MOZCENTRAL_BASELINE_DIR);
@ -1391,7 +1391,7 @@ target.mozcentraldiff = function() {
var MOZCENTRAL_BASELINE_DIR = BUILD_DIR + 'mozcentral.baseline';
if (!test('-d', MOZCENTRAL_BASELINE_DIR)) {
echo('mozcentral baseline was not found');
echo('Please build one using "node make mozcentralbaseline"');
echo('Please build one using "gulp mozcentralbaseline"');
exit(1);
}
cd(MOZCENTRAL_BASELINE_DIR);
@ -1432,7 +1432,7 @@ target.mozcentralcheck = function() {
var MOZCENTRAL_BASELINE_DIR = BUILD_DIR + 'mozcentral.baseline';
if (!test('-d', MOZCENTRAL_BASELINE_DIR)) {
echo('mozcentral baseline was not found');
echo('Please build one using "node make mozcentralbaseline"');
echo('Please build one using "gulp mozcentralbaseline"');
exit(1);
}
cd(MOZCENTRAL_BASELINE_DIR);
@ -1512,11 +1512,7 @@ target.lint = function() {
// make clean
//
target.clean = function() {
cd(ROOT_DIR);
echo();
echo('### Cleaning up project builds');
rm('-rf', BUILD_DIR);
exit(exec('gulp clean'));
};
//
@ -1530,17 +1526,5 @@ target.makefile = function () {
//make importl10n
//
target.importl10n = function() {
var locales = require('./external/importL10n/locales.js');
var LOCAL_L10N_DIR = 'l10n';
cd(ROOT_DIR);
echo();
echo('### Importing translations from mozilla-aurora');
if (!test('-d', LOCAL_L10N_DIR)) {
mkdir(LOCAL_L10N_DIR);
}
cd(LOCAL_L10N_DIR);
locales.downloadL10n();
exit(exec('gulp importl10n'));
};

View File

@ -22,7 +22,7 @@ var DEFAULT_VIEW_HISTORY_CACHE_SIZE = 20;
* recently opened files.
*
* The way that the view parameters are stored depends on how PDF.js is built,
* for 'node make <flag>' the following cases exist:
* for 'gulp <flag>' the following cases exist:
* - FIREFOX or MOZCENTRAL - uses sessionStorage.
* - GENERIC or CHROME - uses localStorage, if it is available.
*/