Commit graph

109 commits

Author SHA1 Message Date
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
Ying Wang
f0f60cdd8f resolved conflicts for merge of 1a08100f to gingerbread
Change-Id: I9e4183a1d5c0efb13de8655b9eb7c74d50b34cd7
2010-07-13 17:21:33 -07:00
Ying Wang
1a08100fa9 Support to build native libraries with prebuilt NDK
Bug: http://b/issue?id=2811253
Change-Id: Iabd4ab8b3d7236dffe89f1939e1142e882944026
2010-07-13 16:29:18 -07:00
The Android Open Source Project
c1b24549e3 am 87f50000: merge from open-source master
Merge commit '87f500004acc7b68745bd939a473dd92e77b5c9c'

* commit '87f500004acc7b68745bd939a473dd92e77b5c9c':
  Define __ANDROID__ for x86 to be on par with ARM build requirements
2010-07-12 14:58:50 -07:00
The Android Open Source Project
87f500004a merge from open-source master
Change-Id: I0221f3903a2fc6a0fb25ae62913fdc2e9d3c3f4f
2010-07-12 14:55:52 -07:00
Bruce Beare
fe2ef85d5d Define __ANDROID__ for x86 to be on par with ARM build requirements
Change-Id: I79c8f29af1f20b694f22a39f848216022809a5c6
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
2010-07-12 13:47:41 -07:00
The Android Open Source Project
4be5c394c1 am 0fd96df4: merge from open-source master
Merge commit '0fd96df49ccecbf3628c95dabf3b94dfc27323e5'

* commit '0fd96df49ccecbf3628c95dabf3b94dfc27323e5':
  Refactor Stripper. Allow a stripper other than SOSLIM to be specified
2010-07-09 16:05:04 -07:00
The Android Open Source Project
0fd96df49c merge from open-source master
Change-Id: I40aa6f0f885ea30dd5f9918c323fa240a4830c38
2010-07-09 16:02:03 -07:00
Bruce Beare
45ac434151 Refactor Stripper. Allow a stripper other than SOSLIM to be specified
Change-Id: I61137f5bb123dc5f610af9928ed3debdf85ba74d
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
2010-07-09 12:16:46 -07:00
Doug Kwan
baff089c37 Enable ICF link-time optimization.
Change-Id: I49af3366262bebe12dacfebe99ec742b79bf9d84
2010-06-29 11:14:42 -07:00
David 'Digit' Turner
cf937bb4d8 am 5cd0870e: am a7f9179e: Merge "Enable shared libraries to use crtbegin_so.S and crtend_so.S" into gingerbread
Merge commit '5cd0870e6215ab8c2be01a8e7b36600db323b77a'

* commit '5cd0870e6215ab8c2be01a8e7b36600db323b77a':
  Enable shared libraries to use crtbegin_so.S and crtend_so.S
2010-06-25 14:21:37 -07:00
David 'Digit' Turner
438f5f75ec Enable shared libraries to use crtbegin_so.S and crtend_so.S
This is necessary to ensure that dlclose() will properly call C++
destructors for the static objects within the shared library.

Change-Id: Ieb056042f9cda7ab120eb770b21f365cd6d64a66
2010-06-18 16:08:36 -07:00
Jing Yu
96c286daf1 am eed926c8: am ada132a8: Switch toolchain from gcc-4.4.0 to gcc-4.4.3
Merge commit 'eed926c889382073c74de43a0d15e37462623cf3'

* commit 'eed926c889382073c74de43a0d15e37462623cf3':
  Switch toolchain from gcc-4.4.0 to gcc-4.4.3
2010-06-16 20:47:01 -07:00
Jing Yu
ada132a80b Switch toolchain from gcc-4.4.0 to gcc-4.4.3
gcc-4.4.3 toolchain is based on fsf GCC-4.4.3 with numerous patches.
It reduces 3.65% code size than the prebuilt gcc-4.4.0 toolchain,
and improves 3.4% performance on Android benchmarks.

The toolchain uses gold as default linker. With gold, the toolchain
further reduces 1MB system image.

Change-Id: I55eb4df185f2932e71498fcc28428e4d1b175393
2010-06-16 20:17:19 -07:00
David 'Digit' Turner
fc7b7827fc am b6bee6f1: am 3e467785: Remove irritating warnings about \'va_list\' mangling when building C++ sources.
Merge commit 'b6bee6f17187a9eb3645e9519cca4a126d9aca21'

* commit 'b6bee6f17187a9eb3645e9519cca4a126d9aca21':
  Remove irritating warnings about 'va_list' mangling when building C++ sources.
2010-06-16 19:41:44 -07:00
David 'Digit' Turner
3e4677856f Remove irritating warnings about 'va_list' mangling when building C++ sources.
Change-Id: I6305e93515e57462e7c57af0cc41a659e4190696
2010-06-16 16:04:55 -07:00