Commit graph

63 commits

Author SHA1 Message Date
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
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
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
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
3e4677856f Remove irritating warnings about 'va_list' mangling when building C++ sources.
Change-Id: I6305e93515e57462e7c57af0cc41a659e4190696
2010-06-16 16:04:55 -07:00
Jeff Hamilton
ebc2869b8d Build host tools as 32bit on all Darwin machines.
Change-Id: I121b388056e68b787518c66a01c172bc4ffaef9b
2010-06-03 12:29:19 -05:00
Nick Kralevich
d868cad828 Add -Werror=format-security
Security hardening: don't allow code to compile which
uses format strings in an inappropriate way.  Make format
string compiler warnings into errors.

Change-Id: I1461dad589a2416420fd84ccf765983e859eea8a
2010-05-17 14:30:01 -07:00
Nick Kralevich
2915cc3e32 Enable NX protections
Add -Wa,--noexecstack and -Wl,-z,noexecstack as default
flags when compiling applications.  This enables NX
protections, which prevent code from executing on the
stack or heap.  NX protections can block a large number
of buffer overflow attacks, and is an important security
feature.

Change-Id: Iad4bab9f8664584ba6ce832a5318d07680d7a908
2010-05-05 11:09:52 -07:00
Nick Kralevich
387e4d0601 LOCAL_LDFLAGS should come after TARGET_GLOBAL_LDFLAGS
A package can define a LOCAL_LDFLAGS.  If a LOCAL_LDFLAGS
exists, it should come after the global LDFLAGS, to allow
the local flags to override the global flags.

Change-Id: I6e44c17949c1f11c808d0ed3f327d63fb51a1468
2010-04-26 14:12:19 -07:00
Colin Cross
f807c55f39 Add a new build target armv7-a-neon
Change-Id: Ib3b44e839b093974aff0d595950e6b691beee7a5
2010-03-10 16:07:14 -08:00
Colin Cross
5720bb91a4 Modify the armv7-a target arch to not use NEON
To build for a target with NEON, use armv7-a-neon

Change-Id: I70d509287b04c0faebe44faf6c8ebb28a7360ff9
2010-03-10 16:06:44 -08:00
Andy McFadden
99e087bc82 Added -lpthread to target LDFLAGS for sim-eng.
This adds "-lpthread" to TARGET_GLOBAL_LDFLAGS when TARGET_SIMULATOR
is true.  This is much easier than inserting it into individual
makefiles as needed.  Has no effect on other builds.

Should fix the sim-eng build breakage in libcameraservice.

Change-Id: I4dcd7d54b93d1be1622b8ce78a1662d28ca9f9f2
2010-03-08 12:42:46 -08:00
Andy McFadden
ef26218762 Tweak default x86 target arch variant.
Simply set the arch variant for sim-eng to be "x86".
2010-02-26 13:50:44 -08:00
Andy McFadden
16e95bb99d Build the target side of the simulator as 32-bit.
This detail got lost in my previous cleanup change 9b4a812.

Also add a comment explaining why the host side of the
simulator needs to be built in 64-bit (wxWidgets).

Change-Id: I2a867f7f80b43d53e73348b19f6ae834600295f9
2010-02-24 08:33:08 -08:00
Jean-Baptiste Queru
9b4a81237b Get rid of $(combo_target)
The only OS-ARCH combo that would have benefited from it
is linux-x86, but it explicitly used separate configurations
for the HOST_ and TARGET_ side of things.

This makes is clear which files are related to the HOST_
configuration and which ones are related to the TARGET_
configuration, and expands $(combo_target) to the only
possible/reasonable value that it could have had in every
file.

This also cleans up the simulator, by moving it in a single
place in TARGET_linux_x86 (since the only part that's special
is to use HOST_ settings even when building TARGET_ modules).

