function parseDefines(d) {
      let key, value;
      {
        let a = d.split("=");
        key = a[0];
        value = a[1];
      }
      defines[key] =
       /^(?:true|false)$/.test(value)
        ? value === 'true' 
        : !isNaN(parseFloat(value)) && isFinite(value)
          ? parseFloat(value)
          : value;
    }
compile() expects 'defines' to be object, but minimist may only return array or string
so, we need to convert to proper object.
The supported format will be similar to the following,
https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler#define-type-description
but instead of using --define 'name=value' we should support --defines 'name=value'