Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(228)

Unified Diff: mojo/tools/mojob.sh

Issue 714573002: Delete mojob.sh which is superseded by mojob.py (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « README.md ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/tools/mojob.sh
diff --git a/mojo/tools/mojob.sh b/mojo/tools/mojob.sh
old mode 100755
new mode 100644
index c56685c83a0bf84f41712e46a958d7f026e1fd19..e14c4849191b61879afd9d22809ce01d2dced057
--- a/mojo/tools/mojob.sh
+++ b/mojo/tools/mojob.sh
@@ -1,276 +1,9 @@
-#!/bin/bash
-# Copyright 2013 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# This a simple script to make building/testing Mojo components easier (on
-# Linux).
-
-# TODO(vtl): Maybe make the test runner smart and not run unchanged test
-# binaries.
-# TODO(vtl) Maybe also provide a way to pass command-line arguments to the test
-# binaries.
-
-do_help() {
- cat << EOF
-Usage: $(basename "$0") [command|option ...]
-
-command should be one of:
- build - Build.
- test - Run unit tests (does not build).
- perftest - Run perf tests (does not build).
- pytest - Run Python unit tests (does not build).
- gn - Run gn for mojo (does not sync).
- sync - Sync using gclient (does not run gn).
- show-bash-alias - Outputs an appropriate bash alias for mojob. In bash do:
- \$ eval \`mojo/tools/mojob.sh show-bash-alias\`
-
-option (which will only apply to commands which follow) should be one of:
- General options (specify before everything):
- --debug / --release - Debug (default) / Release build.
- gn options (specify before gn):
- --asan / --no-asan - Uses Address Sanitizer / don't use asan.
- --clang / --gcc - Use clang (default) / gcc.
- --goma / --no-goma - Use goma (if \$GOMA_DIR is set or \$HOME/goma exists;
- default) / don't use goma.
- --with-dart - Configure the Dart bindings.
-
-Note: It will abort on the first failure (if any).
-EOF
-}
-
-get_gn_arg_value() {
- grep -m 1 "^[[:space:]]*\<$2\>" "$1/args.gn" | \
- sed -n 's/.* = "\?\([^"]*\)"\?$/\1/p'
-}
-
-get_outdir() {
- if [ $TARGET != linux ]; then
- echo "out/${TARGET}_$1"
- else
- echo "out/$1"
- fi
-}
-
-do_build() {
- local out_dir=$(get_outdir $1)
- echo "Building in ${out_dir} ..."
- if [ "$(get_gn_arg_value ${out_dir} use_goma)" = "true" ]; then
- # Use the configured goma directory.
- local goma_dir="$(get_gn_arg_value ${out_dir} goma_dir)"
- echo "Ensuring goma (in ${goma_dir}) started ..."
- "${goma_dir}/goma_ctl.py" ensure_start
-
- ninja -j 1000 -l 100 -C "${out_dir}" root || exit 1
- else
- ninja -C "${out_dir}" root || exit 1
- fi
-}
-
-do_unittests() {
- local out_dir=$(get_outdir $1)
- echo "Running unit tests in ${out_dir} ..."
- ./testing/xvfb.py "${out_dir}" mojo/tools/test_runner.py \
- mojo/tools/data/unittests "${out_dir}" mojob_test_successes || exit 1
-}
-
-do_perftests() {
- local out_dir=$(get_outdir $1)
- echo "Running perf tests in ${out_dir} ..."
- "${out_dir}/mojo_public_system_perftests" || exit 1
-}
-
-do_pytests() {
- local out_dir=$(get_outdir $1)
- echo "Running python tests in ${out_dir} ..."
- python mojo/tools/run_mojo_python_tests.py || exit 1
- python mojo/tools/run_mojo_python_bindings_tests.py \
- "--build-dir=${out_dir}" || exit 1
-}
-
-do_skytests() {
- local out_dir=$(get_outdir $1)
- if [ $TARGET == linux ]; then
- ./testing/xvfb.py "${out_dir}" sky/tools/test_sky -t $1 \
- --no-new-test-results --no-show-results --verbose || exit 1
- fi
-}
-
-do_darttests() {
- echo "Running dart tests in out/$1 ..."
- dart mojo/tools/dart_test_runner.dart out/$1/gen || exit 1
-}
-
-do_gn() {
- local gn_args="$(make_gn_args $1)"
- local out_dir="$(get_outdir $1)"
- echo "Running gn gen ${out_dir} with --args=\"${gn_args}\" ..."
- gn gen --args="${gn_args}" "${out_dir}"
-}
-
-do_sync() {
- gclient sync || exit 1
-}
-
-# Valid values: Debug or Release.
-BUILD_TYPE=Debug
-# Valid values: clang or gcc.
-COMPILER=clang
-# Valid values: linux, android or chromeos
-TARGET=linux
-# Valid values: auto or disabled.
-GOMA=auto
-# Valid values: enabled or disabled.
-ASAN=disabled
-# Whether the Dart bindings should be built.
-DART=disabled
-make_gn_args() {
- local args=()
- # TODO(vtl): It's a bit of a hack to infer the build type from the output
- # directory name, but it's what we have right now (since we support "debug and
- # release" mode).
- case "$1" in
- Debug)
- args+=("is_debug=true")
- ;;
- Release)
- args+=("is_debug=false")
- ;;
- esac
- case "$ASAN" in
- enabled)
- args+=("is_asan=true")
- ;;
- disabled)
- args+=("is_asan=false")
- ;;
- esac
- case "$COMPILER" in
- clang)
- args+=("is_clang=true")
- ;;
- gcc)
- args+=("is_clang=false")
- ;;
- esac
- case "$GOMA" in
- auto)
- if [ -v GOMA_DIR ]; then
- args+=("use_goma=true" "goma_dir=\"${GOMA_DIR}\"")
- elif [ -d "${HOME}/goma" ]; then
- args+=("use_goma=true" "goma_dir=\"${HOME}/goma\"")
- else
- args+=("use_goma=false")
- fi
- ;;
- disabled)
- args+=("use_goma=false")
- ;;
- esac
- case "$DART" in
- enabled)
- args+=("mojo_use_dart=true")
- ;;
- esac
- case "$TARGET" in
- android)
- args+=("os=\"android\"" "cpu_arch=\"arm\"")
- ;;
- chromeos)
- args+=("os=\"chromeos\"" "ui_base_build_ime=false" \
- "use_system_harfbuzz=false")
- ;;
- esac
- echo "${args[*]}"
-}
-
-# We're in src/mojo/tools. We want to get to src.
-cd "$(readlink -e "$(dirname "$0")")/../.."
-
-if [ $# -eq 0 ]; then
- do_help
- exit 0
-fi
-
-for arg in "$@"; do
- case "$arg" in
- # Commands -----------------------------------------------------------------
- help|--help)
- do_help
- exit 0
- ;;
- build)
- do_build "$BUILD_TYPE"
- ;;
- test)
- do_unittests "$BUILD_TYPE"
- do_pytests "$BUILD_TYPE"
- do_skytests "$BUILD_TYPE"
- ;;
- perftest)
- do_perftests "$BUILD_TYPE"
- ;;
- pytest)
- do_pytests "$BUILD_TYPE"
- ;;
- darttest)
- do_darttests "$BUILD_TYPE"
- ;;
- gn)
- do_gn "$BUILD_TYPE"
- ;;
- sync)
- do_sync
- ;;
- show-bash-alias)
- # You want to type something like:
- # alias mojob=\
- # '"$(pwd | sed '"'"'s/\(.*\/src\).*/\1/'"'"')/mojo/tools/mojob.sh"'
- # This is quoting hell, so we simply escape every non-alphanumeric
- # character.
- echo alias\ mojob\=\'\"\$\(pwd\ \|\ sed\ \'\"\'\"\'s\/\\\(\.\*\\\/src\\\)\
-\.\*\/\\1\/\'\"\'\"\'\)\/mojo\/tools\/mojob\.sh\"\'
- ;;
- # Options ------------------------------------------------------------------
- --debug)
- BUILD_TYPE=Debug
- ;;
- --release)
- BUILD_TYPE=Release
- ;;
- --asan)
- ASAN=enabled
- ;;
- --no-asan)
- ASAN=disabled
- ;;
- --clang)
- COMPILER=clang
- ;;
- --gcc)
- COMPILER=gcc
- ;;
- --goma)
- GOMA=auto
- ;;
- --no-goma)
- GOMA=disabled
- ;;
- --with-dart)
- DART=enabled
- ;;
- --android)
- TARGET=android
- COMPILER=gcc
- ;;
- --chromeos)
- TARGET=chromeos
- ;;
- *)
- echo "Unknown command \"${arg}\". Try \"$(basename "$0") help\"."
- exit 1
- ;;
- esac
-done
-
-exit 0
+#!/bin/bash
+# Copyright 2013 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+python "$(dirname "$0")/mojob.py" "$@"
+echo ""
+echo ""
+echo "NOTE: mojob.sh is deprecated, use mojob.py instead. The arguments also changed order, see mojob.py --help"
« no previous file with comments | « README.md ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698