- generate thumb code by default (type forced ARM generation)
- make the generation of unoptimized binaries with APP_OPTIM := debug actually work
(the -O0 -g flags were placed before the -Os -mthumb flags for thumb binaries)
- factor common code from build-executable/shared-library/static-library into build-binary.mk
and install-binary.mk
- properly add a -L$(SYSROOT)/usr/lib line to make LOCAL_LDLIBS := -lz work as advertized
(in build-binary.mk)
- add a few missing variables from clear-vars.mk
- run as bash script (since Debian's new 'dash' shell doesn't support it)
- remove obsolete host GCC requirement
- improve Windows support by using better heuristics for the executable suffix
- better NDK root directory auto-detection (avoids the need to define ANDROID_NDK_ROOT on some installs)
This is used to reduce the number of distributable prebuilt packages
(i.e. linux-x86_64 is not needed anymore).
Also fix build/tools/build-toolchain.sh to properly copy the GPL and LGPL
license files into the generated prebuilt packages.
Also add a .gitignore files to get less spew from 'git status'
The latter had the effect of removing the benefit of optimization settings, i.e. a typical compiler
command would look like:
<toolchain-compiler> .... -Isources/<module-path> -I -O2 -g
The "-I -O2" was interpreted literally as "search in '-O2' directory, and the optimization was
never set to 2 (or 0 in case of debug mode).
* changes:
Force --no-undefined at link time to generate an error when trying to generate a shared library that references undefined symbols. This can be overriden by defining LOCAL_ALLOW_UNDEFINED_SYMBOLS in your Android.mk to 'true'
* changes:
Fix bad dependency between generated shared libraries and the corresponding installed module. Also fixes the "make clean" target by the way.
* changes:
Remove hard-coded path to my home directory in build/tools/make-release.sh. Now you need to use the --prebuilt-path=<path> option to specify where to pick up the prebuilt toolchain tarballs instead, for example:
Now you need to use the --prebuilt-path=<path> option to specify where to pick up
the prebuilt toolchain tarballs instead, for example:
build/tools/make-release.sh --prebuilt-path=/home/digit/android/ndk
Add also some other options to change the package prefix / release number / etc