Change-Id: I2420eeb8cfe539f5807ec99cb3177ffb9f2476d5
2010-02-23 12:36:56 -08:00
Andy McFadden
e009f29590 Fix build.
The "set default variant to armv5te if none defined" in the ARM config
was applying to all architectures, but as it turns out only ARM builds
actually cared.  When I made a copy of the "set default" code to the x86
config, one or the other would win for builds that didn't specify a
variant.  Turns out x86 won, so sim and voles worked, but opal didn't.
2010-02-23 10:24:33 -08:00
Andy McFadden
8d7c2b5c6d Provide default variant for x86.
The TARGET_ARCH_VARIANT was not being set for x86.  This caused some
difficulties when x86-atom tried to include variant-specific versions
of files.
2010-02-22 12:44:04 -08:00
Dan Bornstein
16dc9c38d8 Fix the host rule for building executables on darwin-x86.
Change-Id: I573364cd0c95ce0157e21d3bb4f7e3b13c61dd70
2009-11-08 17:44:01 -08:00
Mike Reed
c4386e4112 am ebed06a2: am 65a731b7: Merge change I8dd26ee4 into eclair-mr2
Merge commit 'ebed06a259eb1c00112a4e3a9d6d721700bbaedb'

* commit 'ebed06a259eb1c00112a4e3a9d6d721700bbaedb':
  remove reference to SK_RELEASE, since that is automatically set based on NDEBUG (or its absence)
2009-11-06 11:35:02 -08:00
Mike Reed
ebed06a259 am 65a731b7: Merge change I8dd26ee4 into eclair-mr2
Merge commit '65a731b737bd6e8afa0b18176064dcc130dbb4ce' into eclair-mr2-plus-aosp

* commit '65a731b737bd6e8afa0b18176064dcc130dbb4ce':
  remove reference to SK_RELEASE, since that is automatically set based on NDEBUG (or its absence)
2009-11-06 11:24:37 -08:00
Mike Reed
8dd26ee452 remove reference to SK_RELEASE, since that is automatically set based on NDEBUG (or its absence)
i.e. if NDEBUG is defined, then SK_RELEASE will get defined in the skia config headers
2009-10-30 08:32:28 -04:00
Jean-Baptiste Queru
3ca0693894 am e93ece70: merge from open-source master
Merge commit 'e93ece70a8d9657d5d08c59db75582d0d057d3bb'

* commit 'e93ece70a8d9657d5d08c59db75582d0d057d3bb':
  Remove temporary vold logic
  added linux-sh.mk to support SuperH architecture
2009-10-14 16:16:46 -07:00
Jean-Baptiste Queru
e93ece70a8 merge from open-source master 2009-10-14 16:02:08 -07:00
Jean-Baptiste Queru
2a11836482 merge from open-source master 2009-10-14 08:18:24 -07:00
Dan Bornstein
fa477ba15e Allow WITH_JIT to be overridden in a custom buildspec.mk file.
Change-Id: I0fb7ffcfb9786f611e981d8f22f67a5ac8c9c405
2009-10-13 15:56:48 -07:00
Sriram Raman
ca02204ddb am 2bd9027d: Merge change I5bbd2294 into eclair-mr2
Merge commit '2bd9027d0a2055e56a8047c11dda7f6551b9f183'

* commit '2bd9027d0a2055e56a8047c11dda7f6551b9f183':
  For Ying Wang:
2009-10-12 12:42:05 -07:00
Sriram Raman
5bbd2294e9 For Ying Wang:
Fix "argument list too long" build error bug.
2009-10-07 16:27:38 -07:00
Jing Yu
2dcc806af5 Add FDO options to Android make system. 2009-09-21 16:31:50 -07:00
Android Code Review
9a6b73c0aa Merge change 10642
* changes:
  added linux-sh.mk to support SuperH architecture
2009-09-17 14:52:55 -07:00
Ben Cheng
db95cb4426 Enable Dalvik JIT by default for the master branch. 2009-09-09 13:03:44 -07:00
Jean-Baptiste Queru
7227ea7619 merge from donut 2009-07-29 14:56:48 -07:00
Jean-Baptiste Queru
7c07cf9a82 Merge korg/donut into korg/master
Conflicts:

	core/apicheck_msg_current.txt
	core/combo/linux-arm.mk
	core/prelink-linux-arm.map
	tools/droiddoc/src/ClassInfo.java
