Commit Graph

1274 Commits

Author SHA1 Message Date
Iliyan Malchev
0cafe839e0 build: pass --strip-all, not --strip-debug to strip
Option --strip-all will remove the static symbol section in addition to debug
symbols.  We do not need the static symbol table in libraries installed on the
target.

Change-Id: I7a52d22f5b45aa727f31bfd9af796b289528caef
Signed-off-by: Iliyan Malchev <malchev@google.com>
2011-03-17 10:09:59 -07:00
Bruce Beare
2e8283d9bc x86: the -mbionic flag is needed for IA builds.
Change-Id: I00c75f37d7ea46b9f8ad3d7b2ff7094477ff0916
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
2011-03-15 07:47:49 -07:00
David 'Digit' Turner
8c675d2293 am 16e7050c: am e9b1d0ee: am f8f95fc8: Merge "Allow win_sdk build with USE_CCACHE=1"
* commit '16e7050cbaa292c0f36275cdb4c56f357cbfa79a':
  Allow win_sdk build with USE_CCACHE=1
2011-03-15 04:13:24 -07:00
David 'Digit' Turner
16e7050cba am e9b1d0ee: am f8f95fc8: Merge "Allow win_sdk build with USE_CCACHE=1"
* commit 'e9b1d0eee715895f156c8e2601d5b1996919da6d':
  Allow win_sdk build with USE_CCACHE=1
2011-03-15 04:09:34 -07:00
David 'Digit' Turner
55aad08663 Allow win_sdk build with USE_CCACHE=1
This patch allows the Window sdk build (lunch sdk-eng; make win_sdk)
to work properly when USE_CCACHE is defined in the environment.

There is no Windows ccache prebuilt, but since we're cross-compiling
from Linux, detect it and use the linux prebuilt binary instead.

Note: Depends on https://review.source.android.com//#change,21755
      for a complete solution to the problem.

Change-Id: I0b1b59efae86ee7114225258c9ecf9f257913347
2011-03-15 01:01:32 +01:00
Iliyan Malchev
b375e71d30 build: remove prelinker build build system
This patch removes support for prelinking from the build system.  By now, the
prelinker has outlived its usefulness for several reasons.  Firstly, the
speedup that it afforded in the early days of Android is now nullified by the
speed of hardware, as well as by the presence of Zygote.  Secondly, the space
savings that come with prelinking (measued at 17MB on a recent honeycomb
stingray build) are no longer important either.  Thirdly, prelinking reduces
the effectiveness of Address-Space-Layout Randomization.  Finally, since it is
not part of the gcc suite, the prelinker needs to be maintained separately.

The patch deletes apriori, soslim, lsd, isprelinked, and iself from the source
tree.  It also removes the prelink map.

LOCAL_PRELINK_MODULE becomes a no-op.  Individual Android.mk will get cleaned
separately.  Support for prelinking will have to be removed from the recovery
code and from the dynamic loader as well.

Change-Id: I5839c9c25f7772d5183eedfe20ab924f2a7cd411
2011-03-12 14:59:46 -08:00
David Turner
1c908fa188 am b9c627c6: am 0683a773: Merge "x86: Use GCC 4.4.3"
* commit 'b9c627c6a0c6f0af57d0912175bfc739b0eb6249':
  x86: Use GCC 4.4.3
2011-03-07 13:45:59 -08:00
Bruce Beare
a17b91faa4 x86: Use GCC 4.4.3
Change-Id: I083c1afcbb98cfeb48d7bcb7681e5c34db52e767
Author:    H.J. Lu <hjl.tools@gmail.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
2011-03-01 13:04:24 -08:00
Jeff Brown
bd528a82a2 Build system tweaks for Valgrind.
Added LOCAL_NO_CRT to enable building executables that do not link
to the C runtime library.

Removed support for LOCAL_MODULE_SUBDIR since it was broken
and unused.  (Was going to use it but ended up using LOCAL_MODULE_PATH
instead.)

Change-Id: Ifed4ffe17003d90370c711ea6606e2b75e841dee
2011-02-16 15:06:30 -08:00
Ben Cheng
5116e50705 Remove usused workaround.
Change-Id: I1d42d0f0dee361b98403bc87296dcbc37484ebcb
2011-02-16 12:48:38 -08:00
Jeff Brown
703e7c6d50 Build system tweaks for Valgrind.
Added LOCAL_NO_CRT to enable building executables that do not link
to the C runtime library.

Removed support for LOCAL_MODULE_SUBDIR since it was broken
and unused.  (Was going to use it but ended up using LOCAL_MODULE_PATH
instead.)

