Commit Graph

1168 Commits

Author SHA1 Message Date
Elliott Hughes
cf1c15c975 Set WINVER as well as _WIN32_WINNT.
Change-Id: I6ace26d6c25549cf42755423340af07e96e05779
2015-11-12 13:33:20 -08:00
Chih-hung Hsieh
98c27a83da Merge "Revert "Enable gold linker for aarch64."" 2015-11-12 01:04:06 +00:00
Chih-hung Hsieh
65c7b5c6d6 Revert "Enable gold linker for aarch64."
This reverts commit a7f68ee9ea.

Change-Id: I8c15df8ce81859f1b950dbac0a47d7d24c0f4cc2
BUG: 25642296
2015-11-11 23:07:01 +00:00
Than McIntosh
838ad09b17 Merge "Enable gold linker for aarch64." 2015-11-05 11:49:56 +00:00
Than McIntosh
a7f68ee9ea Enable gold linker for aarch64.
[Second attempt, this time with updated mac prebuilt]

Switches default linker from -fuse-ld-bfd to
-fuse-ld=gold, and enables -Wl,--icf=safe. This
changes reduces /system/lib64/*.so text size
by about 2% for N9.

Change-Id: I587075aae9d70cb6b16e55dc9cd1052580ac2626
2015-11-04 19:34:50 -05:00
Shinichiro Hamaji
0e7587a9ea Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries
When a shared object is rebuilt, all dependent libraries and
executables are rebuilt. Such rebuild is unnecessary when there
is no interface change. With this patch, .toc files will be
generated for all .so files. The rule which generates .toc files
has ninja's restat=1 and .toc files are not changed ninja won't
rebuild dependent targets.

Performance:

$ m && touch bionic/libc/stdio/stdio.c && time m
Before: 1m03s (2563 targets)
After: 21s (90 targets)

Bug: 24597504
Change-Id: Ia5dd950273d143f4e99eee8bef7478f1a94cd138
2015-11-04 15:23:59 +09:00
Dan Albert
e4256f5759 Revert "Enable gold linker for aarch64."
Causes build failures on Darwin.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 5 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 8 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 11 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: error: treating warnings as errors

This reverts commit 127d110172.

Change-Id: I1d3de90f5ae777b66a8f94fbcc9ccde8a9e3001c
2015-10-27 18:18:46 +00:00
Than McIntosh
127d110172 Enable gold linker for aarch64.
Switches default linker from -fuse-ld-bfd to
-fuse-ld=gold, and enables -Wl,--icf=safe. This
changes reduces /system/lib64/*.so text size
by about 2% for N9.

Change-Id: I0ef2483e1c47c34e63292dad6f6bf532359b733e
2015-10-22 09:44:48 -04:00
Ying Wang
16b1b0576c Allow to build against Mac OS X SDK 10.11.
Bug: 24739158
Change-Id: I7c57e141dd02a0d2de5a7a1ccbc72ffe422a8d6f
2015-10-13 18:00:45 -07:00
Colin Cross
d98fe91a75 am 6b02b76a: Merge "Fix gcc color diagnostics"
* commit '6b02b76ab9ebb5c21743abc5616379d19bc1c304':
  Fix gcc color diagnostics
2015-10-03 00:43:23 +00:00
Colin Cross
12adaf5cb9 Fix gcc color diagnostics
gcc color diagnostics stopped working when the flag was moved to
TARGET_GLOBAL_CFLAGS, as that gets overwritten by combo/select.mk.  Put
it back in COMMON_GLOBAL_CFLAGS, and then let the windows build filter
it out, similar to the way clang deals with unknown flags.

Change-Id: I2db221edb893d81f199494e7515d1b9282c12fae
2015-10-02 16:42:10 -07:00
Christopher Ferris
9937e7b2a3 am 76ec0c4c: Merge "Set mcpu targets based on cpu variant."
* commit '76ec0c4c53aab6fca7af1badab882518962a9755':
  Set mcpu targets based on cpu variant.
2015-09-25 16:35:56 +00:00
Christopher Ferris
76ec0c4c53 Merge "Set mcpu targets based on cpu variant." 2015-09-25 16:29:33 +00:00
Christopher Ferris
561b4c1995 Set mcpu targets based on cpu variant.
Make cortex-a53 and cortex-a53.a57 use cortex-a7.

Change-Id: I89d5b3f044c867ec99aae319eafc33f2edf1f9f2
2015-09-24 13:59:33 -07:00
Dan Willemsen
04df655192 am b6a3ede5: Merge "Remove trailing / for HOST_TOOLCHAIN_FOR_CLANG"
* commit 'b6a3ede5506bec89618519bf4a8adb635e570e89':
  Remove trailing / for HOST_TOOLCHAIN_FOR_CLANG
2015-09-24 02:20:38 +00:00
Dan Willemsen
c339398581 Remove trailing / for HOST_TOOLCHAIN_FOR_CLANG
The darwin version doesn't have a trailing slash. The common case is to
append a path to it:

  $(HOST_TOOLCHAIN_FOR_CLANG)/lib/...

Which means we end up with two slashes.

Change-Id: I74e88924ecfd092c5f7871e188ede0aab29cf65b
2015-09-23 23:46:44 +00:00
Christopher Ferris
2649e750b6 am 9bc462c1: Merge "Add the common directory back to kernel headers."
* commit '9bc462c12a5c4519b00e988b738c029c688c12d5':
  Add the common directory back to kernel headers.
2015-09-19 19:52:16 +00:00
Christopher Ferris
6a2f28514c Add the common directory back to kernel headers.
There will only be a very small set of non-uapi headers. This is
mostly being done for the scsi headers since the kernel has not
made uapi versions of all of them.

Change-Id: I44904b07ff96de918dc5fcab4e5f117a34cb2a87
2015-09-17 21:20:03 -07:00
Dan Willemsen
749e07c648 am c8db47a0: Merge "Don\'t build windows modules with clang, fix flags"
* commit 'c8db47a0213aa5c204c140cb9268389b4175ae06':
  Don't build windows modules with clang, fix flags
2015-09-09 23:25:11 +00:00
Dan Willemsen
7728817ab9 Don't build windows modules with clang, fix flags
shamu checkbuilds set USE_CLANG_PLATFORM_BUILD, which shouldn't apply to
modules built for windows. Also fix some flags that were being set
improperly.

Bug: 23566667
Change-Id: Id4c5b7cc59966328483d90f2b7be3f35e439ecee
2015-09-09 16:10:50 -07:00
Dan Willemsen
c98d9a9d0f am f1c09d7f: Merge "Add HOST_CROSS_OS"
* commit 'f1c09d7fbd92a08cc51950a7d35fb5f7fc564a20':
  Add HOST_CROSS_OS
2015-09-09 18:19:13 +00:00
Dan Willemsen
057aaea54a Add HOST_CROSS_OS
Instead of using recursive make to change the HOST_OS when building the
windows SDK under linux, add the concept of cross-building to another
host os.

Bug: 23566667
Change-Id: I6dc525b601b6251d458d197c30bf4660d7485502
2015-09-09 18:12:29 +00:00
Ying Wang
119cec9a4a am 4e2f1903: Merge "Clean up Javac a little bit."
* commit '4e2f190315759b4270ab414b9ff1e24a19521521':
  Clean up Javac a little bit.
2015-09-02 21:18:38 +00:00
Ying Wang
447d69678e Clean up Javac a little bit.
- Added GLOBAL_JAVAC_DEBUG_FLAGS and merge it to
  PRIVATE_JAVACFLAGS/PRIVATE_JACK_FLAGS to get rid of
  PRIVATE_JAVAC_DEBUG_FLAGS/PRIVATE_JACK_DEBUG_FLAGS.
- With Java rules out of base_rules.mk we can get rid
  of java_alternative_checked_module now.

Change-Id: I1a14716c785e3d49330a75044107662ce96a9307
2015-09-02 10:04:18 -07:00
Elliott Hughes
f04f391b5f am 4548e7f4: Merge "Remove AndroidConfig.h."
* commit '4548e7f49dbec05c8b8187b0ea9e746fc47ec5d3':
  Remove AndroidConfig.h.
2015-08-28 19:59:18 +00:00
Elliott Hughes
43146118aa Remove AndroidConfig.h.
This change leaves soong references.

Change-Id: Iee32b6b97ad9711f69e999c9d01f01d71562b63f
2015-08-28 10:31:28 -07:00
Elliott Hughes
dc289ce17c am 344c3394: am 6f534125: Merge "Fix Linux host checkbuilds."
* commit '344c33949b48ec5f3d27bff36f145f157156cf19':
  Fix Linux host checkbuilds.
2015-08-21 00:11:53 +00:00
Elliott Hughes
6f5341259c Merge "Fix Linux host checkbuilds." 2015-08-20 23:56:07 +00:00
Elliott Hughes
ac9eea9463 Fix Linux host checkbuilds.
Turns out that thanks to 9d59f41776 we actually
build *all* the host libraries both 32- and 64-bit. Rather than fix the
libraries (or fixing things so we don't build stuff we don't need) right now,
let's just put _FILE_OFFSET_BITS and _LARGEFILE_SOURCE back.

Change-Id: I6c2d6a6919d1518f775e0d6c050e2c774994c5bd
2015-08-20 16:52:47 -07:00
Elliott Hughes
158800c9ed am 30a18bca: am a3fa59b1: Merge "Kill host Linux AndroidConfig.h."
* commit '30a18bca6222065d15e1b18d71a29a8fb921d4a8':
  Kill host Linux AndroidConfig.h.
2015-08-20 23:20:21 +00:00
Elliott Hughes
a3fa59b12b Merge "Kill host Linux AndroidConfig.h." 2015-08-20 23:10:05 +00:00
Elliott Hughes
b4ec57c016 am 00da9ced: am ded991b4: Merge "Revert "Fix Windows SDK build.""
* commit '00da9cede0b4199d3b6dea73b61afa8610b5c339':
  Revert "Fix Windows SDK build."
2015-08-20 21:54:58 +00:00
Elliott Hughes
7f45f953ad am 0049aecf: am a6065996: Merge "Stop defining WIN32."
* commit '0049aecf1763ea939cdf91e4e70fda67eb2efbee':
  Stop defining WIN32.
2015-08-20 21:54:57 +00:00
Elliott Hughes
73042ea0c7 Revert "Fix Windows SDK build."
This reverts commit b8dd176441.

This wasn't the problem, and mingw doesn't even use _LARGEFILE_SOURCE. The real problem (using WIN32 instead of _WIN32 in external/llvm) is fixed now.

Change-Id: I2b708a006b530cb18d03b1425cd65edda35ee17e
2015-08-20 21:22:19 +00:00
Elliott Hughes
f0c04c7b2e Stop defining WIN32.
Change-Id: Iac0b4745579e6de55bea02571617ae561308e1a9
2015-08-20 14:04:18 -07:00
Elliott Hughes
59b3bd27a0 am 896d0ee2: am 999fd4ea: Merge "Also -DWIN32 to keep llvm building."
* commit '896d0ee2cf123f045af859d7291dba65a0b7d789':
  Also -DWIN32 to keep llvm building.
2015-08-20 19:32:39 +00:00
Elliott Hughes
29e8a32972 am 9f9d2aed: am 79b199b8: Merge "Fix Windows SDK build."
* commit '9f9d2aedf4e28f0dec1568347ac6a052cdca12b9':
  Fix Windows SDK build.
2015-08-20 19:32:34 +00:00
Elliott Hughes
a65473b0e7 am 896b9c60: am 57069e59: Merge "Remove Windows AndroidConfig.h."
* commit '896b9c603938220ea40f75a07aef8ec1a0664f37':
  Remove Windows AndroidConfig.h.
2015-08-20 19:32:30 +00:00
Elliott Hughes
e31dfe965f Kill host Linux AndroidConfig.h.
We only build 64-bit now anyway.

Change-Id: I4bc9487522d215234509510bee66e4f210d86765
2015-08-20 11:14:23 -07:00
Elliott Hughes
0823ad3300 Also -DWIN32 to keep llvm building.
Change-Id: Ic8e70f35dda23226d60010a38cf5633840772310
2015-08-20 11:10:22 -07:00
Elliott Hughes
b8dd176441 Fix Windows SDK build.
I forgot that removing a file doesn't cause a rebuild in our lame build
system, so I hadn't actually tested my previous change.

Change-Id: Ida19d4a8fd40e37029031eac4b4ca5f0cc5c895b
2015-08-20 10:19:26 -07:00
Elliott Hughes
f8241b41d5 Remove Windows AndroidConfig.h.
The only things left that we're using are the Windows target version
and _FILE_OFFSET_BITS=64, and they can go in the combo .mk.

Also fix the unused Windows 64 .mk.

Change-Id: I5f2458d67c0a8201196a339573f861bbf18b7eb8
2015-08-20 09:56:52 -07:00
Elliott Hughes
33a1439796 am 088849e2: am b3c585d7: Merge "Stop defining HAVE_MS_C_RUNTIME."
* commit '088849e24da28e398179cd915f142ca4224e6888':
  Stop defining HAVE_MS_C_RUNTIME.
2015-08-19 22:31:13 +00:00
Elliott Hughes
19fa8413ed Stop defining HAVE_MS_C_RUNTIME.
Change-Id: Ie491547552ba64d60d669b74115da96a0fcced18
2015-08-19 14:22:59 -07:00
Dan Willemsen
1b14846717 am 48d95e75: am 05d97fe7: Merge "Remove legacy windows platform build support"
* commit '48d95e752536dc7a81c141e435e8a90b7929cf02':
  Remove legacy windows platform build support
2015-08-18 04:43:04 +00:00
Dan Willemsen
145ae32069 Remove legacy windows platform build support
We still support HOST_OS=windows for the SDK host tools cross-builds, but
that's only when USE_MINGW is set when running under linux.

Change-Id: I37da87dc9fbbd69ba10ce4d7f2668ab3f6482d92
2015-08-17 12:35:04 -07:00
Dan Albert
a1df0e6717 am 100422b2: am 2e4b90e5: Merge "Dedup system shared libraries."
* commit '100422b2311a96fbbdb1ba62a9945c2637c9e861':
  Dedup system shared libraries.
2015-08-06 21:40:18 +00:00
Dan Albert
6d5c952a7e am 849bf820: am 735cd90d: Merge "Disable transitive symbol resolving for mips64."
* commit '849bf82079ea33b84c7c01fbc2e52205843720ed':
  Disable transitive symbol resolving for mips64.
2015-08-06 21:40:17 +00:00
Dan Albert
7ba582aec3 Dedup system shared libraries.
These shouldn't differ by target. Right now only mips64 does, and
that's a bug.

Change-Id: Ic941ede85ba1bc07d3316a55639ba71a6afc9630
2015-08-06 14:18:55 -07:00
Dan Albert
46ed1e8590 Disable transitive symbol resolving for mips64.
The transitive symbol resolving causes build breakage when a binary
has indirect dependency on the NDK library.

This matches the change made for the the aarch64 toolchain:
https://android-review.googlesource.com/#/c/120654

Change-Id: Id5b2a63301cb1cdcdd84b4bcd9fbec8cf6ec0b3c
2015-08-06 14:18:55 -07:00