1. 02 Jul, 2012 1 commit
    • Andrew Hsieh's avatar
      Fix ndk-gdb to also pull /system/bin/link · 07a6a66c
      Andrew Hsieh authored
      ndk-gdb should also pull /system/bin/link, so gdb on host can set
      a breakpoint in __dl_rtld_db_dlactivity and be aware of linker
      activity (eg. rescan solib symbols when dlopen() is called)
      
      Change-Id: Ie98d026a92177a076650665d7c26ac88781621a2
      07a6a66c
  2. 29 Jun, 2012 1 commit
  3. 16 May, 2012 1 commit
  4. 14 Feb, 2012 1 commit
    • David 'Digit' Turner's avatar
      Custom output directory support with NDK_OUT · ff7cd04c
      David 'Digit' Turner authored
      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
      ff7cd04c
  5. 24 Nov, 2011 2 commits
    • David 'Digit' Turner's avatar
      ndk-gdb: Fix for when the 'adb' path contains spaces · db09243e
      David 'Digit' Turner authored
      This patch ensures the ndk-gdb works correctly if the "adb"
      program (either from the path, or from the --adb=<path> option)
      contains spaces.
      
      Change-Id: I6b4c2469d89236ee5adf8edf1eaf05a69a79564e
      db09243e
    • David 'Digit' Turner's avatar
      Fix the use of $@ in all shell scripts · ec2b8dda
      David 'Digit' Turner authored
      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
      ec2b8dda
  6. 27 Oct, 2011 1 commit
    • David 'Digit' Turner's avatar
      ndk-gdb: Fix debugging of private services · 9c10d882
      David 'Digit' Turner authored
      This patch fixes ndk-gdb so it can properly debug an application
      that has private services. These will appear in the 'ps' output
      as <package-name>:<service-name>, and the way the extract-pid.awk
      script worked, were matched against <package-name> incorrectly.
      
      + Make extrac-pid.awk usable when custom ROM use a Busybox 'ps'
        instead of the standard Android toolbox version
      
      + Add unit test for extract-pid.awk
      
      Change-Id: Ifb38d5bdfd5b648ff468cb3642db3bb64297707d
      9c10d882
  7. 24 Mar, 2011 1 commit
    • David 'Digit' Turner's avatar
      ndk-gdb: Fixes for Darwin and --project option · b2e3ee77
      David 'Digit' Turner authored
      This patch contains several fixes for ndk-gdb:
      
      - Allow it to run properly on Darwin, where 'mktemp' will return an
        error if used without parameters. Note that 'mktemp -t <pattern>'
        does not work the same on Linux and Darwin, so use an invocation
        that is supported by all host platforms (Cygwin included).
      
      - Ensure that ANDROID_NDK_ROOT is defined as an absolute path,
        to avoid problems when the script is invoked as in:
      
            cd $NDKROOT
            ./ndk-gdb --project=/path/to/project/
      
      - The _adb_var_shell redirection was buggy and created files named
        "&1" and "&2" in the current directory for no good reason.
      
      Fix for bug 4156117
      
      Change-Id: I8dbd29bd33db808289755055a6ff5c9ccd181bfc
      b2e3ee77
  8. 16 Mar, 2011 1 commit
  9. 18 Oct, 2010 1 commit
    • David 'Digit' Turner's avatar
      ndk-gdb: Fix windows invokation · caf06194
      David 'Digit' Turner authored
      This also simplifies the gdb client invokation by putting
      the "file" command inside the gdb.setup file, instead of
      using the command-line.
      
      Change-Id: Iaa31dd2afaada8552db0b72baca91ecd16d6ff95
      caf06194
  10. 07 Oct, 2010 1 commit
    • David 'Digit' Turner's avatar
      Fix ndk-gdb and add --delay=<seconds> option. · 5b65625a
      David 'Digit' Turner authored
      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
      5b65625a
  11. 14 Sep, 2010 1 commit
    • David 'Digit' Turner's avatar
      Add easy native debugging support through NDK_DEBUG=1 · fd204377
      David 'Digit' Turner authored
      "ndk-build NDK_DEBUG=1" will force the build of a debuggable application.
      This really copies gdbserver to the proper location, as if android:debuggable
      was set to "true" in the app's manifest.
      
      The value of NDK_DEBUG can be 0, 1, true or false, and will override the content
      of the manifest. The main benefit from this change is that you don't have to
      edit your manifest file just to rebuilt
      
      Change-Id: I3fafb620189ac53a72b492c963832dd0c7f8b7d7
      fd204377
  12. 07 Jun, 2010 1 commit
  13. 04 Jun, 2010 1 commit
  14. 01 Jun, 2010 1 commit
  15. 06 May, 2010 1 commit
  16. 29 Apr, 2010 1 commit
    • David 'Digit' Turner's avatar
      Add --start, --launch=<name> and --launch-list options to ndk-gdb. · 0b2676ba
      David 'Digit' Turner authored
      Move all awk scripts to build/awk/ and rework them a bit
      
      Add build/awk/xmlparser.awk to parse XML files into something that
      is easier to process with awk. Its output is used by several
      scripts now (extract-debuggable.awk, extract-package-name.awk and
      the new extract-launchable.awk).
      
      Also update documentation.
      
      Change-Id: I50507abbb2b438aeea25a4e0521e6bf69ad86603
      0b2676ba
  17. 26 Apr, 2010 1 commit
    • David 'Digit' Turner's avatar
      Add ndk-gdb script to the NDK. · a08d6057
      David 'Digit' Turner authored
      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.
      a08d6057