Change-Id: I3b6f5ab7e5ae6aaa7119899adccece2b4ab1cbb3
2011-02-08 16:38:56 -08:00
Ying Wang
3a7e4ccad9 Unify use of $(hide).
Change-Id: Ib7e17bbb4682caecce5812e63de872b676403d64
2011-01-28 14:14:47 -08:00
Ying Wang
f5653d1cee Regularize use of PRIVATE_CXX.
Change-Id: Ifc628c67b5fa142cec59187f89f2d39df81160b9
2011-01-27 20:08:34 -08:00
Ying Wang
80e6cce93e Correct misuse of target/host vars.
Change-Id: Ide41aeddc44ca05d85a36035c2d55ea453cfd216
2011-01-24 23:25:36 -08:00
David 'Digit' Turner
60a1e88052 Add support for custom Linux host toolchains when building the SDK.
This is needed in order to build Linux SDK binaries that can run
properly on Ubuntu 8.04 (Hardy). By default, the host toolchain
on 10.04 (Lucid) generates machine code that won't run on Hardy
due to GLibc ABI mistmatches.

Note that nothing happens if the new toolchain is not in the
prebuilt tree.

Change-Id: I914f5a303f16b6871759ce5a7178585ed3060870
2011-01-16 19:14:04 +01:00
Jing Yu
a83b769566 Remove global inline options.
The purpose of removing global inline options is to give
compiler the opportunity to do inline optimizations and inline
tunings for Android native codes.

By removing these global inline options now, the size of
almost all native libraries are reduced. And there is no
noticable performance degradation on webkit, gcstone and
skia benchmarks.

Change-Id: I31e71f51e4f29fa6286fddb89e9eab227581c7b3
2010-12-21 16:33:48 -08:00
David 'Digit' Turner
02e172e892 am efc5d814: am 15f4980d: Merge "Add support for custom Linux host toolchains when building the SDK." into gingerbread
* commit 'efc5d81428a8c7d9cf7cb7b3a5f1a8344b02a700':
  Add support for custom Linux host toolchains when building the SDK.
2010-12-14 02:45:58 -08:00
David 'Digit' Turner
efc5d81428 am 15f4980d: Merge "Add support for custom Linux host toolchains when building the SDK." into gingerbread
* commit '15f4980d510824113a4d2b71d70de9c67715f3dc':
  Add support for custom Linux host toolchains when building the SDK.
2010-12-14 02:42:10 -08:00
David 'Digit' Turner
0960ca7488 Add support for custom Linux host toolchains when building the SDK.
This is needed in order to build Linux SDK binaries that can run
properly on Ubuntu 8.04 (Hardy). By default, the host toolchain
on 10.04 (Lucid) generates machine code that won't run on Hardy
due to GLibc ABI mistmatches.

Note that nothing happens if the new toolchain is not in the
prebuilt tree.

Change-Id: I45c1f68e37e15a0032f885df1c5c0f297b3d8642
2010-12-13 11:52:03 +01:00
Jean-Baptiste Queru
cdfcc05897 am 6c7b6fb3: resolved conflicts for merge of b2028868 to gingerbread-plus-aosp
* commit '6c7b6fb3d2fda5cc5b881e01eb8bb0936ef0eeaf':
  IA: enable SSE fpmath, Separate ARCH_VARIANT and ARCH makefile settings
2010-11-19 16:56:31 -08:00
Jean-Baptiste Queru
6c7b6fb3d2 resolved conflicts for merge of b2028868 to gingerbread-plus-aosp
Change-Id: Ibe616c0bdf8e36aaee42279292a2dbe03c5643c2
2010-11-19 12:35:33 -08:00
Bruce Beare
ccec9c45d9 IA: enable SSE fpmath, Separate ARCH_VARIANT and ARCH makefile settings
Change-Id: I60b8121c92b39a60b513bc2496a1e0a21015c586
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
2010-11-19 11:15:40 -08:00
Jean-Baptiste Queru
75220495d0 am 766a2a21: am 48ec6d6f: Merge "Enables x86-atom as a valid TARGET_ARCH_VARIANT for the simulator build."
* commit '766a2a2125d41e8bfb88112601a34af08f47f7f1':
  Enables x86-atom as a valid TARGET_ARCH_VARIANT for the simulator build.
2010-11-17 15:52:09 -08:00
Jean-Baptiste Queru
766a2a2125 am 48ec6d6f: Merge "Enables x86-atom as a valid TARGET_ARCH_VARIANT for the simulator build."
* commit '48ec6d6f814a70068c4632b468cd7872f34295ad':
  Enables x86-atom as a valid TARGET_ARCH_VARIANT for the simulator build.
