view scripts/minifier/minify.sh @ 161:4fe61dcd856e

flatpak: update build-manifest to retrieve dependencies without initial download phase: - dependencies are now entirely retrieved from the installation, and requirement are build from there. The source package is currently always used, and it is now possible to use PYTHON_DEP_PREINSTALL to add extra packages or use a specific version of a package. - fixed insertion of `release_elt` for dev version at the right location. - `branch` is not set anymore for stable versions. - libxslt is not added anymore as it is part of freedesktop runtime - flathub share-modules is now used for Python 2
author Goffi <goffi@goffi.org>
date Fri, 23 Aug 2019 16:41:05 +0200
parents 1596660ddf72
children
line wrap: on
line source

#!/bin/bash

# This is a helping script to minify HTML/CSS/JavaScript files

# Minify JS for Libervia's OTR - https://github.com/arlolra/otr
TOOL="yui compressor"
OTR_INPUT="otr/dep/bigint.js otr/dep/crypto.js otr/dep/eventemitter.js"
OTR_APPEND="otr/otr.min.js"
OTR_OUTPUT="otr.min.js"

rm -f $OTR_OUTPUT
if [[ $TOOL = "closure compiler" ]]; then
    # use https://developers.google.com/closure/compiler/
    # requires Java 7 SDK + compiler.jar in the current directory
    echo "Minifying $OTR_INPUT with closure compiler"
    java -jar compiler.jar  --js_output_file=$OTR_OUTPUT $OTR_INPUT
else
    for FILE in $OTR_INPUT; do
        if [[ $TOOL = "slimit" ]]; then
            # use https://pypi.python.org/pypi/slimit
            echo "Minifying $FILE with slimit"
            slimit $FILE >> $OTR_OUTPUT
        elif [[ $TOOL = "yui compressor" ]]; then
            # use https://pypi.python.org/pypi/yuicompressor
            echo "Minifying $FILE with YUI compressor"
            yuicompressor -o tmp.js $FILE
            cat tmp.js >> $OTR_OUTPUT
            rm -f tmp.js
        fi
    done
fi
cat $OTR_APPEND >> $OTR_OUTPUT
echo "The file $OTR_OUTPUT includes:
    - minified versions of the following otr.js dependencies:
      $OTR_INPUT
      The following minification tool has been used: $TOOL
    - minified version of otr.js taken from the project homepage

All original files can be retrieved from otr.js repository:
    https://github.com/arlolra/otr/tree/master/build
" > "$OTR_OUTPUT"_README