1. 20 Jun, 2012 1 commit
  2. 13 Jun, 2012 4 commits
  3. 12 Jun, 2012 4 commits
    • David 'Digit' Turner's avatar
      build-host-gdb.sh: New script · cd03b817
      David 'Digit' Turner authored
      This patch introduces a new script to rebuild the client gdb
      host program(s) from sources. Usage is similar to build-host-gcc.sh,
      for example, here's how to rebuild three versions of gdb for
      6 host/target combinations:
      
        build/tools/build-host-gdb.sh --toolchain-src-dir=<path> \
                --gdb-version=6.6,7.1.x,7.3.x \
                --systems=linux-x86,linux-x86_64 \
      
      See --help for all options.
      
      Notice that the binaries are placed under:
      
        prebuilt/$HOST_SYSTEM/gdb-$TARGET_ARCH-$GDB_VERSION/bin/
      
      This is to disconnect the GDB client version from the GCC one.
      
      + Introduce the new common-build-host-funcs.sh file which
        contains common functions related to building host binaries
        for the NDK. This is a small refactoring of most of the stuff
        that is already in build-host-gcc.sh. All of them using the
        bh_ or BH_ prefix to avoid namespace collision.
      
        Note that build-host-gcc.sh is not refactored by this patch,
        this will be performed later.
      
      Change-Id: I6c4432bd5b7d327e6a30784f98137b59cbca10be
      cd03b817
    • Andrew Hsieh's avatar
      Merge "Move MIPS .dynamic to the data segement, so that it is writable.... · 7db290bf
      Andrew Hsieh authored
      Merge "Move MIPS .dynamic to the data segement, so that it is writable. Replace hard-coded 4096 with symbols for correct segment sizes for MIPS."
      7db290bf
    • Andrew Hsieh's avatar
      Update TOOLCHAIN_GIT_DATE & misc fixes · 66fedaab
      Andrew Hsieh authored
      Fixes:
      1. Update TOOLCHAIN_GIT_DATE to 2012-06-10
      2. More fix in ld --gc-sections (see comment in
         https://android-review.googlesource.com/#/c/36585/)
      3. Correct typos, etc
      
      Change-Id: I6534d4345d3c036cdd6fe51863367cc3e5e5634d
      66fedaab
    • Andrew Hsieh's avatar
      Merge "GDB patch to fix mingw64 build." · 055bc7ac
      Andrew Hsieh authored
      055bc7ac
  4. 11 Jun, 2012 2 commits
  5. 08 Jun, 2012 2 commits
    • Andrew Hsieh's avatar
    • David 'Digit' Turner's avatar
      Use -funwind-tables when building target libraries · 5e5e5486
      David 'Digit' Turner authored
      This patch adds the -funwind-tables flag when building our prebuilt
      libraries in order to ensure that the generated code can easily be
      unwound at runtime.
      
      This prevents stack-traces from being incorrectly shortened, for
      example when using the malloc leak checked, the STLport/GABI++
      operator new implementation could not be unwound, and the stack
      trace could not show where the code was really allocated/freed
      in the original source code.
      
      Change-Id: I424754c4d891416b34ba1f67099fbed62252286e
      5e5e5486
  6. 07 Jun, 2012 2 commits
    • Andrew Hsieh's avatar
    • David 'Digit' Turner's avatar
      build-host-gcc.sh: New script to rebuild toolchain. · 6807ab93
      David 'Digit' Turner authored
      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
      6807ab93
  7. 06 Jun, 2012 11 commits
  8. 05 Jun, 2012 2 commits
  9. 31 May, 2012 4 commits
    • Andrew Hsieh's avatar
      Merge "Fixed two issues in make-release.sh" · 9fab8716
      Andrew Hsieh authored
      9fab8716
    • Andrew Hsieh's avatar
    • David 'Digit' Turner's avatar
      Add a test to build and run a trivial static executable. · 39e134c4
      David 'Digit' Turner authored
      This is to check that static executable generation works properly,
      e.g. that our crtbegin_static.o sources aren't broken for some
      reason.
      
      Note that this test fails with the x86-4.4.3 toolchain generated
      with build-host-gcc.sh at the moment (not with the one built with
      build-gcc.sh). The symptom is:
      
         $NDK/toolchains/x86-4.4.3/prebuilt/linux-x86/bin/i686-linux-android-strip --strip-unneeded  ./libs/x86/static_main
         BFD: BFD (GNU Binutils) 2.19 internal error, aborting at /tmp/ndk-digit/src/binutils/binutils-2.19/bfd/elf.c line 4655 in assign_file_positions_for_non_load_sections
      
         BFD: Please report this bug.
         make: *** [libs/x86/static_main] Error 1
         make: *** Deleting file `libs/x86/static_main'
      
      So it looks like a binutils-2.19 crash when 'strip' is called.
      
      Change-Id: I84ed6ba9fceee84d30ad28885bbf6145397e0144
      39e134c4
    • Andrew Hsieh's avatar
      Fixed two issues in make-release.sh · 0a4a75b7
      Andrew Hsieh authored
      Fixed two issues
      1) Unset NDK_TMPDIR after setting RELEASE_DIR to be under
         $NDK_TMPDIR, otherwise scripts called later may reuse
         the same NDK_TMPDIR for their own things and completely
         remove it after done!
      2) A typo "timestamp_set build-mingw-prebuilts"
      
      Also, wrap "run" around scripts it calls
      
      Change-Id: Ia10cb4b2bd6ef291dcebc3a0b9c4a6fec6f98e8a
      0a4a75b7
  10. 30 May, 2012 3 commits
  11. 29 May, 2012 2 commits
  12. 28 May, 2012 1 commit
  13. 25 May, 2012 2 commits
    • Andrew Hsieh's avatar
      Merge "Rewrite standalone toolchain tests" · 558cb45e
      Andrew Hsieh authored
      558cb45e
    • David 'Digit' Turner's avatar
      Rewrite standalone toolchain tests · bf301a8e
      David 'Digit' Turner authored
      This patch rewrites the standalone toolchain tests completely
      (the previous version didn't work properly anyway).
      
      tests/standalone/run.sh can be used to check that a given
      NDK toolchain works properly. It doesn't have to be a
      standalone toolchain as long as you use the --sysroot=<path>
      option.
      
      Usage example:
      
        tests/standalone/run.sh --prefix=toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc
      
      Note that the tests do not assume that a C++ STL is available
      in the toolchain's installation directory. We will probably
      add a few other tests to check these later.
      
      Change-Id: Idac1cf8fda040773de771b29ca5b80587f0b900e
      bf301a8e