2010-11-17 15:27:13 -08:00
Johnnie Birch
a4716b2618 Enables x86-atom as a valid TARGET_ARCH_VARIANT for the simulator build.
Change-Id: Idbceb6c7d4117fbecd35e4261330e6405666189e
2010-11-17 15:15:08 -08:00
Ben Cheng
efd2489b39 Insert directives to work around a CPU bug.
Bug: 3117632
Change-Id: I2fb58e7093984d18d2d2d21edf687206f4ddab31
2010-10-21 15:15:09 -07:00
Ying Wang
0ce72c458c am 3b008f36: am 83f69eb5: Prepend ccache to CC/CXX if necessary.
Merge commit '3b008f36956c35f58d510ad3da5090cf21a08349'

* commit '3b008f36956c35f58d510ad3da5090cf21a08349':
  Prepend ccache to CC/CXX if necessary.
2010-10-10 09:10:22 -07:00
Ying Wang
3b008f3695 am 83f69eb5: Prepend ccache to CC/CXX if necessary.
Merge commit '83f69eb5f905d47581bed141b7f5103362390339' into gingerbread-plus-aosp

* commit '83f69eb5f905d47581bed141b7f5103362390339':
  Prepend ccache to CC/CXX if necessary.
2010-10-07 13:57:29 -07:00
Ying Wang
83f69eb5f9 Prepend ccache to CC/CXX if necessary.
In case TARGET_CC is assigned with HOST_CC (eg, simulator build),
ccache will be prepended twice before this CL.
Bug: 3069576

Change-Id: I2ee44faea3a2795cf389ad6f80e4066a02b43be9
2010-10-07 10:45:02 -07:00
Jean-Baptiste Queru
f09f80d182 am 93847f53: am cc84526b: Merge "Add atom optimization flags"
Merge commit '93847f5355204635648d791098dd0210e22d53ab'

* commit '93847f5355204635648d791098dd0210e22d53ab':
  Add atom optimization flags
2010-09-10 14:52:25 -07:00
Jean-Baptiste Queru
93847f5355 am cc84526b: Merge "Add atom optimization flags"
Merge commit 'cc84526bcef5ffd7ed9abf73dc3bfc9e29784b22' into gingerbread-plus-aosp

* commit 'cc84526bcef5ffd7ed9abf73dc3bfc9e29784b22':
  Add atom optimization flags
2010-09-10 13:03:13 -07:00
Jean-Baptiste Queru
cc84526bce Merge "Add atom optimization flags" 2010-09-09 14:07:21 -07:00
Ying Wang
ac628ed792 am 2e1347c6: am fb644881: Disable new longjmp in glibc 2.11 and later.
Merge commit '2e1347c6a010c51c9ec80fd312465c1c23666ab2'

* commit '2e1347c6a010c51c9ec80fd312465c1c23666ab2':
  Disable new longjmp in glibc 2.11 and later.
2010-09-02 10:52:29 -07:00
Ying Wang
2e1347c6a0 am fb644881: Disable new longjmp in glibc 2.11 and later.
Merge commit 'fb644881b6083aa0d9d15e7aad8bfa5a429b1c37' into gingerbread-plus-aosp

* commit 'fb644881b6083aa0d9d15e7aad8bfa5a429b1c37':
  Disable new longjmp in glibc 2.11 and later.
2010-09-02 09:45:11 -07:00
Ying Wang
163fa35fe3 Disable new longjmp in glibc 2.11 and later.
Bug: 2967937
Change-Id: I7a5ef082502192f41c26a48632edfe775dea7648
2010-09-01 16:56:25 -07:00
Ying Wang
fb644881b6 Disable new longjmp in glibc 2.11 and later.
Bug: 2967937
Change-Id: I4e2a5f806ad45a01ca7f8c4d032cd29fce1d794d
2010-09-01 16:39:11 -07:00
Ying Wang
9a8732fb6c Link against Mac OSX 10.5 SDK if building on 10.6.
So that tools built on Snow Leopard (10.6) can be used on Leopard (10.5).

Change-Id: I99745ecbe2ad11feaae31d5be31c34c2e0ad7cc5
2010-08-30 11:52:50 -07:00
Ying Wang
30ac7bce54 am f3a142b8: am 7eaa4dc2: Merge "Link against Mac OSX 10.5 SDK if building on 10.6." into gingerbread
Merge commit 'f3a142b8d5b4db7299b706653f4fd2952f4e5d8c'

* commit 'f3a142b8d5b4db7299b706653f4fd2952f4e5d8c':
  Link against Mac OSX 10.5 SDK if building on 10.6.
2010-08-25 10:12:58 -07:00
Ying Wang
f3a142b8d5 am 7eaa4dc2: Merge "Link against Mac OSX 10.5 SDK if building on 10.6." into gingerbread
Merge commit '7eaa4dc2fbc3d7b3d8a0a2576a6fc14507e176a8' into gingerbread-plus-aosp

