bin.run(['-version'], function (err) { if (err) { log.warn(err.message); log.warn('mozjpeg pre-build test failed'); log.info('compiling from source'); var cfg = [ './configure --disable-shared', '--prefix="' + bin.dest() + '" --bindir="' + bin.dest() + '"', '--libdir="' + bin.dest() + '"' ].join(' '); var builder = new BinBuild() .src('https://github.com/mozilla/mozjpeg/archive/v3.1.tar.gz') .cmd('autoreconf -fiv') .cmd(cfg) .cmd('make --jobs=' + String(cpuNum)) .cmd('make install --jobs=' + String(cpuNum)); return builder.run(function (err) { if (err) { log.error(err.stack); return; } log.success('mozjpeg built successfully'); }); } log.success('mozjpeg pre-build test passed successfully'); });
bin.run(['-version'], err => { if (err) { log.warn(err.message); log.warn('mozjpeg pre-build test failed'); log.info('compiling from source'); let cfgExtras = ''; if (process.platform === 'darwin') { cfgExtras = 'libpng_LIBS=\'/usr/local/lib/libpng16.a -lz\' --enable-static'; } const cfg = [ `./configure --disable-shared --disable-dependency-tracking --with-jpeg8 ${cfgExtras}`, `--prefix="${bin.dest()}" --bindir="${bin.dest()}" --libdir="${bin.dest()}"` ].join(' '); const builder = new BinBuild() .src('https://github.com/mozilla/mozjpeg/releases/download/v3.2/mozjpeg-3.2-release-source.tar.gz') .cmd('autoreconf -fiv') .cmd(cfg) .cmd(`make -j${cpuNum}`) .cmd(`make install -j${cpuNum}`); return builder.run(err => { if (err) { log.error(err.stack); return; } log.success('mozjpeg built successfully'); }); } log.success('mozjpeg pre-build test passed successfully'); });
bin.run(function (err) { if (err) { log.warn(err.message); log.warn('optipng pre-build test failed'); log.info('compiling from source'); new BinBuild() .src('http://downloads.sourceforge.net/project/optipng/OptiPNG/optipng-0.7.6/optipng-0.7.6.tar.gz') .cmd([ './configure --with-system-zlib --prefix="' + bin.dest() + '"', '--bindir="' + bin.dest() + '"' ].join(' ')) .cmd('make install') .run(function (err) { if (err) { log.error(err.stack); return; } log.success('optipng built successfully'); }); return; } log.success('optipng pre-build test passed successfully'); });
bin.run(['--version'], err => { if (err) { logalot.warn(err.message); logalot.warn('pngquant pre-build test failed'); logalot.info('compiling from source'); const libpng = process.platform === 'darwin' ? 'libpng' : 'libpng-dev'; binBuild.file(path.resolve(__dirname, '../vendor/source/pngquant.tar.gz'), [ 'rm ./INSTALL', `./configure --prefix="${bin.dest()}"`, `make install BINPREFIX="${bin.dest()}"` ]) .then(() => { logalot.success('pngquant built successfully'); }) .catch(err => { err.message = `pngquant failed to build, make sure that ${libpng} is installed`; logalot.error(err.stack); // eslint-disable-next-line unicorn/no-process-exit process.exit(1); }); } logalot.success('pngquant pre-build test passed successfully'); });
bin.run(['--version'], function (err) { if (err) { logalot.warn(err.message); logalot.warn('pngquant pre-build test failed'); logalot.info('compiling from source'); var libpng = process.platform === 'darwin' ? 'libpng' : 'libpng-dev'; var builder = new BinBuild() .src('https://github.com/pornel/pngquant/archive/2.7.1.tar.gz') .cmd('rm ./INSTALL') .cmd('./configure --prefix="' + bin.dest() + '"') .cmd('make install BINPREFIX="' + bin.dest() + '"'); return builder.run(function (err) { if (err) { err.message = [ 'pngquant failed to build, make sure that', libpng + ' is installed' ].join(' '); logalot.error(err.stack); return; } logalot.success('pngquant built successfully'); }); } logalot.success('pngquant pre-build test passed successfully'); });
.run(function (err) { if (err) { log.error(err.stack); return; } log.success('optipng built successfully'); });
return builder.run(err => { if (err) { log.error(err.stack); return; } log.success('mozjpeg built successfully'); });
bin.run(['--version'], function (err) { if (err) { log.error(err.stack); return; } log.success('jpeg-recompress pre-build test passed successfully'); });
return builder.run(function (err) { if (err) { log.error(err.stack); return; } log.success('pngcrush built successfully'); });
bin.run(['--help'], function (err) { if (err) { log.error(err.message); log.error(name + ' pre-build test failed'); next(); return; } log.success(name + ' pre-build test passed successfully'); next(); });
return builder.run(function (err) { if (err) { err.message = [ 'pngquant failed to build, make sure that', libpng + ' is installed' ].join(' '); logalot.error(err.stack); return; } logalot.success('pngquant built successfully'); });
bin.run(['-version'], function (err) { if (err) { log.warn(err.message); log.warn('pngcrush pre-build test failed'); log.info('compiling from source'); var builder = new BinBuild() .src('http://downloads.sourceforge.net/project/pmt/pngcrush/1.7.85/pngcrush-1.7.85.zip') .cmd('mkdir -p ' + bin.dest()) .cmd('make && mv ' + bin.use() + ' ' + bin.path()); return builder.run(function (err) { if (err) { log.error(err.stack); return; } log.success('pngcrush built successfully'); }); } log.success('pngcrush pre-build test passed successfully'); });
bin.run(['-version'], err => { if (err) { log.warn(err.message); log.warn('pngcrush pre-build test failed'); log.info('compiling from source'); const builder = new BinBuild() .src('https://downloads.sourceforge.net/project/pmt/pngcrush/1.8.13/pngcrush-1.8.13.zip') .cmd(`mkdir -p ${bin.dest()}`) .cmd(`make && mv ${bin.use()} ${bin.path()}`); return builder.run(err => { if (err) { log.error(err.stack); return; } log.success('pngcrush built successfully'); }); } log.success('pngcrush pre-build test passed successfully'); });
bin.run(['-version']).then(() => { log.success('cwebp pre-build test passed successfully'); }).catch(error => {
]).then(() => { log.success('cwebp built successfully'); }).catch(error => {
.then(() => { logalot.success('pngquant built successfully'); })
]).then(() => { log.success('pngquant built successfully'); }).catch(err => {
bin.run(['--version']).then(() => { log.success('pngquant pre-build test passed successfully'); }).catch(err => {