History log of /ndk/build/core/build-local.mk
Revision Date Author Comments
ff7cd04c9fb4fc916998f7b2735ef75b839cbef5 14-Feb-2012 David 'Digit' Turner <digit@google.com> Custom output directory support with NDK_OUT

This patch allows the use of the NDK_OUT environment variable
to specify a custom output directory for all intermediate
generated files (i.e. instead of $PROJECT_PATH/obj).

ndk-gdb will pick up the right location if the variable is
defined too. Note that final binaries are still placed under
$PROJECT_PATH/libs by default since the packaging scripts
expect them to be here.

This fixes http://code.google.com/p/android/issues/detail?id=25470

Change-Id: I50618df619c13f5208200f8d0902b8e4fe201de8
62e94189bb3a26ea1f31e8e0cf921d9cb9b5c91e 05-Jan-2012 David 'Digit' Turner <digit@google.com> cygwin: better auto dependency detection.

This patch fixes the way we convert GCC-generated dependency
files from Windows to Cygwin path conventions.

The old script assumed that the cygwin drive prefix was always
"/cygdrive" and didn't support drive-less mounts at all. In these
cases, the converted dependency files didn't include valid paths,
making the dependency detection not work (i.e. updating a header
would not force the rebuild of the source files that include it).

We fix this by parsing the cygwin mount command and generating
a special temporary shell script that can properly make the
conversion of dependency files in all cases.

Change-Id: Ic557bad63873817cf2c19338eaffc10d8ea4e6e8
13273ef24b1bac62626d4bbfd4f09dd3ecf02de1 25-Nov-2011 David 'Digit' Turner <digit@google.com> ndk-build.cmd: Fix infinite loop / stack overflow

This patch fixes a problem which occured when calling the script
that was not the top-level project path (e.g. any sub-directory of it).

Due to the way GNU Make implements the $(dir ...) function on Windows,
the search in build-all.mk resulted in an infinite recursive loop
which ended with a stack overflow after some time.

Change-Id: I9c863bfd5c6aaeb87aa7acbf46301e6f9ee9082d
bf6d1d006d2aaab4a353b5e3c7d423a3d632f3c4 20-Oct-2011 David 'Digit' Turner <digit@google.com> Fix infinite loop when calling ndk-build from a project sub-directory

Fixes b/5486087

Change-Id: I9bb1ecb9853a9472a9999f73ecab30a620330eaf
1e631212bdc6f4d5f889cc5357ae631dccb01b8e 19-Oct-2011 David 'Digit' Turner <digit@google.com> Minor native win32 fixes

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
4507f6d3f5eb8ec568420b08255d897600915a75 14-Sep-2011 David 'Digit' Turner <digit@google.com> Use shorter source/object/binary paths when possible.

This patch modifies the way the NDK build script computes the
value of NDK_PROJECT_PATH when it is not already defined.

If we are in the project's top-level directory when ndk-build
is invoked, we can use the value '.' for NDK_PROJECT_PATH.

This reduces the length of all paths passed to build commands
(source files, object files, binaries), which can be useful
for modules with a ton of sources (especially on Cygwin where
the maximum command-line lenght is quite limited).

Change-Id: I35a60df243c156690dc3020983b6232cd9b92ec6
5b65625ab0a6a50f332b9970a8cca513d9775788 08-Oct-2010 David 'Digit' Turner <digit@google.com> Fix ndk-gdb and add --delay=<seconds> option.

Fix ndk-gdb to _not_ start the activity unless --start or --launch is used.

Add a new option --delay=<seconds> to change the wait delay between the
launch of an activity and its attachement with gdbserver. The default delay
is also changed from 1 to 2 seconds.

Document the system libraries update.

Change-Id: Ia7e8c47221e3741bdc2688e750dae366c5426e67
824b722a8b00de0cf6dcbd93015caf66cbf71c8a 02-Jun-2010 David 'Digit' Turner <digit@google.com> Place generated binaries under $PROJECT/obj/ndk/ instead of $PROJECT/bin/ndk/

Change-Id: Ia76b2aa2cab588b89b2bbaa09ef7c7046491f33f
fba9e492fc1bda504161a37225bd2ba05e1f4a2b 02-Jun-2010 David 'Digit' Turner <digit@google.com> Make the AndroidManifest.xml optional when using ndk-build.

Several people have reported they used the NDK to generate static libraries only
and that they don't have a manifest when doing so (the old "make APP=<name>" method
worked fine).

Change-Id: I4bf4ea0708e954e253b7ed65a8680887031d5347
a08d605794902f5c7ed79b3d894adb722e1b6cac 16-Apr-2010 David 'Digit' Turner <digit@google.com> Add ndk-gdb script to the NDK.

This is a helper script used to launch a native debugging session.
To use it, follow these steps:

1. Make your application debuggable
2. Build the machine code with 'ndk-build' (make APP=<name> is not supported)
3. Build the package with ant or the ADT Eclipse plugin
4. Install it on your device/emulator
5. Launch it
6. Run 'ndk-gdb' from your application project directory.

Change-Id: Ie3b0557e70cefa0080075a34ad0ca46bebef3c42
NOTE: To work properly, a modified gdbserver binary must be used
(one that binds to Unix sockets instead of TCP ones). Patch
upcoming.
6724aaa2876f40ad270823bc933edf7552f67436 15-Apr-2010 David 'Digit' Turner <digit@google.com> Simplify build system with the 'ndk-build' script.

There is no need to modify $NDK/apps anymore to build an application.

Now all you need to do is launch $NDK/ndk-build from the project path,
or any of its sub-directory, and the build scripts will handle everything
automatically.

You can also place an optional Application.mk under $PROJECT/jni, but
by default the NDK will build all modules listed in your Android.mk for
the 'armeabi' ABI.

+ Update the documentation

Change-Id: I235c4051d7f00f37d50e6b4bb0e796c0bdaa001d