diff --git a/closure-compiler.spec b/closure-compiler.spec new file mode 100644 index 0000000..a48e942 --- /dev/null +++ b/closure-compiler.spec @@ -0,0 +1,73 @@ +Name: closure-compiler +Summary: JavaScript minifier and checker +Version: 20160315 +Release: 1 +License: ASL 2.0 +URL: https://developers.google.com/closure/compiler/ +Source0: https://github.com/google/closure-compiler/archive/maven-release-v%{version}.tar.gz +Source1: closure-compiler.xml +BuildRequires: maven-local mvn(args4j:args4j) mvn(com.google.code.findbugs:jsr305) +BuildRequires: mvn(com.google.code.gson:gson) mvn(com.google.guava:guava:20.0) +BuildRequires: mvn(com.google.protobuf:protobuf-java) mvn(org.apache.ant:ant) +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) +BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) +BuildRequires: mvn(org.apache.maven.plugins:maven-shade-plugin) +BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) +BuildRequires: mvn(org.sonatype.oss:oss-parent:pom:) +BuildRequires: libxslt docbook-style-xsl +Requires: javapackages-tools +BuildArch: noarch + +%description +The Closure Compiler is a tool for making JavaScript download and run +faster. It is a true compiler for JavaScript. Instead of compiling +from a source language to machine code, it compiles from JavaScript to +better JavaScript. It parses your JavaScript, analyzes it, removes +dead code and rewrites and minimizes what’s left. It also checks +syntax, variable references, and types, and warns about common +JavaScript pitfalls. + +%package javadoc +Summary: API documentation for %{name} + +%description javadoc +This package contains the %{summary}. + +%prep +%autosetup -n %{name}-maven-release-v%{version} +rm -rf lib/* +%pom_disable_module "pom-main-shaded.xml" pom-main.xml +%mvn_alias :closure-compiler-unshaded :closure-compiler +%pom_xpath_inject "pom:plugin[pom:artifactId='maven-bundle-plugin']" \ +" + \${project.groupId} +" pom-main.xml + +%build +%mvn_build -f +xsltproc \ + --nonet \ + --stringparam man.output.quietly 1 \ + --stringparam funcsynopsis.style ansi \ + --stringparam man.authors.section.enabled 0 \ + --stringparam man.copyright.section.enabled 0 \ + http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl %{SOURCE1} + +%install +%mvn_install +%jpackage_script com.google.javascript.jscomp.CommandLineRunner "" "" args4j:google-gson:jsr-305:protobuf-java:guava20:%{name} %{name} true +install -Dm0644 %{name}.1 $RPM_BUILD_ROOT%{_mandir}/man1/%{name}.1 +%global _docdir_fmt %{name} + +%files -f .mfiles +%{_bindir}/%{name} +%{_mandir}/man1/%{name}.* +%license COPYING +%doc README.md + +%files javadoc -f .mfiles-javadoc +%license COPYING + +%changelog +* Thu Aug 13 2020 leiju - 20160315-1 +- Package init diff --git a/closure-compiler.xml b/closure-compiler.xml new file mode 100644 index 0000000..9634442 --- /dev/null +++ b/closure-compiler.xml @@ -0,0 +1,626 @@ + + + + + + closure-compiler + closure-compiler + + + + + + + + + + + + + closure-compiler + 1 + + + + closure-compiler + Performs checking, instrumentation, and + optimization on JavaScript code. + + + + + closure-compiler + OPTIONS + FILES + + + + + Description + + closure-compiler may be used to + check and optimize JavaScript code. + If positional arguments are not given, code to check + will be read from standard input. + + + + Options + + The following options are understood: + + + + + + Allows usage of const + keyword. + + + + + + Generate $inject properties for + AngularJS for functions annotated with @ngInject. + + + + + + + Input and output charset for all + files. By default, we accept UTF-8 as + input and output US_ASCII. + + + + + + Entry points to the program. Must be + goog.provide'd symbols. Any goog.provide'd symbols that are + not a transitive dependency of the entry points will be + removed. Files without goog.provide's, and their dependencies, + will always be left in. If any entry points are specified, + then the manage_closure_dependencies option will be set to + true and all files will be sorted in dependency order. + + + + + + + Root of your common JS dependency + hierarchy. Your main script. + + + + + + Path prefix to be removed from + CommonJS module names. + + + + + WHITESPACE_ONLY|SIMPLE_OPTIMIZATIONS|ADVANCED_OPTIMIZATIONS + + + Specifies the compilation level to use. + + + + + + If true, variable renaming and property + renaming map files will be produced as + binary name_vars_map.out and + binary name_props_map.out. + Note that this flag cannot be used in conjunction with either + variableMapOut putFile or property_map_output_file. + + + + + VAL + + If specified, a source map file mapping the + generated source files back to the original source file will + be output to the specified path. The + %outname% placeholder will expand to the + name of the output file that the source map corresponds to. + + + + + + + Enable debugging options. + + + + + + name=val + + Override the value of a variable + annotated @define. The format is + name=val, + where name is the + name of a @define variable and val + is a boolean, number, or a single-quoted string that contains no single + quotes. If val is omitted, the + variable is marked true. + + + + + + The file containing JavaScript + externs. May be specified multiple times. + + + + + + A whitelist of tag names in JSDoc. + May be specified multiple times. + + + + + + A file containing additional command-line options. + + + + + + PRETTY_PRINT | PRINT_INPUT_DELIMITER | SINGLE_QUOTES + + + Specifies which formatting options, if any, should be applied to the + output JS. + + + + + + Generates export code for those marked with + @export. + + + + + + Displays this message + + + + + + The JavaScript filename. + May be specified multiple times. + + + + + + + Primary output filename. If not + specified, output is written to stdout. + + + + + + Make the named class of warnings an + error. Options: accessControls, + ambiguousFunctionDecl, + checkEventfulObjectDisposal, + checkRegExp, + checkStruct + DictInheritance, + checkTypes, + checkVars, + const, + constantProperty, + deprecated, + duplicateMessage, + es3, + es5Strict, + externsValidation, + fileoverviewTags, + globalThis, + internetExplorerChecks, + invalidCasts, + misplacedTypeAnnotation, + missingProperties, + missingProvide, + missingRequire, + missingReturn, + nonStandardJsDocs, + reportUnknownTypes, + suspiciousCode, + strictModuleDepCheck, + typeInvalidation, + undefinedNames, + undefinedVars, + unknownDefines, + uselessCode, + visibility. + + + + + + Turn off the named class of warnings. + Options: accessControls, + ambiguousFunctionDecl, + checkEventfulObjectDisposal, + checkRegExp, + checkStructDictInheritance, + checkTypes, + checkVars, + const, + constantProperty, + deprecated, + duplicateMessage, + es3, + es5Strict, + externsValidation, + fileoverviewTags, + globalThis, + internetExplorerChecks, + invalidCasts, + misplacedTypeAnnotation, + missingProperties, + missingProvide, + missingRequire, + missingReturn, + nonStandardJsDocs, + reportUnknownTypes, + suspiciousCode, + strictModuleDepCheck, + typeInvalidation, + undefinedNames, + undefinedVars, + unknownDefines, + uselessCode, + visibility. + + + + + + + Make the named class of warnings a + normal warning. Options: + accessControls, + ambiguousFunctionDecl, + checkEventfulObjectDisposal, + checkRegExp, + checkStructDictInheritance, + checkTypes, + checkVars, + const, + constantProperty, + deprecated, + duplicateMessage, + es3, + es5Strict, + externsValidation, + fileoverviewTags, + globalThis, + internetExplorerChecks, + invalidCasts, + misplacedTypeAnnotation, + missingProperties, + missingProvide, + missingRequire, + missingReturn, + nonStandardJsDocs, + reportUnknownTypes, + suspiciousCode, + strictModuleDepCheck, + typeInvalidation, + undefinedNames, + undefinedVars, + unknownDefines, + uselessCode, + visibility. + + + + + + Sets what language spec that input + sources conform. Options: ECMASCRIPT3 + (default), ECMASCRIPT5, + ECMASCRIPT5_STRICT. + + + + + + The logging level (standard + java.util.logging.Level values) for Compiler progress. Does + not control errors or warnings for the JavaScript code under + compilation + + + + + + Automatically sort dependencies so that a file + that goog.provides symbol X will always come before a file + that goog.requires symbol X. If an input provides symbols, and + those symbols are never required, then that input will not be + included in the compilation. + + + + + name:num-js-files:dep...: + + A JavaScript module specification. Module + names must be unique. Each dep is the name of a module that + this module depends on. Modules must be listed in dependency + order, and JS source files must be listed in the corresponding + order. Where flags occur in + relation to flags is unimportant. + Provide the value auto to trigger module + creation from CommonJSmodules. + + + + + VAL + + Prefix for filenames of compiled JS + modules. module-name.js will be appended to this + prefix. Directories will be created as needed. Use with + . + + + + + + An output wrapper for a JavaScript module + (optional). The format is name:wrapper. The module name must + correspond with a module specified using --module. The wrapper + must contain %s as the code placeholde r. The %basename% + placeholder can also be used to substitute the base name of + the module output file. + + + + + + In development new type inference pass. DO NOT + USE! + + + + + + Only include files in the transitive + dependency of the entry points (specified by + closure_entry_point). Files that do not provide dependencies + will be removed. This supersedes + . + + + + + + + Prints out a list of all the files in the + compilation. If + is on, this will not include files that got dropped because + they were not required. The %outname% + placeholder expands to the JS output file. If you're using + modularization, using %outname% will create + a manifest for each module. + + + + + + Prints out a JSON file of dependencies + between modules. + + + + + + Interpolate output into this string at the + place denoted by the marker token + %output%. Use marker token + %output|jsstring% to do js string escaping + on the output. + + + + + + Prints a dot file describing the internal + abstract syntax tree and exits. + + + + + + Prints a dot file describing the passes that + will get run and exits. + + + + + + Prints out the parse tree and exits. + + + + + + Processes built-ins from the Closure + library, such as goog.require(), goog.provide(), and goog.exportSymbol(). + + + + + + + Process CommonJS modules to a concatenable form. + + + + + + + Processes built-ins from the jQuery + library, such as jQuery.fn and jQuery.extend(). + + + + + + File containing the serialized version of the + property renaming map produced by a previous compilation. + + + + + + + File where the serialized version of the + property renaming map produced should be saved. + + + + + + The source map format to produce. + Options: V1, + V2, + V3, + DEFAULT. + DEFAULT + produces V2. + + + + + + Controls how detailed the compilation + summary is. Values: 0 (never print + summary), 1 (print summary only if + there are errors or warnings), 2 + (print summary if the 'checkTypes' + diagnostic group is enabled, see + ), 3 (always print + summary). The default level is 1. + + + + + + Check source validity but do not enforce + Closure style rules and conventions. + + + + + + Shows the duration of each compiler pass and + the impact to the compiled output size. Options: + ALL, RAW_SIZE, + TIMING_ONLY, OFF. + + + + + + + Transform AMD to CommonJS modules. + + + + + + Source of translated messages. + Currently only supports XTB. + + + + + + Scopes all translations to the specified + project.When specified, we will use different message ids so + that messages in different projects can have different + translations. + + + + + + Specifies whether the default externs should + be excluded. + + + + + + Experimental: perform additional optimizations + based on available information. Inaccurate type annotations + may result in incorrect results. + + + + + VAL + + File containing the serialized version of the + variable renaming map produced by a previous compilation. + + + + + + + File where the serialized version of the + variable renaming map produced should be saved. + + + + + + Prints the compiler version to stderr. + + + + + + Specifies the warning level to use. + Options: QUIET, + DEFAULT, + VERBOSE. + + + + + FILE + + A file containing warnings to suppress. Each + line should be of the form file-name:line-number warning-description. + + + + + + + See Also + https://code.google.com/p/closure-compiler/ + + diff --git a/closure-compiler.yaml b/closure-compiler.yaml new file mode 100644 index 0000000..834d371 --- /dev/null +++ b/closure-compiler.yaml @@ -0,0 +1,4 @@ +version_control: github +src_repo: google/closure-compiler +tag_prefix: "^v" +seperator: "" diff --git a/maven-release-v20160315.tar.gz b/maven-release-v20160315.tar.gz new file mode 100644 index 0000000..6545cdb Binary files /dev/null and b/maven-release-v20160315.tar.gz differ