On 12 January 2012 21:14, Andy Doan andy.doan@linaro.org wrote:
On 01/12/2012 05:34 AM, Jon Medhurst (Tixy) wrote:
On Thu, 2012-01-12 at 13:20 +0200, Paul Sokolovsky wrote:
I had a look at the latest http://wiki.linaro.org/Platform/Android/BuildSource and see that it doesn't mention the need to run ". build/envsetup.sh" explicitly. I don't know if that's omitted deliberately or just forgotten.
The wiki mentions that you don't need to run it. Under "Divergence from Google's standard build instructions"
I don't if it works without it or no (I would doubt it does, but maybe there were changes to makefiles and stuff).
I've never done envsetup.sh, I just repo init, repo sync, and then...
PATH=$PWD/android-toolchain-eabi/bin/:$PATH make -j8 \ TARGET_PRODUCT=vexpress_a9 \
TARGET_TOOLS_PREFIX=$PWD/android-toolchain-eabi/bin/arm-linux-androideabi- \
boottarball systemtarball userdatatarball
This is interesting. The instructions in that page used to say you needed to pull in envsetup.sh. I guess you don't *have* to do it. However, it does have some nice benefits. The envsetup.sh adds some handy shortcuts. Specifically:
- croot: Changes directory to the top of the tree.
- m: Makes from the top of the tree.
- mm: Builds all of the modules in the current directory.
- mmm: Builds all of the modules in the supplied directories.
- cgrep: Greps on all local C/C++ files.
- jgrep: Greps on all local Java files.
- resgrep: Greps on all local res/*.xml files.
- godir: Go to the directory containing a file.
I've found I still TARGET_PRODUCT and TARGET_TOOLS_PREFIX set when I run them, but they are still handy. I use mmm all the time when I'm trying to deal with a build issue for some component.
Thanks Andy, for summing it up.
I have now added a new section on BuildSource page which talks about this optional step.
Regards, Amit Pundir
Not to get off subject, but there are two more really handy android build tricks. Say you are building a binary, skia_bench. There are two really useful commands:
make TARGET_PRODUCT=XXX TARGET_TOOLS_PREFIX=XXX skia_bench make TARGET_PRODUCT=XXX TARGET_TOOLS_PREFIX=XXX clean-skia_bench
linaro-android mailing list linaro-android@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-android