0ff95f4b0c576971f5079c9976e1f98f629aca6d |
|
07-Aug-2013 |
Ray Donnelly <mingw.android@gmail.com> |
Fix --ldflags param passed to gen-toolchain-wrapper.sh .. in build/tools/prebuilt-common.sh, --ldflags is passed without the $ in-front of HOST_LDFLAGS so that ends up as the first parameter the wrapper passes to the real ld.
|
92f8a188221f677a9b4fb84bc25244c90b534665 |
|
25-Jul-2013 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Update gen-platforms.sh to be able to generate multilib crtfiles/libs Run with -arch=x86_64 will produce lib, lib64, and libx32 dirs which are expected for multilib toolchain build. Crtfiles update is required: https://android-review.googlesource.com/62598 Change-Id: If0b65a269c1d22fa039d042cf07d930aaeb7f80a Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
8475232a287eb019f55a06eaddd519ed1f4c1ae3 |
|
16-Jul-2013 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Fix x86 multi-target gcc build with 32-bit host It enables 32-bit host compiler build which is able to generate x86/x86_64/x32 code with -m32/-m64/-mx32 accordingly. Change-Id: Ia50d10d134078ed9eddea279a50f2affed438922 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
2798655eb091adf04c7e09f57184b69056624a1c |
|
21-Jun-2013 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Enable x86_64 target in common scripts and related misc fixes dev-defaults.sh: * Handle x86_64 target name. prebuilt-common.sh: * Enforce x86_64 host for x86_64 target. build-host-gcc.sh: * Setup gold as default linker. * Enable libgomp for x86. * Add special case to use bfd linker for x86_64-4.7. * Remove mutually exclusive -O2 -Os at the same line. * -fomit-frame-pointer is default at -O1 and above. * Cleanup x86/x86_64 flags in build-host-gcc.sh. All flags which makes sense here are passed with configure options. Don't need this full set. * Disable libsanitizer for 4.8 where it appears, it fails on build. dev-rebuild-ndk.sh: * Remove duplicated register_try64 call. * Replace archs list hardcode with variable. Change-Id: Iad6607e05ca7c3d8abed73e0b51c73d25e2a0e0a Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
bd7544d2c67817fc565e89529a56bae3cc063622 |
|
10-Jun-2013 |
David 'Digit' Turner <digit@android.com> |
Move ndk-common.sh to build/tools/ It doesn't make sense to put it under build/core/ anymore. Change-Id: I3a63ecabd15d4c34c2ba3800b95246f5eeb6a6f3
|
5c982c5a68f715a60a3589d1e1f69c526148356d |
|
22-May-2013 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Enable x86_64-* toolchains build in build-gcc.sh script Enabling x86_64-4.7 and x86_64-4.8 as the targets. These patches are required to have successful builds: https://android-review.googlesource.com/59146 https://android-review.googlesource.com/59157 Note that in general platforms are required to have successful builds, crt* files in particular. But... this patch disables a few gcc libs which really require platforms, and others don't need them in fact. We don't have x86_64 platforms at this moment. To have successful build one can create temporary symlinks android-[9,14]/arch-x86_64 to android-[9,14]/arch-x86 and run gen-platforms.sh --arch=x86_64 prior to running build-gcc.sh. This can be used as temporary workaround until we have real x86_64/x32 platforms in place. See also https://android-review.googlesource.com/#/c/57220 for the same change in build-host-gcc.sh Change-Id: If2473252ed251f37235d77d7602e60b7b4a46fd0 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
3874f073abc9098ec95721d64824027fc4a3b462 |
|
21-May-2013 |
Lai Wei-Chih <Robert.Lai@mediatek.com> |
Build compiler-rt. Need https://android-review.googlesource.com/#/c/54645/ Change-Id: If128de05f80f6f859dbd2327162b6360e727785b
|
b662e86e1550c29e870b82ab08c155cc6e1f34e8 |
|
16-May-2013 |
Lai Wei-Chih <Robert.Lai@mediatek.com> |
Generate shared libraries for plugin header. Also add helper function 'arch_in_unknown_archs' to determine whether given arch is unknown. Change-Id: Ia51923bca6015aef38eadd69a0b58905518db863
|
7801cdebd6d91deb6c8ab1c457d22f9223d430cd |
|
07-May-2013 |
Ray Donnelly <mingw.android@gmail.com> |
Add -D__USE_MINGW_ANSI_STDIO=1 for MinGW-w64 GCC build Fix usage of ABI_CONFIGURE_BUILD in build-host-sed.sh Add usage of ABI_CONFIGURE_BUILD in build-host-make.sh to fix configure error.
|
4a25e76b4654c937a5aac548720d1a9d28172f0a |
|
09-Apr-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Experimental aarch64 build support Change-Id: I66e4bde02ed0db75afd96475d53852e79d6e6df4
|
e627a6145b678c273ed63de90097cd1b79708d2c |
|
22-Mar-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Warn if shell isn't bash We try to avoid bashism in build scripts but the claim isn't rigorously validated on regular basis. Warn the possiblity that setting shell to bash (eg. from dash in Ubuntu) might solve weird build problems. Change-Id: I67790b3a632dd12c5e5ccd78d1ffe572679dd609
|
632c4678596aa3416764a8d8ec3242ca378e8a29 |
|
13-Mar-2013 |
Lai Wei-Chih <Robert.Lai@mediatek.com> |
Support plugin in platforms. Change-Id: I5480f8bf6883de3e685fb8293335f2200b49c834
|
0269f62fb52a4c3434296a37df00cdc180baac89 |
|
12-Mar-2013 |
Lai Wei-Chih <Robert.Lai@mediatek.com> |
Support rebuilding stlport/gabi++ libraries with clang. Pass --llvm-version=<ver> to build_stlport.sh/build_gabi++.sh to enable. Note that the default toolchain is still gcc. Change-Id: Ibab76c443137b71aa215ce3a740ff77d2b760dcc
|
3b28972d8a5a108579496233266fccd69c9d2fe5 |
|
17-Jan-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Fix canadian build 1. Rename functions *_mingw_* to *_canadian_* to cover new switch --darwin which define DARWIN=yes and expect toolchain prefix at ${DARWIN_TOOLCHAIN}- 2. Add new flags CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD for "build". See https://android-review.googlesource.com/#/c/50032 and https://android-review.googlesource.com/#/c/50121 Now we can export LDFLAGS as well. 3. Add NATIVE_CC for awk which needs to run "maketab" 4. "Clean up" in build-ndk-stack.sh 5. Fix make-3.81 and sed-4.2.1 configure $CPP to take $CFLAGS as well 6. make-release.sh and rebuild-all-prebuilt.sh build darwin-x86 too if ${DARWIN_TOOLCHAIN}-gcc is found Change-Id: If0d1452990b705e0d62b9e8c6de8911296158533
|
67d1b33e49eac68db9e8f0d2553d181851aa2d8b |
|
06-Jan-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Move i586-mingw32msvc- ahead of i686-w64-mingw32- in search order awk.exe generated by i686-w64-mingw32-gcc crashes in WINE 1.2. It runs fine in real machine. But for testability 32-bit toolchain is better compiled by i586-mingw32msvc-gcc Change-Id: Ibdba2ae3ac7416c2c05719a31a960d90dfd78a8f
|
d0b797fbf45f3cec923b22f93b61e86a1f867844 |
|
02-Jan-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Misc fixes for 64-bit Windows toolchain Change-Id: Idaf7d93dfd031e40b7b005805e71688f079e94ac
|
3574653b120d5a973f2c2c2a09f77639158c02d3 |
|
26-Dec-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Enable threading support for MIPS Change-Id: I0309db487a56ea9fe4afbc6fa4c7648e63077d43
|
c8078f93e69b23919ae82b070a95962470c68c34 |
|
25-Dec-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Use HOST_CFLAGS more consistently HOST_CFLAGS which may contain MacOSX SDK and flags is now used by all build-host*.sh Also fixed: 1. Compile GCC with -O2 !! 2. Bump up SDK to 10.6 (the min version of SDK/NDK for a while) 3. run llvm and polly test but don't fail when ont all test pass 4. Remove link to polly 5. No need to show "Using C compiler" "Using C++ compiler" for --mingw which uses wrapper Change-Id: I25298529d40b6a09530aa35aa2ec2cb3223857e3
|
cfad5b32b5806b04977893bbe20de5ce3e693a3e |
|
30-Nov-2012 |
Ben Cheng <bccheng@google.com> |
Enable multilib for arm-eabi toolchains. Change-Id: I46c7187f31aeecde5ad5b45bd91b52aa1bed5114
|
034f19d88fc067e6276af68b499b814689a13224 |
|
28-Nov-2012 |
Lai Wei-Chih <Robert.Lai@mediatek.com> |
Add missing arm-eabi-* in the error message. Change-Id: I614a2f595e3653d00a41010f13b755b0e6461f25
|
db2796c58c16aab2ad159f154b64885e77addffb |
|
20-Nov-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Use host prebuilt gcc to build MacOSX tools 1. Use prebuilts/gcc/darwin-x86/host/i686-apple-darwin-4.2.1 to build MacOSX tools 2. Better way to detect bitness of compiler: similiar to the config.guess in morden GCC 3. Add "-m64" when needed. Note that the prebuilt GCC generates 32-bit by default. 4. Drop 10.4 SDK Change-Id: Ia69138b0b1eb442499f467171fd3f34fa93280a4
|
adf6ae3dd2bec8520f6bc7a995b48d4a682d6422 |
|
15-Nov-2012 |
Ben Cheng <bccheng@google.com> |
Add arm-eabi configuration target for kernel build. Change-Id: I004ebed2187588995c588d976879bb9ba3e98a73
|
ef8df853bb5306773875d94f08162b9fea8db96e |
|
13-Nov-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Use gcc-sdk wrapper for 64-bit legacy toolchain Replace prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6 with prebuilts/tools/gcc-sdk otherwise "build-gcc.sh --try-64" may fail in libbfd when "-m32" is passed to x86_64-linux-gcc (which isn't built to accept -m32) Also remove outdated comments Change-Id: Iafc853d3a19ae003c43a1acf05e63d2dd2da2b1a
|
151e9ec1eb7544dac1750a2b48d508f2f185d006 |
|
18-Oct-2012 |
David 'Digit' Turner <digit@android.com> |
Ensure 64-bit host binaries are generated with the legacy toolchain. This ensures that any 64-bit binary can run on older Linux distributions than the one the host machine runs. Change-Id: I20206b90e45c40d0f8b0a67a5bfe49289893dcf0
|
b61488846bc5e63ed02252ca0ccbee4beedd8cca |
|
30-Aug-2012 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Add i386-pc-linux-gnu- to the list of wrappers for BUILD toolchain Clang build with mingw wants *-pc* on configure. Checked on Fedora 17. Change-Id: Icfef86056e36d20c4fb51c341041ebe920b219a2 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
ed218f8bf0ca487f2e76230a20c5e856226ee4a3 |
|
27-Aug-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Add new functions log_n and dump_n "echo -n" isn't supported in MacOSX. Add new functions log_n and dump_n to use printf instead Change-Id: Ie635edda5242e8dc13dd190132343af5750407de
|
9663333b0571152f648b4ce280de4ce9404ec5d5 |
|
23-Aug-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Fixed mingw build in make-release.sh Fixed make-release.sh to not do windows build alone w/o also build linux-x86. Change-Id: I3783856a35ba446d563642581f31c0fc7334c34a
|
77c7cb6976c2c48b5dbc48030f19e31ae1e0c5ac |
|
31-Jul-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Script build-gcc.sh builds gold as the default linker Modify build-gcc.sh to build gold for X86/ARM on Linux, MaxOSX, and Windows hosts, and set it as the default linker. Bump up TOOLCHAIN_GIT_DATE to get fix in toolchain which allows ld.gold to be built in Windows. Put i586-mingw32msvc- in the last of mingw toolchain list, because it may crash during ld.gold compilation Change-Id: I779b734711693c8b4259919da9b4a442fe9c7cdd
|
1ed5aa1229fbf1baf3b22a12782e89c83a01043e |
|
25-Jul-2012 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Add more mingw gcc prefixes for Fedora17 host. Change-Id: I2ad9622ee21d85f4aab896af46d445dbdaa94ca2 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
0136e5405c99a3fbe1be109ee8ff186475c0d99a |
|
03-Jul-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Change default GCC to 4.6; Build separate gnu-libstdc++ for GCC 4.4.3 and GCC 4.6 All target prebuilt will be built with GCC 4.6. GNU libstdc++ is GCC dependent. GCC 4.6 seems to take header/libraries built by GCC 4.4.3, but the reverse isnĘžt true. With this CL GCC will now use its own version of libstdc++. make-standalone-toolchain by default install GCC 4.6. Use --toolchain to select GCC 4.4.3. Change-Id: I2f4042501989fbfce94a521e6c24e1102d95a3aa
|
6807ab93bc6bc50416b0055b4a0b67cfd54c231f |
|
06-May-2012 |
David 'Digit' Turner <digit@google.com> |
build-host-gcc.sh: New script to rebuild toolchain. This patch adds build-host-gcc.sh, a new script that can rebuild our GCC-based toolchain from scratch, without using the AOSP toolchain/build.git scripts. NOTE: The script does *not* rebuild GDB at all (a future patch will provide build-host-gdb.sh to do so). The script is capable of building *several* toolchains at once, minimizing what needs to be done to speed up the whole process. For example, here's how to rebuild the linux-x86 and windows toolchains for both gcc 4.4.3 and gcc 4.4.6 on all of arm,x86 and mips: build/tools/build-host-gcc.sh --toolchain-src-dir=/path/to/toolchain/src \ --systems=linux-x86,windows \ arm-linux-androideabi-4.4.3 \ arm-linux-androideabi-4.6 \ x86-4.4.3 \ x86-4.6 \ mipsel-linux-android-4.4.3 \ mipsel-linux-android-4.6 This operations takes 31 minutes on a 16-core 2.4 GHz z600, not bad for something that generates 12 different toolchains. Define NDK_CCACHE=ccache in your environment to speed-up rebuilds. On my machine, the above command takes above + The script will build for the host system by default. This means linux-x86_64 on 64-bit Ubuntu 10.10, for example. This script has been tested to build the following toolchains succesfully: arm-linux-androideabi-4.4.3 arm-linux-androideabi-4.6 x86-4.4.3 x86-4.6 mipsel-linux-android-4.4.3 mipsel-linux-android-4.6 For the following host systems: linux-x86 linux-x86_64 windows (see note below) windows-x86_64 darwin-x86 darwin-x86_64 Regarding windows, the build succeeds with the i586-mingw32msvc-gcc cross-toolchain installed on Linux, and with x86_64-w64-mingw32 which can be rebuilt from sources with build-mingw64-toolchain.sh Change-Id: I00f5d16d8db729e7efdf0e138888f761936f3c4d
|
bf3f7295a6d9cb0a09dd8d950134abe5fa271ac9 |
|
05-Jun-2012 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Fix windows cross NDK rebuild with mingw Fix cross toolchain wrappers generation routine and add corresponding calls per each tool. Tested on Linux Fedora with: ./build/tools/dev-rebuild-ndk.sh Change-Id: Ib88c59d0b37d089e79f0dca76394e01a431d1e60 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
f3bba2e7a5623552aa505d55bdd198cab031e2bc |
|
02-May-2012 |
Pavel Chupin <pavel.v.chupin@intel.com> |
Add convert_arch_to_abi and fix STL runtimes builds Build only abis targetted by corresponding arch, otherwise one arch build will require another arch platform. Change-Id: I102a8a1d00c0557ebcd99f651ef03ca04c555562 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
0f38b5404153c1fc0116db3159289f48aba9f62e |
|
17-May-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Update toolchain patches; Change GDBSERVER_HOST Update patches to better fix for "ld --gc-sections" issue. 07e1f1545d1f8f81a67ce17256f96df8ab7f70e3 2023b793f050f20fe8fbed6270994f99ca1fef38 Also, changed GDBSERVER_HOST to *-linux-android. Change-Id: Ib47923c142672fa66d83806dd608e767634020f8
|
61c1722b71ed63f0a3098610459459a51ca041b8 |
|
17-May-2012 |
Chao-Ying Fu <fu@mips.com> |
Remove mipself.x, mipself.xsc, and MIPS linker commands, since binutils 2.21 has modified linker scripts. Please check https://android-review.googlesource.com/#/c/34960/ . Change-Id: I8b74bd76f2b80e1673d43ddb85740f35a037d4c1
|
fccac5708744076f26aaf708844c531601b0c56e |
|
09-May-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Rename x86 toolchain prefix from i686-android-linux- to i686-linux-android- Requested by Intel. Various configure scripts check linux-android for Android specific features. ARM and MIPS toolchain alrady follow this convension. Related CL: https://android-review.googlesource.com/#/c/36450/ Depends on: https://android-review.googlesource.com/#/c/36421/ Change-Id: Icd5f5eab2a97495ef1e53eeb37af48f062a9eb33
|
8db29a81de9ca8d047884a038364f96530f88359 |
|
20-Apr-2012 |
David 'Digit' Turner <digit@google.com> |
Fix typo that prevent building mips target prebuilts. Due to a typo, building mips prebuilts would fail if NDK is not defined in your environment. Change-Id: Id4eda46e256bf375915aeef3ec1009c9c6ae6443
|
248296a021718020905a736f9b3c7bc24a830139 |
|
20-Apr-2012 |
David 'Digit' Turner <digit@google.com> |
Fix typo that prevent building mips target prebuilts. Due to a typo, building mips prebuilts would fail if NDK is not defined in your environment. Change-Id: Id4eda46e256bf375915aeef3ec1009c9c6ae6443
|
7d114f674cef06310af1661595437a77bbd40367 |
|
09-Apr-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Reference to correct prebuilt toolchain location Change from prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.4.3 to prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.4.3. NOTE that the 4.4.3 version doesn't exist in AOSP. Change-Id: I690b1db3a99a92e7b071ca12cfa521cf23f95a2a
|
49472609babc8e7b998d9314d4040f234a2a3cb2 |
|
05-Apr-2012 |
Chao-Ying Fu <fu@mips.com> |
Change toolchain name from mips-linux-android to mipsel-linux-android, because the target triplet requires el for MIPS little-endian targets. Change-Id: I1ff6b888c2d7e2517ce00979dfa3719616d13d71
|
4208729705bce3cd57b29195672776b0fe072772 |
|
04-Apr-2012 |
Andrew Hsieh <andrewhsieh@google.com> |
Fixed typo: darwin_x86_64 -> darwin-x86_64 In get_prebuilt_host_tag, darwin-x86_64 is translated into darwin-x86. Change-Id: Ia113e45831685d0d57d85df24edeac846ca287a6
|
097812d190ebd3539c82c9c2b24161ae5e75cbb8 |
|
30-Mar-2012 |
Chao-Ying Fu <fu@mips.com> |
[MIPS] Support to ndk scripts to build MIPS NDK Change-Id: I36e85a57d409d3f56c37737713bbeb9953b24eaa
|
0fa45c47b867a2b94ac63316ada0337546e4beb8 |
|
22-Feb-2012 |
David 'Digit' Turner <digit@google.com> |
build-gcc.sh: Fix Windows canadian-cross build for binutils 2.21 For some exotic reason, binutils 2.21 will fail to build properly in canadian-cross configuration (i.e. generating ARM-targetting Windows toolchain binaries on Linux) Experimentation showed that this was due to the fact that CC and CXX were defined in the environment at the wrong time. To solve this we need to unset these variables and instead rely on a host-specific toolchain named 'i586-pc-mingw32msvc-gcc'. Note that this is different from 'i586-mingw32msvc-gcc' which is the name of the 'mingw32' toolchain installed on Debian/Ubuntu. To solve this problem, and still be able to build binutils 2.19, we generate a wrapper toolchain with the right name. This also means we can't use ccache when using --mingw to build the intermediate host cross-compiler during the canadian build (i.e. the one that is used to generate the ARM binaries like libgcc.a during the build). Change-Id: Ia75b6b651762e5d262635c6832ef4df827539fb2
|
b80ca3129550f14afb7a22429318f12737ab1f92 |
|
10-Jan-2012 |
Jean-Baptiste Queru <jbq@google.com> |
Reference new location of SDK toolchain Change-Id: I0089c2ea5cc19bcc20fe80f0bc547b7ddaf71629
|
3da8f16cb524b943d2a0896ec7e14b2eaf98c8be |
|
15-Dec-2011 |
David 'Digit' Turner <digit@google.com> |
Fix the armeabi-v7a gnu libstdc++ library This patch ensures that the content of sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a really contains armeabi-v7a binaries, instead of armeabi ones. http://code.google.com/p/android/issues/detail?id=22141 Change-Id: I729d6504641f9c481901bc6ad017add56be9dbf5
|
66850386d842e890ae22c5f220a2a24a167602cd |
|
02-Dec-2011 |
David 'Digit' Turner <digit@google.com> |
Fix standalone toolchain C++ linking issue. Gets rid of a regression introduced with NDK r7 This patches gets rid of libstdc++.so in the standalone toolchain installation, because when used at link time, it generated executables and shared libraries that could not be properly loaded by the dynamic linker. Instead, one has to link with -lgnustl_shared now to be able to use the shared version of the GNU STL with the standalone toolchain. You can still use -lstdc++ but this will always use the static version of the library, just as before NDK r7. + fix tests/run-standalone-tests.sh Change-Id: Ib992ce6f5a97bbd02cc318748636dca766b80857
|
ec2b8ddacdadf4c04325dfd0a4135566ec29a8ef |
|
27-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
Fix the use of $@ in all shell scripts This patch allows all our development scripts, as well as ndk-gdb to work well when parameters containing spaces are used. The $@ shell variable is very special because it will expand differently if inside a quoted string. What this means is that, while $@ normally corresponds to the list of all parameters to a function or script, we have: $@ -> expands to a single string "$@" -> expands to a series of strings This is important when using them as parameters to other commands for example consider: # Simple function to dump all parameters, one per line. dump () { for ITEM; do echo "$ITEM" done } dump1 () { # this will always print a single line dump $@ } dump2 () { # this will print one line per item dump "$@" } dump1 aaa bbb ccc # prints "aaa bbb ccc" on a single line dump2 aaa bbb ccc # prints three lines: "aaa", "bbb" and "ccc" Generally speaking, one should always use "$@" except in very rare cases (e.g. when called from an eval command). Change-Id: I87ec2a7b078cbe463f0ec0257ecad8fd38835b2e
|
612e5d967db47c99996511a9e78f7c29d2dbdc67 |
|
10-Nov-2011 |
Nick Kralevich <nnk@google.com> |
expand error messages. Add information to the error messages to make it easier to determine what went wrong when the scripts error out. Change-Id: I6c30f35f408beabec3c375b28499552dddb3743e
|
ad1afc5e66ab40201947a3178eba975515b0d73c |
|
14-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
Add win32 native build support 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
|
1c663b4a2961e4c9bde69eb740327083bbc92ed8 |
|
14-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
build-target-prebuilts.sh: new script 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
|
d9bb7ebc331f10c98f5c5513fc8d9e5daf12c6e6 |
|
13-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
build-ndk-stack.sh: Fix the script This makes the script work again. Also adds --package-dir and --ndk-dir options to it. Change-Id: Ib50d169dabdfc40a3875163e1517b8d6b3269447
|
fba82fbe071106eab571853953c5c4e37cb1c2bf |
|
13-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: Do not build libstdc++ with GCC 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
|
13b5f454053aa62ea4cda3c5aa0fb80cfca82dad |
|
10-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: minor refinements + Make some messages "log" instead of "dump" + Add the ability to specify host system as parameter to many functions + Define HOST_TAG32 as the 32-bit variant of HOST_TAG Change-Id: Id0bfaf48c1599be78a4f9f7441c3f48568867d4f
|
b0d90531b30c42891feaa4860e21ed43af63c93a |
|
10-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
build/tools/dev-defaults.sh: new script This patch moves the definitions of all defaults to dev-defaults. This should make it easier in the future to upgrade the toolchains or target binaries. Change-Id: I140b51c5b5116d37d16e628120f8f58974252de4
|
251da5e27a332d0d67f6db67c6caa3747a79b099 |
|
03-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: refinements Change-Id: I26e43eef14ced900fade15058bd3d95b4fa3e369
|
2397ae759e7f575437625c5d905cba3eafacb42c |
|
07-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: add register_jobs_option Change-Id: Ibed2026c0ff80041a4d024b7b15dc2c70240dc27
|
0528f4d870022e4c3ee4e32714a7ef88908e310f |
|
01-Oct-2011 |
David 'Digit' Turner <digit@google.com> |
dev-platform-imports.sh: new development script This patch introduces the dev-platform-imports.sh script. Its role is import system headers and libraries from a fresh Android platform build and use them to populate a special "import directory" (e.g. /tmp/ndk-$USER/platforms-import/) The import directory will contain only headers and symbols file. For each system shared library, two symbol files will be generated: - $DST/android-$PLATFORM/arch-$ARCH/symbols/$LIBNAME.functions.txt - $DST/android-$PLATFORM/arch-$ARCH/symbols/$LIBNAME.variables.txt The idea is that we're going to remove all prebuilt shared libraries from development/ndk in a future patch. Instead, we will store the symbols and generate shell libraries when calling build-platforms.sh We need to keep the prebuilt static libraries though because they are required to build the toolchain files (plus, some NDK developers do use them to generate static executables). + add gen-system-symbols.sh which does the symbol file generation plus the filtering of undesirable symbols in our system libraries. Change-Id: I5882cd03a6e9ccc580a6577a6684ec40f6a1a739
|
49e5ea4fdd8960bbc856136c2aa7715292955c55 |
|
23-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
Update GDB to version 7.1.x Change-Id: Idabf82e3fa909a1000011fd621810a62857e453e
|
3da537977a724ebf88ba889f0d8177ea20f5c007 |
|
22-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: Distinguish host and target builds This patch modifies the helper functions inside prebuilt-common.sh to distinguish between host and target builds more easily. A target build is used to build target Android binaries, while a host one is used to build binaries that will run on the host machine, i.e. invoked by the NDK build script. We will use host builds to generate the Windows helper binaries that the NDK depends on (sed, awk, make, etc...) in future patches. Change-Id: Ifbc2a112ee08fa42c9987ee26fee4539476e91a4
|
32849be716b35b437d1c338e43450af10b9fa9b1 |
|
22-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: allow inclusion from any script This patch allows any script to source prebuilt-common.sh properly. Before that, only patches in the same directory, i.e. build/tools/, could source it without errors. Note: To do that, the parent script must define NDK_BUILDTOOLS_PATH to point to the build/tools/ directory. If the variable is not defined, prebuilt-common.sh assumes that it is sources from build/tools/ Change-Id: If91360a0a10571f968049003c8f7192ad98c7f5c
|
9ac252a15c54d43654ebbc915c02a948716cf1cc |
|
28-Jul-2011 |
David Turner <digit@android.com> |
prebuilt-common.sh: get_prebuilt_install_prefix This patch adds a new function to prebuilt-common.sh that can return the install location of prebuilt host binaries. It currently is: $NDK/prebuilt/$HOST_TAG/ This will be used to store host binaries, like the Win32 versions of GNU Make, Awk, Sed and others. Change-Id: I8a543b4f4d6b728e13046f3759a5b8584cea6001
|
c38f5f527a59f1d849371d662f8882d325edc3bf |
|
14-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
GAbi++: new C++ runtime with RTTI support This patch adds a new C++ runtime that can be used by modules by setting APP_STL to either 'gabi++_static' or 'gabi++_shared' in their Application.mk GAbi++ is an alternative to the GNU libsupc++ that provides RTTI support (with exceptions added in the future). The goal is to use it to support RTTI (and later exceptions) with our version of STLport, or even a different non-GNU STL. + new build-gabi++.sh script to rebuild the prebuilt libraries from sources. + support in rebuild-all-prebuilt.sh + support in package-release.sh + Unit test to check that RTTI actually works, both in the static and shared library case. Change-Id: I7e73a31a4d24b5baa36fef357b69064c192ddc56
|
533591775b30ed76d9f1b1aaa12f9b330e1d0318 |
|
21-Sep-2011 |
David 'Digit' Turner <digit@google.com> |
Add NDK_CCACHE support to GCC build This patch allows host rebuild scripts to use NDK_CCACHE when it is defined. Unfortunately, this doesn't speed build-gcc.sh tremendously on my machine, because most of the build time is done with the second-phase "xgcc" binary that is generated during the first phase. Still shaves off 20s out of 4m40s on my machine with -j32. Improvements should definitely be better for other host binaries. Change-Id: I7c0c8cfcab9600dc3317f1c9569602a457b88d57
|
c0bf90ae0f4f84875d0af5d7166b57deb77e57a3 |
|
28-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
ndk-stack: Fixes + Documentation This patch fixes the ndk-stack tool to properly work as advertized, and adds a new documentation file (docs/NDK-STACK.html) to illustrate its usage. + Add build/tools/build-ndk-stack.sh to automatically rebuild the host tool from sources (and from scratch). + Ensure that rebuild-all-prebuilt.sh invokes build-ndk-stack.sh and places the resulting binary at the top of target NDK directory. + Ensure that package-release.sh places the prebuilt binaries into the final packages. + Add a --host-only option to rebuild-all-prebuilt.sh to indicate that you only want to rebuilt the host binaries (and none of the target ones). The --darwin-ssh and --mingw options also imply --host-only. Change-Id: I5f26e83378c02bfd3b62fa76a7c50c5755104fa9
|
951491bfe4536a1cde79d7db4134ba81a9988bd9 |
|
25-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
Fix build-stlport.sh We fix the script used to rebuild the STLport prebuilt libraries. Instead of requiring a valid NDK installation, we only need prebuilt toolchain binaries and platforms files instead. By default, the script now builds a temporary Makefile that contains all the build instructions. This allows us to launch it with parallel jobs (see -j<num> options). You can use the new --no-makefile flag to disable this and build all files in sequence directly from the script. + Fix the --package-dir option. Note that this also fixes rebuild-all-prebuilt.sh which uses build-stlport.sh Change-Id: Icf64e700cc110d2b304f0372875aa7752cb0ad82
|
5558b35a157b458bb0bd2b144b740c7230ae2803 |
|
24-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
dev-platform-expand.sh: new script This script is used to expand platform files into a target directory. Change-Id: I89ce9c9bb9501ad98dea067a55058bcb20862569
|
b9007524f8244c5a7083447ef0342388d4c39c02 |
|
03-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
Remove arm-eabi-4.4.0 support The arm-eabi-4.4.0 was deprecated a long time ago, now remove any support for it from the NDK to simplify things. Change-Id: I41e65539824673466a1fc4c22bbd0d42a49d1394
|
3592767ce5ca9431eea728370c99d97aadb0800e |
|
03-Jun-2011 |
David 'Digit' Turner <digit@android.com> |
build-stlport.sh: make script error-proof. This patch improves build-stlport.sh by making it check that it can use a fully complete NDK installation to perform the STLport libraries build. Before that, it was easy to call the script from an incomplete NDK installation (e.g. from the ndk git repository itself without having called build-platforms.sh or built the toolchain previously). Also modify rebuild-all-prebuilt.sh to properly call build-platforms.sh before building the STLport libraries. As a secondary effect, this fixes the "rebuild-all-prebuilt.sh --arch=x86" case. Note that this breaks the --darwin-ssh option, but this issue will be addressed in a later patch. You can still run build-all-prebuilt.sh directly on a Darwin machine to generate the binaries. Change-Id: I257f8536d3d156bc82f862d7f57a45ec39ebc8fe
|
7a54bc8cb5965d2fa65ccbe722bb2f42e0bbb9b4 |
|
30-May-2011 |
David 'Digit' Turner <digit@android.com> |
Ensure all build scripts use /tmp/ndk-$USER/ This patch ensures that all the scripts used to rebuild the NDK are putting stuff under /tmp/ndk-$USER. This allows several users to use the same NDK installation in parallel. More cleanup will soon follow. Change-Id: Iec765e44c7f89c9fbf21c15bfd69fb88b1bc03b9
|
2be921d20fbd4ad20881a858b76defcc3c41d9a8 |
|
27-May-2011 |
David 'Digit' Turner <digit@android.com> |
dev-system-import.sh: Add --force option. This adds a --force option to the dev-system-import.sh script to force it to copy all built platform files to a single android-$PLATFORM directory under development/ndk. The idea is to use this as: dev-system/import.sh --force --arch=x86 9 In order to sanitize the headers and library files for x86 support. Also, ensure that gdbserver is linked statically with the android-9 platform libraries for both arm and x86 by default now (the result is a static executable that will run on previous releases of the platform). Change-Id: I316d6d62a786145773a14a4762dc057531928b75
|
1c60afab0086a6ad50d375723610c16688e9ae7c |
|
24-May-2011 |
David 'Digit' Turner <digit@android.com> |
build-gcc.sh: Update default GMP and MPFR version numbers. This updates the default GMP and MPFR version numbers used when building the toolchain binaries. This really makes arm-eabi-4.4.0 the special case now. + Add --gmp-version option. Change-Id: I267fa108b5e799598ee53bb28674870a3f98f695
|
9e1eea22a2de2e6f8f1aae73a80b336723030091 |
|
14-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
build-platforms.sh: Add --arch option. This adds the --arch=<list> option to replace --abi=<list> (which is still supported, but deprecated). The reason is simply that the script expects a list of architectures, not ABI names. Also, make the script accept comma-separated lists as well as space-separated ones, this means that now the following are equivalent: build-platforms.sh --abi='arm x86' build-platforms.sh --abi='arm,x86' build-platforms.sh --arch='arm x86' build-platforms.sh --arch=arm,x86 The last form is the preferred format, because it makes it easier to invoke the script with an architecture list from other scripts. Change-Id: Iad3ccf79470b221e3fa56173f55b8db66687d53b
|
9c6351a1ad842ce2ce01ec0eb96448eef68639c3 |
|
27-Apr-2011 |
Mark D Horn <mark.d.horn@intel.com> |
Corrected x86 build flags for PIC Updated the NDK build flags to be in-sync with the compile and link flags used for the image and SDK builds. Ensured PIC flag enabled for all x64 target objects. Change-Id: I78563c04992d6d97414f77fca04275fbc2b13d29 Signed-off-by: Mark D Horn <mark.d.horn@intel.com>
|
721e3f4f6b6d6ee2f03c37c687a6ab987d7e03f7 |
|
07-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
build-gcc.sh: Support building x86-4.4.3 with GNU libstdc++ This patch allows build-gcc.sh to properly generate an x86-4.4.3 toolchain with a working GNU libstdc++. This is done by providing a few local toolchain patches. Change-Id: I4ba04ad595b8e6f4f874855c694b16f999806ca5
|
88f474c8665e80d758553b03bdce91b508a57a26 |
|
07-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
Update toolchain sources git date. This patch modifies the git revision date when downloading the toolchain sources (through download-toolchain-sources.sh). Unfortunately, the old date didn't include a patch crucial for canadian-cross build support (i.e. building Windows binaries on Linux). Change-Id: I0d2aceaacf14ccbe9176dec9197e7b32930d4652
|
75416eef498a223f22f944c86a8a044755f7f791 |
|
10-Mar-2011 |
David 'Digit' Turner <digit@android.com> |
Update NDK toolchain sources to 2011-02-22 Changes the reference git date for the toolchain source download script, and removes two local patches that are no longer needed since they are now in android.git.kernel.org/toolchain/... Change-Id: I75a660112db51edd4d511d7daa2faac0878a4b9a
|
6e579472330a0d03a5fa9957139cfe9a3ffc135a |
|
31-Jan-2011 |
Bruce Beare <bruce.j.beare@intel.com> |
prebuilt-common: Allow versioning of GCC to be 4.4.x Change-Id: I541348eab42ded028307910229f84e9f7b083548 Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
|
f178bf583ba3e2cbce2effa50f8d7268a5b1a35d |
|
31-Jan-2011 |
Bruce Beare <bruce.j.beare@intel.com> |
prebuilt-common: Update the PLATFORM and API target for x86 Change-Id: Ie4f7b35bd0342f76583d8c396633f2e5d33780a9 Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
|
e26ba793cd1014a23514223ef6f6d0a06acdbe2e |
|
25-Jan-2011 |
David 'Digit' Turner <digit@android.com> |
build-gcc.sh: Add --try-64 option It is used to build a 64-bit toolchain on Linux. Change-Id: I96d7d2d98aa8613f9fbb1c2b16fa5acda1769e34
|
e9db711d8b5dd1c816c782afd0b30fb245250418 |
|
05-Jan-2011 |
David 'Digit' Turner <digit@google.com> |
Generate 8.04-compatible Linux toolchain binaries whenever possible. This patch forces our toolchain build script to look for our i686-linux-glibc2.7-4.4.3 prebuilt toolchain, and use it, if found, in order to generate Linux binaries that run on Ubuntu 8.04 and higher. + document the 'asm' to '__asm__' change in development/ndk Change-Id: I1f119439784fd8b5708e80f75f7c53b09ad8e1fa
|
ee9a8ad3302f67a22045700cd34a3b44d5aeb5ea |
|
14-Dec-2010 |
David 'Digit' Turner <digit@google.com> |
Fix mingw build. Change-Id: I38d3df244ca80033ba99eaf15b46af3600c4b9cf
|
b1b7c642b46447e0df78a08d51eb26a8808d7e3e |
|
14-Dec-2010 |
David 'Digit' Turner <digit@google.com> |
Fix compiler bug (invalud thumb instructions for signed chars) This change modifies the reference git date used when downloading the toolchain sources in order to get the following fix which was submitted on 2010-12-13: https://review.source.android.com/#change,19474 + Add a unit-test to check for the bad code generation + Slight reformating of docs/CHANGES.html Change-Id: Iea9e6dc717e7a256743c276f00be6767151c2776
|
6f01017c0c85d0d19874b87ea4e973f051757c61 |
|
10-Dec-2010 |
David 'Digit' Turner <digit@google.com> |
Fix toolchain rebuild script for 32-bit toolchains. This allows build-gcc.sh or rebuild-all-prebuilts.sh to work properly when the host toolchain is 32-bits. Change-Id: Ic11e52d197c6aea3772ff3485e980df346cfb2d5
|
818c32e1b7974301bd8a7390c9787c5ed749820c |
|
08-Dec-2010 |
David 'Digit' Turner <digit@google.com> |
prebuilt-common.sh: Better 64-bit compiler detection. This improves the detection of compilers that generate 64-bit machine code by default, in order to enfore 32-bit generation, as required by the NDK toolchain binaries. This should allow the toolchain to build properly on Snow Leopard. Change-Id: I79ba8e844cd6ed3794dc7eb2f656e9be47241378
|
2ca50e007226d9d571c94aec476ef5fdf8c4d3fd |
|
02-Dec-2010 |
David 'Digit' Turner <digit@google.com> |
Move stlport under sources/cxx-stl/ Move the STLport directory from sources/android/stlport/ to sources/cxx-stl/stlport/ since we don't document it as an import module anymore (use APP_STL in your Application.mk to use it instead). + Update the documentation under docs/CPLUSPLUS-SUPPORT.html and sources/cxx-stl/stlport/README + Remove obsolete docs/STL-SUPPORT.html (replaced by CPLUSPLUS-SUPPORT.html) Change-Id: Ie49e2fbeaceb02b0b765336d4a641e8149446711
|
1df30003913d8e1dbc2de769a131567272d9d5ec |
|
30-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Disable gold linker build. The ARM gold linker has too many issues at the moment: - Does not build on Mingw cross-builds - Crashes with SIGBUS on darwin-x86 - On linux-x86, generates weird binaries that 'strip' complains about Change-Id: I328ed19d137b75a268e247a014ba0ac27df409f3
|
728259794fa6d8f81d211124dfc8935f6314d56d |
|
30-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Package and use libsupc++ prebuilt tarballs. Since the mingw build cannot generate valid libsupc++ binaries we need to package them during the Linux build and reuse the new tarballs when packaging new releases. Change-Id: I6a84d2ba7737cdc3e59cce2ff65f4b477abae19a
|
da25f0b61422ac8d908778bf2bca5406919afe6a |
|
30-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Generate GNU libstdc++ static library binaries and tarballs. These are placed under sources/cxx-stl/gnu-libstdc++ Another patch will add APP_STL support for them. Change-Id: I63bb6d2bd25eefb474d21b18979e9b72024ee613
|
8b1664f43e66813a489d32ee072b58bd62c6acf9 |
|
26-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Fix handling of mingw toolchain builds. Rather than forcing all mingw builds to use -j1, start in parallel and only retry with -j1 if an error is detected. This seems to be enough to build the toolchain, and doesn't penalize machines where the build does succeed in parallel. + Disable gold linker for mingw builds: it doesn't compile at all for now! Change-Id: I53041f8b98d970b80e42f5919014c370d62ad7c5
|
e1ffa3fd89266e13c887a8d25f6f7eb4abfa0ec2 |
|
25-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Proper thread support for gdbserver. WARNING: DEEP MAGIC AHEAD! This patch allows the gdbserver binary that we build for the NDK to properly support threads on Android 2.3 and higher. For previous platforms, the binary will still be limited to to only set breakpoints on the main thread (just like with previous NDK releases). The root cause of the problem is a platform bug that was only fixed in Android 2.3, so there is little we can do in the NDK to fix it (apart from hoping the fix is back-ported properly). Now the hairy details: - The patch provides sources for libthread_db.a which will get recompiled explicitely by build-gdbserver.sh. Note that libthread_db has no real stable ABI/API so we provide GDB version-specific implementations here (see sources/android/libthread_db/gdb-<version>) - Both libthread_db.c versions have been modified to probe the system at runtime and detect if the platform bug is in effect. If it is, the library acts as if there are no threads in the process. The reason for this behaviour (i.e. instead of patching the gdbserver sources) is explained in comments inside libthread_db.c. + Local patches to make signal handling and libthread_db support work properly with gdbserver 6.6. Change-Id: Idf3d71422d337f4384f51ca45cafe7f71fd8559d
|
b08f5a995557b9b7dfb24e604d28d2dcea3a786d |
|
26-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
download-toolchain-sources.sh: Add --git-date The option allows you to specify a date for the toolchain sources that are checked-out from android.git.kernel.org. The default date is set in prebuilt-common.sh and allows us to ensure that the patches we have under build/tools/toolchain-patches do apply correctly. The plan is to modify the default date if needed when updating the toolchain patches. Change-Id: I27b94390c19e385d2232ab97f0be193e8a5a4c0d
|
72497cec671acb7f6d908e2e1485c548225f5feb |
|
24-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Add C++ exceptions and RTTI support. This enables C++ exceptions and RTTI support to the NDK toolchain through a local patch. C++ sources are still built with -fno-exceptions and -fno-rtti by default for compatibility purpose, so use -fexceptions and/or -frtti in your LOCAL_CPPFLAGS to enable these features. You will also need to link against libsupc++.a directly with: LOCAL_LDLIBS := -lsupc++ + Add two device tests to check that the features work properly. Change-Id: I41956a04997336d8135aaef291a1579267e0ad2a
|
f3500e47358be859bc15dc5e0bd1b6621a048540 |
|
23-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Add script to generate <android/api-level.h> headers These headers are used to define the __ANDROID_API__ macro which corresponds to the API level of a given sysroot. It will be used in a later patch to adjust C++ system header definitions. Change-Id: I8e36ee34cb706c068526fc91660a5e59740eecfd
|
25fc114e97e8e31af9c8a47f80ca4fbd134bf912 |
|
19-Nov-2010 |
David 'Digit' Turner <digit@google.com> |
Add support for prebuilt STLport binaries. This patch allows the NDK to be redistributed with prebuilt STLport binaries, since rebuilding the library from sources is quite slow, and its implementation should not change. Note that the binaries are not added to the NDK git repository. Instead: - build/tools/build-stlport.sh is a new script that can be used to rebuild the binaries and package/copy them appropriately. It requires a valid NDK installation (i.e. with working toolchain binaries) - rebuild-all-prebuilt.sh and package-release.sh are also modified to rebuild STLport and unpack the prebuilt tarballs when necessary. - tests/build/prebuild-stlport is a fake project that is used by build/tools/build-stlport.sh to force the rebuild of the libraries with the NDK (the script later copies/packages the libs to the appropriate location). - sources/android/stlport/Android.mk is modified to auto-detect whether the binaries are installed under the libs/<abi>/ subdir. If not, the library will be rebuilt from sources. Rebuilding from sources can be forced by setting STLPORT_FORCE_REBUILD to 'true' in your environment. That can be useful for debugging purpose. + improve 'pretty-dir' function to recognize the NDK path as a prefix and replace it in the output by '<NDK>' + improve formatting of NDK build messages for prebuilt binaries. Now it looks like: Prebuilt : <libname> <= <source-directory>/ Change-Id: I5158b9d7f13e0f6252d89f82b6fd2960e4a2ab1f
|
a0f307d9a1b8e0d5e2a8b4ea0a4126ef7fb3a29b |
|
06-Oct-2010 |
David 'Digit' Turner <digit@google.com> |
Rework toolchain build scripts. * 'make-release.sh' can now be used to rebuild everything *from* scratch (ultra long). Use the new 'package-release.sh' if you want the old behaviour. * 'download-toolchain-sources.sh'will now apply patches by default before packaging the sources into a tarball. Use the --no-patch option to prevent this. * Add missing patches for proper Canadian-cross build and gdbserver thread support under build/tools/toolchain-patches * Rework the way 'rebuild-all-prebuilts.sh' works * Update docs/DEVELOPMENT.TXT to indicate how things work in the new world order. This change doesn't affect the NDK build system itself but simplifies release package generation greatly. Change-Id: I9a07fe1e64450b0d1329c4a9b47c22094cb29617
|
e11a9b58ffe6d0dd9c61b651e2ce39ef0601e186 |
|
24-Sep-2010 |
David 'Digit' Turner <digit@google.com> |
Reorder location of toolchains files. build/toolchains/<name>/* --> toolchains/<name>/* build/prebuilt/<system>/<name>/lib/gdbserver --> toolchains/<name>/prebuilt/gdbserver build/prebuilt/<system>/<name>/ --> toolchains/<name>/prebuilt/<system>/ The main idea is to group all toolchain-related files under the same directory. Change-Id: Idb41de49b5d81b6881ac4e0eea24506ff4a07f03
|
ea573da2c3f1a8379f4344d023035fdf795c768d |
|
24-Jul-2010 |
David 'Digit' Turner <digit@google.com> |
Update toolchain to arm-linux-androideabi-4.4.3 You can still use the old one with NDK_TOOLCHAIN=arm-eabi-4.4.0 defined in your environment. Removed support for arm-eabi-4.2.1 + Add --mingw option to build/tools/build-gcc.sh Change-Id: I03f6b7cb67b1110e5794da9c4e9b6b8d1e029bb9
|
6b5bc468b9be34c7dbd4531274bb1a2d55542731 |
|
30-Aug-2010 |
David 'Digit' Turner <digit@google.com> |
Fix build/tools/rebuild-all-prebuilt.sh to work with $NDK/platforms/... This requires fixing the fix_sysroot() function in prebuilt-common.sh Also remove CleanSpec.mk from final release package. Change-Id: Ic05052e0246121679c508064d80dca15bd2442c7
|
a775f5537568f4768cd61931bb1b5314694adc96 |
|
10-Jun-2010 |
David 'Digit' Turner <digit@google.com> |
Allow platforms and samples to be located under development/ndk/{platforms,samples} Change-Id: Idb631a91de71c60dc6edc7d1989925fff9adc1aa
|
24f3d9e99d26d478caf1f1c287bd95687e6cba64 |
|
01-Jun-2010 |
David 'Digit' Turner <digit@google.com> |
ndk/build/tools: fix improper mktemp usage Change-Id: I592b025ebdf2181a80f5c7014fb40d3cdcd8e2ca
|
52a3c27f1384be5ade6404ca047d2428274c13b3 |
|
03-May-2010 |
David 'Digit' Turner <digit@google.com> |
Fix --package option processing in build/tools/download-toolchain-sources.sh Also fix common option processing on OS X. Its 'expr' command works slightly differently from Linux. Change-Id: I7d79b8cea1b14eb8f0efe67f5fb08db342bbbf84
|
f051ab722edb8c443e73dea83724e50f6c858970 |
|
16-Apr-2010 |
David 'Digit' Turner <digit@google.com> |
Rework toolchain binaries build scripts. Remove build-toolchain.sh and now provide rebuild-all-prebuilts.sh Change-Id: I558c95d1667d1283be9b3a075ad0565e05da0dc5
|