2009-07-25 16:58:22 -07:00
Erik Gilling
c12c518379 enable cortex branch predition errata workaround for armv7-a builds
Signed-off-by: Erik Gilling <konkers@android.com>
2009-07-17 15:58:42 -07:00
Mike Reed
582dcbd7d1 add HAVE_VFP flag 2009-07-16 15:22:57 -04:00
Mike Reed
8ce877a3ab set -fpu=neon so we can use arm_neon.h 2009-07-13 14:48:43 -04:00
Shin-ichiro KAWASAKI
ff328a9409 added linux-sh.mk to support SuperH architecture 2009-07-09 17:51:25 +09:00
Doug Zongker
b17199ee41 am 742fa575: fix problems with new image size calculations
Merge commit '742fa575d09272f1e06616fc208a1e08830c8f82'

* commit '742fa575d09272f1e06616fc208a1e08830c8f82':
  fix problems with new image size calculations
2009-07-08 13:52:20 -07:00
Doug Zongker
742fa575d0 fix problems with new image size calculations
The build servers have GNU coreutils 5.93, where stat does not output
a newline.  Ubuntu hardy has GNU coreutils 6.10, where it does.
Lacking a newline messes up the summing of the sizes.  Fix
get-file-size to remove the newline if present, and make the total
calculation in assert-max-file-size more robust.

Also, if the image was too big, it was not actually making the build
fail (because /bin/false was not the last thing called).  Fix that so
it does.
2009-07-08 12:09:04 -07:00
Patrick Scott
87c86573e0 Move the BoardConfig.mk search and inclusion to core/config.mk.
This allows TARGET_ARCH_VARIANT to be set by the vendor before we choose the
architecture in core/combo/select.mk.

Also add a primitive armv7-a.mk for turning on hardware floating point.
2009-06-23 15:28:07 -04:00
Jing Yu
b845c2fe20 Switch default toolchain to 4.4.0 in master. 2009-06-17 12:06:23 -07:00
David 'Digit' Turner
3585e95918 Fix armv5te-vfp build. Aargh 2009-05-29 22:54:40 +02:00
David 'Digit' Turner
d53c81d7c5 Rename TARGET_ARCH_VERSION to TARGET_ARCH_VARIANT +
Move arch-specific definitions into core/combo/arch/arm/<variant>.mk
2009-05-29 21:36:49 +02:00
Andy McFadden
8f51a2ad06 Added support for TARGET_ARCH_VERSION=armv5te-vfp.
This is currently a copy & paste of the armv5te parameters.  I don't
know if there's a better way to encode this, or to what extent we will
need to specialize it vs. armv5te in a future build (e.g. to enable fp
instruction use in code gen).

Currently the only effect is to select the VFP-enabled mterp sources in
Dalvik.
2009-05-28 12:47:23 -07:00
Ed Heyl
50ca1cf796 cherry-pick bd215ed974 2009-05-15 15:02:03 -07:00
Doug Kwan
bd215ed974 Rollback to gcc-4.2.1 2009-05-14 02:17:32 -07:00
Dave Bort
8acd848320 Merge commit '9528248' into master
Conflicts:
	core/combo/linux-arm.mk

Signed-off-by: Dave Bort <dbort@android.com>
2009-05-05 17:04:51 -07:00
Dave Bort
952824843b core: Don't debug native modules when TARGET_BUILD_TYPE==debug
Don't make the simulator default to debug mode.

Remove all global "debug" {C,CPP}FLAGS, which are no longer used.
2009-05-04 18:12:32 -07:00
Doug Kwan
6fa3704187 am 8c9bef6: switch compiler to gcc-4.3.1
Merge commit '8c9bef616666ee8c6d5cc9243f3d89c44d15d216'

* commit '8c9bef616666ee8c6d5cc9243f3d89c44d15d216':
  switch compiler to gcc-4.3.1
2009-04-30 18:11:11 -07:00