* commit '7eaa4dc2fbc3d7b3d8a0a2576a6fc14507e176a8':
  Link against Mac OSX 10.5 SDK if building on 10.6.
2010-08-25 10:10:13 -07:00
Ying Wang
d6683f08c9 Link against Mac OSX 10.5 SDK if building on 10.6.
So that tools built on Snow Leopard (10.6) can be used on Leopard (10.5).

Change-Id: I99745ecbe2ad11feaae31d5be31c34c2e0ad7cc5
2010-08-24 18:34:44 -07:00
Dima Zavin
6d98f5f4d6 core: fix paths to libm arch-specific include dirs
Change-Id: I17a1ed13af6d4955a636ad429917b683ac59a947
Signed-off-by: Dima Zavin <dima@android.com>
2010-08-05 17:46:53 -07:00
Jing Yu
9d396e37ac Make arm-linux-androideabi toolchain the default for Android build.
androideabi target is already in upstream GCC. The arm-linux-
androideabi toolchain can be built directly from upstream GCC.
Switching from old special tailored arm-eabi toolchain to the new
arm-linux-androideabi toolchain make us closer to the opensource
community and friendly to all toolchain developers.

kernel still uses arm-eabi toolchain. So we add arm-eabi toolchain
path to PATH.

The arm-linux-androideabi-4.4.x toolchain is built with the same
source as the latest arm-eabi-4.4.3 toolchain except for the
target change patches.

Change-Id: I1e5f2fe2faeee08f913f37e0ba93e84d2654a8ff
2010-07-29 19:09:12 -07:00
Chih-Wei Huang
2467fe24f0 Add atom optimization flags
To enable the optimization, set TARGET_ARCH_VARIANT := x86-atom.

Change-Id: I6b7798944bb8262bd83a76712419d8a77d3c34e9
2010-07-26 10:41:38 +08:00
Jing Yu
584f5b7a84 Group needed libraries together to solve the cyclic dependence
between libc, libc_nomalloc and libgcc. When building with upcoming
arm-linux-androideabi toolchain, Symbol raise is needed by libgcc.a
and defined by libc.a or libc_nomalloc.a.which.

This patch groups libgc.a, libc_nomalloc.a and libgcc.a together, which is
a minimal group to solve this problem.

Change-Id: I27ed78c495dc53c1db7b302da8704f5e478ad893
2010-07-21 14:57:59 -07:00
Ying Wang
95318832be am 4a1addef: am 90b1d3dc: am b6a1c180: Keep the crt start/end var name of sh consistent with other archs
Merge commit '4a1addef83d6458ba41b498648a36046a27a01b8'

* commit '4a1addef83d6458ba41b498648a36046a27a01b8':
  Keep the crt start/end var name of sh consistent with other archs
2010-07-13 17:51:15 -07:00
Ying Wang
4a1addef83 am 90b1d3dc: am b6a1c180: Keep the crt start/end var name of sh consistent with other archs
Merge commit '90b1d3dcfece8eef53277cbcf0326deda9f16f09' into gingerbread-plus-aosp

* commit '90b1d3dcfece8eef53277cbcf0326deda9f16f09':
  Keep the crt start/end var name of sh consistent with other archs
2010-07-13 17:48:40 -07:00
Ying Wang
90b1d3dcfe am b6a1c180: Keep the crt start/end var name of sh consistent with other archs
Merge commit 'b6a1c1802961f40fe4736e80402f849968cd2563' into gingerbread

* commit 'b6a1c1802961f40fe4736e80402f849968cd2563':
  Keep the crt start/end var name of sh consistent with other archs
2010-07-13 17:46:29 -07:00
Ying Wang
b6a1c18029 Keep the crt start/end var name of sh consistent with other archs
So that the PRIVATE_ vars get values correctly.

Change-Id: I1eea67f02c5bab5018b3b5fd93904e1ee8643bf7
2010-07-13 17:41:14 -07:00
Ying Wang
aabbc07cb8 am 90cf34c7: am f0f60cdd: resolved conflicts for merge of 1a08100f to gingerbread
Merge commit '90cf34c72e204eb1d23f43d1fccbf2076e8ff67b'

* commit '90cf34c72e204eb1d23f43d1fccbf2076e8ff67b':
  Support to build native libraries with prebuilt NDK
2010-07-13 17:26:00 -07:00
Ying Wang
90cf34c72e am f0f60cdd: resolved conflicts for merge of 1a08100f to gingerbread
Merge commit 'f0f60cdd8f4f74b2480774887606afdebec8d891' into gingerbread-plus-aosp

* commit 'f0f60cdd8f4f74b2480774887606afdebec8d891':
  Support to build native libraries with prebuilt NDK
2010-07-13 17:24:09 -07:00