X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=generate-combined.sh;h=58ab0d793e9e60246a68c533ec1916b2d1448cb2;hb=250bb62bb4614a3c1189c9b5b8b99e182a11db6e;hp=40c8019fa7be13c1a3291acb4386fe32d521c7d6;hpb=21ebe38bb1eeae3a7fd73335a411bfd81c66d985;p=dygraphs.git diff --git a/generate-combined.sh b/generate-combined.sh index 40c8019..58ab0d7 100755 --- a/generate-combined.sh +++ b/generate-combined.sh @@ -1,39 +1,69 @@ #!/bin/bash # Generates a single JS file that's easier to include. +GetSources () { + # This list needs to be kept in sync w/ the one in dygraph-dev.js + # and the one in jsTestDriver.conf. Order matters, except for the plugins. + for F in \ + dashed-canvas.js \ + dygraph-options.js \ + dygraph-layout.js \ + dygraph-canvas.js \ + dygraph.js \ + dygraph-utils.js \ + dygraph-gviz.js \ + dygraph-interaction-model.js \ + dygraph-tickers.js \ + dygraph-plugin-base.js \ + plugins/*.js \ + dygraph-plugin-install.js \ + datahandler/datahandler.js \ + datahandler/default.js \ + datahandler/default-fractions.js \ + datahandler/bars.js \ + datahandler/bars-custom.js \ + datahandler/bars-error.js \ + datahandler/bars-fractions.js + do + echo "$F" + done +} + # Pack all the JS together. +CatSources () { + GetSources \ + | xargs cat \ + | perl -ne 'print unless m,REMOVE_FOR_COMBINED,..m,/REMOVE_FOR_COMBINED,' +} -# This list needs to be kept in sync w/ the one in dygraph-dev.js -# and the one in jsTestDriver.conf. -cat \ -strftime/strftime-min.js \ -rgbcolor/rgbcolor.js \ -stacktrace.js \ -dashed-canvas.js \ -dygraph-options.js \ -dygraph-layout.js \ -dygraph-canvas.js \ -dygraph.js \ -dygraph-utils.js \ -dygraph-gviz.js \ -dygraph-interaction-model.js \ -dygraph-range-selector.js \ -dygraph-tickers.js \ -plugins/base.js \ -plugins/annotations.js \ -plugins/axes.js \ -plugins/chart-labels.js \ -plugins/grid.js \ -plugins/legend.js \ -plugins/install.js \ -| perl -ne 'print unless m,REMOVE_FOR_COMBINED,..m,/REMOVE_FOR_COMBINED,' \ -> /tmp/dygraph.js +Copyright () { + echo '/*! @license Copyright 2011 Dan Vanderkam (danvdk@gmail.com) MIT-licensed (http://opensource.org/licenses/MIT) */' +} -java -jar yuicompressor-2.4.2.jar /tmp/dygraph.js \ -> /tmp/dygraph-packed.js +CatCompressed () { + Copyright + CatSources \ + | java -jar yuicompressor-2.4.2.jar --type js +} -( - echo '/*! @license Copyright 2011 Dan Vanderkam (danvdk@gmail.com) MIT-licensed (http://opensource.org/licenses/MIT) */' - cat /tmp/dygraph-packed.js -) > dygraph-combined.js -chmod a+r dygraph-combined.js +ACTION="${1:-update}" +case "$ACTION" in +ls) + GetSources + ;; +cat) + Copyright + CatSources + ;; +compress*|cat_compress*) + CatCompressed + ;; +update) + CatCompressed > dygraph-combined.js + chmod a+r dygraph-combined.js + ;; +*) + echo >&2 "Unknown action '$ACTION'" + exit 1 + ;; +esac