We built content_shell.apk with following commands:
export GYP_GENERATORS=ninja
. build/android/envsetup.sh
android_gyp
ninja -C out/Debug -j10 content_shell_apk
Now we start to analyze what are these command doing:
. build/android/envsetup.sh
this line did mainly these things:
. "$(dirname $BASH_SOURCE)"/envsetup_functions.sh defined toolchain, gcc version and path of SDK and NDK tools.
defined shell functions android_gyp as an example.
android_gyp
# Performs a gyp_chromium run to convert gyp->Makefile for android code.
android_gyp() {
# This is just a simple wrapper of gyp_chromium, please don't add anything
# in this function.
echo "GYP_GENERATORS set to '$GYP_GENERATORS'"
(
"${CHROME_SRC}/build/gyp_chromium" --depth="${CHROME_SRC}" --check "$@"
)
}
ninja -C out/Debug -j10 content_shell_apk
we need to find out what is ninja:
$ which ninja
/home/zeus/Public/depot_tools/ninja
then we open it:
#!/bin/bash
# Copyright (c) 2012 Google Inc. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
OS="$(uname -s)"
THIS_DIR="$(dirname "${0}")"
function print_help() {
cat <<-EOF
No prebuilt ninja binary was found for this system.
Try building your own binary by doing:
cd ~
git clone https://github.com/martine/ninja.git -b v1.0.0
./ninja/bootstrap.py
Then add ~/ninja/ to your PATH.
EOF
}
case "$OS" in
Linux)
MACHINE=$(getconf LONG_BIT)
case "$MACHINE" in
32|64) exec "${THIS_DIR}/ninja-linux${MACHINE}" "$@";;
*) echo Unknown architecture \($MACHINE\) -- unable to run ninja.
print_help
exit 1;;
esac
;;
Darwin) exec "${THIS_DIR}/ninja-mac" "$@";;
CYGWIN*) exec cmd.exe /c $(cygpath -t windows $0).exe "$@";;
MINGW32*) cmd.exe //c $0.exe "$@";;
*) echo "Unsupported OS ${OS}"
print_help
exit 1;;
esac
as we can see ninjia-linux${MACHINE} works just like make, ant it is actually an executable binary:
$ ls /home/zeus/Public/depot_tools/ninja*
/home/zeus/Public/depot_tools/ninja /home/zeus/Public/depot_tools/ninja-linux32 /home/zeus/Public/depot_tools/ninja-mac
/home/zeus/Public/depot_tools/ninja.exe /home/zeus/Public/depot_tools/ninja-linux64
more about ninja:
http://code.google.com/p/chromium/wiki/NinjaBuild
the source code location of content_shell.apk:
content/shell/android/shell_apk
分享到:
相关推荐
关于精确算法的图像压缩和分析_Compresion y analisis de imagenes por medio de algoritmos para la ganaderia de precision.pdf
riots_chile_analisis:智利Twitter Prolas的分析
Caso_3_Analisis_de_algoritmos Caso 3 del curso“ Analisis de algoritmos”(哥斯达黎加技术研究所) 参考文献计算机专用说明书。 处理器:Intel(R)CoreTM i7-10510U CPU @ 1.80GHz(8 CPUs),〜2.3GHz ...
Ejemplo de Analisis de Microarrays con生物导体该存储库包含使用Bioconductor进行微阵列数据分析的工作示例。 它是西班牙语,但应该易于理解(特别是如果您了解西班牙语的话)
APPL(分析Perancangan Perangkat Lunak)1 GIUSTY FADH WIRANAPOERA-191524044 2B-D4 Teknik Informatika Politeknik Negeri Bandung TA 2020/2021
代码/文章:从复杂系统的角度看墨西哥的地理选举系统
本文件提供了自己在做硕士论文过程中编写的有关结构动力学方面的程序,设计梁,杆,板,空间结构的动静力分析,并网页文件显示的是计算结果及图像显示
语音信号处理的学习资料,内容包括Introduction,Background,Filter bank analysis, short-term fourier analysis,Linear prediction anylysis, perceptual linear prediction,formant analysis, voicing analysis, ...
Analisis cinematico de velocidad de cuerpos
经典语音信号分析,考到matlab根目录下。
Proteus CAD analisis
Analisis transmisi Digital dalam manajemen telkom
data_analisis_tutorial 学习会议资料库 环境 版本 python 2.7 图书馆 装饰器== 3.4.2 funcsigs == 0.4 matplotlib == 1.4.3 模拟== 1.2.0 networkx == 1.9.1 nltk == 3.0.4 鼻子== 1.3.7 numpy == 1.9.2 ...
阿切尔卡·德米(Acerca de Mi)Nombre: Hector Armando Jaramillo ReginoCorreo: 描述: ... :blue_book: Analisis Avanzado de软件 :pencil_selector: 活体科Unidad 1 :hourglass_done: Unidad 2 Unidad 3 Unidad 4
Analisis_Numerico_AngieTatianaP
Analisis_Avanzado_de_Software :laptop_computer: :page_facing_up: 信息 Nombre Del alumno:索里亚·马克斯·吉列尔莫 编号: 17210648。 卡雷拉(Carrera): Sistemas computacionales。 装备竞赛: 艺术...
analisis_e_interpretacion_de_datos
Analisis avanzado de软件 :laptop: :page_facing_up: 信息Nombre Del alumno: Valerde Sanchez Alejandro Númerode control: 17212935。 卡雷拉(Carrera):信息和通讯技术学院。 竞赛器材:飘渺艺术艺术大师:...
渲染书 1.使用install.packages("bookdown")安装bookdown 。 如果您已经拥有它,请更新到。 2.使用bookdown::render_book("index.Rmd")在本地进行渲染。 ... 4.如果看起来不错,则提交所有更改的文件并将其推送到...
<<<<<<< HEAD渲染书1.... 如果您已经拥有它,请更新到。 2.... 3.... 4.... (每次您希望在线更新图书时,都需要重复第2步和第4步。)编辑自述文件完成这些步骤后,请删除本自述文件的内容,并添加对项目的...