12345678910111213141516171819202122232425262728293031 |
- 'use strict';
- const path = require('path');
- const binBuild = require('bin-build');
- const log = require('logalot');
- const bin = require('.');
-
- (async () => {
- try {
- await bin.run(['--version']);
- log.success('optipng pre-build test passed successfully');
- } catch (error) {
- log.warn(error.message);
- log.warn('optipng pre-build test failed');
- log.info('compiling from source');
-
- try {
- // From https://sourceforge.net/projects/optipng/files/OptiPNG/
- await binBuild.file(path.resolve(__dirname, '../vendor/source/optipng.tar.gz'), [
- `./configure --with-system-zlib --prefix="${bin.dest()}" --bindir="${bin.dest()}"`,
- 'make install'
- ]);
-
- log.success('optipng built successfully');
- } catch (error) {
- log.error(error.stack);
-
- // eslint-disable-next-line unicorn/no-process-exit
- process.exit(1);
- }
- }
- })();
|