- 21 Oct, 2011 1 commit
-
-
David Turner authored
-
- 20 Oct, 2011 6 commits
-
-
Glenn Kasten authored
Change-Id: Ib6bae86d8fb12109bf08dd325523da79b1bf9c9c
-
David 'Digit' Turner authored
This change uses different configuration flags for the static and shared builds of GNU libstdc++, this allows up to disable visible symbols for the static library, but keep them for the shared one. + Fix gnustl_shared module exports. We need to export the static libsupc++ library as well. Curiously the library isn't part of the shared library (but is part of the static one). It's probably something we would want to fix with a local GNU libstdc++ in the future. + New unit test to check that exceptions cross binaries properly (i.e. an exception thrown in a shared library is properly caught in the executable that links against it). Change-Id: Iba1f9bc6f0d4f7333dd3b7a87d5b84dbd7991be2
-
David 'Digit' Turner authored
Update the test so that it actually crashes on Cupcake and Eclair. This unit test is to track the bug described at http://code.google.com/p/android/issues/detail?id=20176 Note that there is no solution yet. It looks like this reveals a bug in the system's dynamic linker that was only fixed in Android 2.2 (probably related to weak symbols). Change-Id: Ie8595016da6cd6fcba71a0d4b73cb0dedbf90a5a
-
David 'Digit' Turner authored
A typo prevented it to remove directories properly. Change-Id: I6ace3ddb934c940f8bd8293736fef15ccb949688
-
David 'Digit' Turner authored
This patch updates all files to refer to the new location of the AOSP source server, which is now android.googlesource.com. It updates the download-toolchain-sources.sh script to download from this server, using the https:// git protocol, instead of git:// + Remove the --git-http option since it isn't supported by the new servers, nor really desirable since the https:// protocol should work across firewalls. In case you need an alternative, you can still use the --git-base option, so nothing of value was lost here. Change-Id: I99816a4791741474708ad390f96e2ba18cea35b8
-
David 'Digit' Turner authored
Fixes b/5486087 Change-Id: I9bb1ecb9853a9472a9999f73ecab30a620330eaf
-
- 18 Oct, 2011 6 commits
-
-
David 'Digit' Turner authored
This fixes a couple of issues in the native win32 build support. Mainly reduce verbosity of host cp/rm commands and deals with cmd.exe program's limitations. We really need our own implementations of "rm" and "mkdir" in the toolbox to avoid this kind of hack, but for now this is good enough. Change-Id: I07b4ad977357de7eeae5217b36c7854765fc0f42
-
David 'Digit' Turner authored
This patch removes the sources for our host tools from the final release package to save about 4MB in the final size. Change-Id: I9874ffc63569832b25734abdf34fa6b22bef346e
-
David Turner authored
-
Glenn Kasten authored
Bugs 4108488 and 5045712 Change-Id: Iaf3fbfac2bdc8045220675552bf031f8b23f2175
-
David 'Digit' Turner authored
This patch adds a --wine option to run-tests.sh to build all the tests on Linux with the Wine emulator, using the native Windows ndk-build.cmd script. This is an easy way to check that the native windows support in our NDK build system keeps running. Change-Id: I023957aa3e4744a094964cbc9b91747aa7ec1c74
-
David 'Digit' Turner authored
This patch is adds support to "native" (i.e. Cygwin-less) Windows NDK build through the new 'ndk-build.cmd' Windows shell script. Just call it from the cmd.exe command-line, when in your project path. The script takes the same arguments than 'ndk-build'. + Adds the source of a new tiny Windows-specific command-line "echo" program. The reason for this is that the 'echo' that comes with cmd.exe is too weird and will not work properly when invoked from make (e.g. it can't deal with double-quoted strings properly: it will print the double-quotes in the output). + build/tools/build-host-toolbox.sh: new script to rebuild the 'echo' program on Windows. The idea is that the 'toolbox' may contain other command-line programs like "cp" or "mkdir" in the future, to avoid relying on the not-so-robust cmd.exe versions of these commands (del, md, xcopy), if necessary. + Make build-host-prebuilts.sh call build-host-toolbox.sh when generating Windows binaries, and package-release.sh unpack the corresponding archive when generating the Windows packages. + build-funcs.sh can now be used to build host binaries too. + docs/CHANGES.html: document new native win32 build support. Change-Id: I4d30f6c6532ae84deb95e7e5f595af76b97d9257
-
- 14 Oct, 2011 21 commits
-
-
David 'Digit' Turner authored
This patch speeds up the packaging operation performed by package-release.sh by ensuring that all prebuilts are unpacked into the reference directory, instead of doing it in the final host-specific one in a loop. Change-Id: I6871e42b708841d5393917fa98c7f740114e631f
-
David 'Digit' Turner authored
This rewrites the script completely to invoke the new build-host-prebuilts.sh and build-target-prebuilts.sh scripts instead. We no longer make the script download or unpack the toolchain source directory, instead you will have to provide it manually, as in the following example: $NDK/build/tools/download-toolchain-sources.sh /tmp/ndk-$USER/src $NDK/build/tools/rebuild-all-prebuilt.sh /tmp/ndk-$USER/src Change-Id: I9f03d13105b7b67a0570a119014a3739f5581d6c
-
David 'Digit' Turner authored
This patch adds a new script that can be used to rebuild all target prebuilts at once. This assumes that you have run build-host-toolchain.sh previously (and thus have all cross toolchains installed in your NDK directory). + Add check_toolchain_src_dir in prebuilt-common.sh and modify other scripts to use it. + Add missing --sysroot compiled flags in builder-funcs.sh Change-Id: I75ee8d6dffb9fba3155b71a291b1f9240e02f76f
-
David 'Digit' Turner authored
If the previous invokation of gen-platforms.sh didn't use the --fast-copy option, then build-gdbserver.sh tried to copy symlinks into its build root (/tmp/ndk-$USER/build/gdbserver/sysroot) and most headers there were dangling symlink. As a consequence, the build failed because the sysroot files were invalid. This patch ensures we do not copy the symlinks but the files that they actually reference instead, fixing the issue. Change-Id: I87c7d4dcdcc68eaee66f3518b9e7a2fae9e48c9e
-
David 'Digit' Turner authored
This NDK build test is used to verify the following bug: http://code.google.com/p/android/issues/detail?id=17164 Note that the bug can't be reproduced with either NDK r6b or later. Change-Id: I86bef606aa07fe15008c95ee9a45340357fa4cdd
-
David 'Digit' Turner authored
Change-Id: If4bb23980722919f40df600eae1126e04d547266 Note: this is not the final version of the ChangeLog, but is good enough to generate a release candidate package.
-
David 'Digit' Turner authored
Change-Id: I3c922b7bc60d9e798cace291c28f772ebf12aea1
-
David 'Digit' Turner authored
+ Allow build-host-{awk,make} to specify a new directory in --package-dir Change-Id: Ibdda77f993f771c9a29f5ac536a991f637a9ea4b
-
David Turner authored
This patch adds the sources for the host awk tool, as well as a script that can be used to rebuild the program from scratch.
-
David 'Digit' Turner authored
This patch adds the sources of GNU Make 3.81 to sources/host-tools/ It also provides a script to rebuild the binary from scratch, and place the resulting program under prebuild/<system>/bin/ Note that this isn't used by the build system yet. Change-Id: I7664bee48e50b22805f6e3f4ee40bcc84ab079c1
-
David 'Digit' Turner authored
This adds the ability to import the OpenMAX headers and symbols. + Probe the OpenSLES source directory to deal with the recent directory rename in the platform source tree. Change-Id: I4ff64fd80d0eabf577c5e1711ea6f85452b40a04
-
David 'Digit' Turner authored
This patch prevents the script from crashing when the package directory does not exist (this is required for the --darwin-ssh build). Also fixes utility function call which name changed recently. Change-Id: Ib409380e61b521f869c1104217e1039d7ce827f7
-
David 'Digit' Turner authored
The option is used to indicate in which NDK installation the prebuilt toolchain binaries should be picked, when generating shell libraries. Change-Id: Id68ba1c221828f4f1e06a30d7797b06069bf8b5a
-
David 'Digit' Turner authored
This makes the script work again. Also adds --package-dir and --ndk-dir options to it. Change-Id: Ib50d169dabdfc40a3875163e1517b8d6b3269447
-
David 'Digit' Turner authored
Change-Id: Ibe24b1602662966bf78fa77688389285e14d574c
-
David 'Digit' Turner authored
Change-Id: Ib8a1c2a9a7af8a3ec104cb438d5d156226ff4161
-
David 'Digit' Turner authored
We disable the build of the GNU libstdc++ when building the toolchain, because we are now able to do that with the new build-gnu-libstdc++.sh script. Change-Id: Ibe97cd59eef136f15da61d767ecff8d1f1497590
-
David 'Digit' Turner authored
This issue is discussed on android-ndk, but I could not reproduce it. The unit test will catch the problem if it happens in the future. Change-Id: I05cd92cd79a96cc91698590a6fb5903d48295c65
-
David 'Digit' Turner authored
This ensures that the temporary directories used to build the unit tests are properly cleaned up. A bug prevented certain tests from building properly under various rare conditions. Change-Id: I02d063bdb7d26d39dd3d73c590cdbb9b66612944
-
http://code.google.com/p/android/issues/detail?id=16010David 'Digit' Turner authored
Turns out that we can't reproduce the problem. Still a good idea to have a regression test here. Note that we built three versions of the test program, each one linked to a different C++ runtime. Change-Id: I5fe0a4850725aa60d25df1864a4cb66f01b2e227
-
David 'Digit' Turner authored
This is a fix for http://code.google.com/p/android/issues/detail?id=9400 The main intent-filter in an activity can have multiple categories. The previous awk script (extract-launchable.awk) only used the last category to determine whether an activity was launchable. This modifies it to accept any activity with a main intent-filter that has at least one category of LAUNCHABLE. Change-Id: Ia9a6898470acd4cd067d8f6edea8093595f1191c
-
- 12 Oct, 2011 2 commits
-
-
David 'Digit' Turner authored
This patch ensures that the shell system libraries that are generated by gen-platforms.sh never ever expose any symbol from libgcc.a. Fact is that libgcc.a is linked against any shared library on Android (be it a system or application library). Because the symbols in this library don't have hidden visibility by default, they get re-exported by the binaries (e.g. /system/lib/libc.so exports __div0 or _Unwind_Resume). When using the standalone toolchain, one can naively do something like the following: gcc -shared -o libfoo.so foo.o -lc Which gcc will translate as a link command that looks like: ld -o libfoo.so foo.o $SYSROOT/usr/lib/libc.so /path/to/libgcc.a In this case, references in foo.o to symbols like __div0, which are automatically created by the compiler under various circumstances, will result in a dynamic import for the '__div0' symbol, that will be looked inside the system libc.so at runtime. This is problematic because when we upgrade the toolchain used to build the system, we change the set of libgcc symbols exported by /system/lib/libc.so, and this may result in ABI breakages. What we want instead is for libfoo.so to have its own copy of __div0 et al. If our shell library in $SYSROOT/usr/lib/libc.so doesn't export the symbol, its code will be taken from libgcc.a and added to libfoo.so directly. Note that when we use the NDK build system, it ensures that libgcc.a is placed before any shared library in the final link command, i.e. that something like the following is used: ld -o libfoo.so foo.o /path/to/libgcc.a $SYSROOT/usr/lib/libc.so In this case, the problem doesn't exist because our build system enforces the correct ordering. This cannot be guaranteed when using the standalone toolchain unless this change is implemented. Change-Id: Ic195d21fe56c7118366c2536efa5fc264a7fb263
-
David 'Digit' Turner authored
Fixes http://code.google.com/p/android/issues/detail?id=20017 Change-Id: Ibec86df874222792c236f943a97b1366c7e6ca58
-
- 11 Oct, 2011 4 commits
-
-
David 'Digit' Turner authored
This fixes the documentation to properly list EGL as a stable NDK API starting from API level 9 (i.e. Android 2.3 / Gingerbread). Fixes http://code.google.com/p/android/issues/detail?id=20077 Change-Id: Ia32bdcdd22eedf17fb88355777cec1c1096fe40f
-
David 'Digit' Turner authored
This is to fix http://code.google.com/p/android/issues/detail?id=20261 Change-Id: Ic0eb95da1498cce5fa51e36f04016598aadad2db
-
David 'Digit' Turner authored
Change-Id: I3118e86d5fd3df19dd444effacf2a3289b2bb68f
-
David 'Digit' Turner authored
This removes a typo that prevents the script from working on Windows. Change-Id: I27a37bfd2f41e6bddd3aa9005afe96f64064edbb
-