Files
sdk/lib/html/scripts/go.sh
T
vsm@google.com 79beeec1d4 Speed up fremontcut/dartdomgenerator
- Parse IDL in parallel
- Support calling fremontcut from dartdomgenerator to avoid reading database

This speeds up the whole go.sh by about 4x on my machine.  Looks like the remaining bottleneck is in the emitter.

Review URL: https://codereview.chromium.org//10987042

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13038 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-28 19:30:16 +00:00

53 lines
1.3 KiB
Bash
Executable File

#!/bin/bash -x
#
# go.sh [--cached] [systems]
#
# Convenience script to generate systems. Do not call from build steps or tests
# - call fremontcutbuilder and dartdomgenerator instead. Do not add 'real'
# functionality here - change the python code instead.
#
# I find it essential to generate all the systems so I know if I am breaking
# other systems. My habit is to run:
#
# ./go.sh | tee Q
#
# I can inspect file Q if needed.
#
# If I know the IDL has not changed since the last run, it is faster to run
#
# ./go.sh --cached
#
# To generate a subset of systems:
#
# ./go.sh dart2js,htmldart2js
#
# The following gives a picture of the changes due to 'work'
#
# git checkout master # select client without changes
# ./go.sh
# mv ../generated ../generated0 # save generated files
# git checkout work # select client with changes
# ./go.sh
# meld ../generated0 ../generated # compare directories with too
CACHED=
if [[ "$1" == "--cached" ]] ; then
CACHED=1
shift
fi
ALLSYSTEMS="htmldart2js,htmldartium"
SYSTEMS="$ALLSYSTEMS"
if [[ "$1" != "" ]] ; then
SYSTEMS="$1"
fi
if [[ $CACHED ]] ; then
reset &&
./dartdomgenerator.py --use-database-cache --systems="$SYSTEMS"
else
reset &&
./dartdomgenerator.py --rebuild --systems="$SYSTEMS"
fi