Commit graph

6628 commits

Author SHA1 Message Date
Ying Wang
956dcccf76 Move Java stuff out of base_rules.mk
- Moved the target-only .aidl and .logtag rules to java.mk.
- Moved the .proto rules,  Java library dependency calculation,
  Java resource processing and Java-related
  target-specific and global variables setup to a new java_common.java,
  which is shared by both target and host Java modules.
- Minor cleanup for the moved code.

Bug: 23597357
Change-Id: Ic3eb72e26bb1a663e5739abe0a935f96b88bc352
2015-08-28 17:17:19 -07:00
Elliott Hughes
43146118aa Remove AndroidConfig.h.
This change leaves soong references.

Change-Id: Iee32b6b97ad9711f69e999c9d01f01d71562b63f
2015-08-28 10:31:28 -07:00
Dan Willemsen
85ac8d2a00 Add support for LOCAL_SRC_FILES_(host)_(arch)
For boringssl, which has architecture specific host assembly files

Bug: 23566667

Change-Id: Ia4602d28e93a1b3d1400cf95417b5e446c5fb84b
2015-08-28 03:38:43 +00:00
Dan Willemsen
7a5498568f Add _(darwin|linux|windows)
So that we can support building both linux and windows binaries at the
same time on a linux host. This replaces the ifeq($(HOST_OS),...) checks
in Android.mk files.

Bug: 23566667

Change-Id: I693e11984e36d55bb6f09fa0d49bc485463e16fb
2015-08-28 03:36:22 +00:00
Ying Wang
267e957373 Dist the otatools package.
Bug: 23495952
Change-Id: I1f61946580dd8ea29c3d5e1f4e859cc6d1f8554a
2015-08-24 17:13:53 -07:00
Tom Cherry
2df35aea43 remove TARGET_PROVIDES_INIT_RC
Change-Id: I765b80d48333f54fb995e4ccfd77d38683c6cbb9
2015-08-24 13:55:02 -07:00
Christopher Wiley
4e719eafc4 Merge "Change .dbus.xml extension to .dbus-xml" 2015-08-21 20:46:21 +00:00
Shinichiro Hamaji
39c7d24339 Merge "Use goma when USE_GOMA=true is set" 2015-08-21 03:24:27 +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
a3fa59b12b Merge "Kill host Linux AndroidConfig.h." 2015-08-20 23:10:05 +00:00
Elliott Hughes
ded991b47d Merge "Revert "Fix Windows SDK build."" 2015-08-20 21:23:59 +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
a6065996cd Merge "Stop defining WIN32." 2015-08-20 21:21:01 +00:00
Elliott Hughes
f0c04c7b2e Stop defining WIN32.
Change-Id: Iac0b4745579e6de55bea02571617ae561308e1a9
2015-08-20 14:04:18 -07:00
Ying Wang
11a38e7a91 Merge "Support LOCAL_INIT_RC." 2015-08-20 20:47:53 +00:00
Ying Wang
9fe15ac757 Support LOCAL_INIT_RC.
A module can install a companion init.rc file,
by specifying:
LOCAL_INIT_RC := <init.rc-file-path-replative-to-LOCAL_PATH>
You can also use the variant with _32 or _64 suffix.

Bug: 23186545
Change-Id: I00a96509f5707ae39361a0c5555fa59d46c90322
2015-08-20 12:15:15 -07: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
57069e5974 Merge "Remove Windows AndroidConfig.h." 2015-08-20 16:59:03 +00: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
Christopher Wiley
9b17dea308 Change .dbus.xml extension to .dbus-xml
Work around gyp's inability to handle compound extensions by expecting
a similar looking simple extension for XML files definine DBus
interfaces.  We'll need to rename these sources in the places we're
using them already.

Bug: 23380180
Change-Id: Ieb2050f3ef05456cd70de65c3e128d57a6a508f8
2015-08-20 09:36:08 -07:00
Shinichiro Hamaji
ee482fd521 Use goma when USE_GOMA=true is set
With USE_GOMA, the path to gomacc in $GOMA_DIR or $HOME/goma
will be appended to CC_WRAPPER and CXX_WRAPPER.

Note this works only with USE_NINJA. Unlike ninja, GNU make
cannot change the parallelism depending on targets. Specifying
-j500 to GNU make would mean you may run 500 local jobs in
parallel, but with -j32 goma will just slow down the build.

Change-Id: I0f571454fd2a5b525ee29b445f7ab8715927ca00
2015-08-20 14:33:44 +09:00
Shinichiro Hamaji
e7d6f04d32 Merge "Add two flags for the latest ckati" 2015-08-20 05:25:34 +00:00
Dan Albert
4c40141a91 Fix sanitizer choice for global vs module.
The sanitizer chosen by the environment (either by SANITIZE_TARGET or
SANITIZE_HOST) should be chosen over the one specified by the module.

Bug: http://b/23330588
Change-Id: I835b7d76e071fc0db2f859f98dfb9d7ff76af245
2015-08-19 20:24:23 -07:00
Elliott Hughes
b3c585d745 Merge "Stop defining HAVE_MS_C_RUNTIME." 2015-08-19 22:09:32 +00:00
Elliott Hughes
19fa8413ed Stop defining HAVE_MS_C_RUNTIME.
Change-Id: Ie491547552ba64d60d669b74115da96a0fcced18
2015-08-19 14:22:59 -07:00
Christopher Wiley
974b82259a Fix DBus proxies to use all definitions
Bug: 22608897
Change-Id: Id17cf4b896c1c62be874599c7f346f3045e36819
2015-08-19 13:48:53 -07:00
Christopher Wiley
4d2b79f99e Merge "Generate DBus proxies and adaptors separately" 2015-08-19 18:30:20 +00:00
Christopher Wiley
529f176ee1 Generate DBus proxies and adaptors separately
Enable daemons exposing an interface over DBus to easily
build client libraries.  Now daemons can write rules like:

include $(CLEAR_VARS)
LOCAL_MODULE := libdbus-binding-example-client
LOCAL_DBUS_PROXY_PREFIX := dbus-example-example
LOCAL_SRC_FILES := \
    dbus_bindings/org.chromium.Example.Manager.dbus.xml \
    dbus_bindings/dbus-service-config.json
include $(BUILD_SHARED_LIBRARY)

to expose a client library.

While here, add support for generating independent adaptor header
files on a per interface basis.

Bug: 22608897
Change-Id: I011f9afc234811c31e445898321c2731c482fa77
2015-08-19 11:14:16 -07:00
Tao Bao
cbc6dc29d6 build: Don't call make_recovery_patch if there's no recovery.
Change-Id: Iea1bd529eca9cd607da3b420bc4287f95c18219d
2015-08-18 18:28:47 -07:00
Chih-hung Hsieh
59c858fc94 Merge "Remove special x86 flag that disables tail call optimization." 2015-08-18 22:11:03 +00:00
Ying Wang
42fa19482a Merge "Rename libnanopb-c-2.8.0 to libprotobuf-c-nano." 2015-08-18 21:35:42 +00:00
Ying Wang
c3dcb6c06b Merge "Consolidate the nanopb-c and regular protobuf build rules." 2015-08-18 21:35:37 +00:00
Ying Wang
f050c2f1c7 Rename libnanopb-c-2.8.0 to libprotobuf-c-nano.
Bug: 20093047
Change-Id: I787925fde97d1a3965cb8a9bf012f3c5a45a6aed
2015-08-18 14:32:07 -07:00
Ying Wang
b28ed234aa Consolidate the nanopb-c and regular protobuf build rules.
Bug: 20093047
Change-Id: I38ebd748aacce6d215403da481ad04833810a995
2015-08-18 14:27:45 -07:00
Dan Willemsen
05d97fe723 Merge "Remove legacy windows platform build support" 2015-08-18 04:31:07 +00:00
Dan Willemsen
e65107508a Merge "Use repeatable timestamps" 2015-08-18 03:30:11 +00:00
Ying Wang
a05e222368 Set up dependency on ADDRESS_SANITIZER_LINKER
Set up dependency on ADDRESS_SANITIZER_LINKER if address sanitizer is
enabled.

Bug: 22850550
Change-Id: I736fe1d4db9594edf9e82ae96e4631887881dfa5
2015-08-17 17:06:14 -07:00
Dan Albert
36b6f0472f Add BUILD(_HOST)?_FUZZ_TEST.
These are tests that use LLVM's libFuzzer for testing with a
sanitizer.

Bug: http://b/22850550
Change-Id: I6eeaff7877b7dd0c30f8910c6f27f5278b27a83d
2015-08-17 14:39:27 -07: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
1b2187d871 Don't filter on a non-existent variable.
This used to be used for aarch64
(https://android-review.googlesource.com/#/c/80126/), but has since
been removed and now does nothing. This was then reimplemented more
generally with my_illegal_flags
(https://android-review.googlesource.com/#/c/166405/). Drop
*GLOBAL_UNSUPPORTED_CFLAGS in favor of that.

Change-Id: I3347726dd92f9d3a16783e0d9d3b685a828400b4
2015-08-17 10:36:09 -07:00
Shinichiro Hamaji
5b6b6bb974 Add two flags for the latest ckati
* --regen

Re-generate build.ninja only when necessary. If either

1. .mk file is updated,
2. environment variable is updated,
3. $(wildcard) result is changed, or
4. $(shell) result is changed,

ckati will regenerate ninja file. This check takes only ~1
second, so incremental build will become much faster even
without "fastincremental" target.

* --ignore_dirty=out/%:

Some .mk files in out/ (e.g.,
out/target/product/generic/previous_build_config.mk)
are updated while ckati is running. With this flag, ckati
does not regenerate build.ninja when they look modified.
This should be OK for ninja based build, as ninja handles
command line changes nicely.

Change-Id: I7a2fca0e327d999599d6b16f06358e8a5e657565
2015-08-17 20:20:20 +09:00
Stephen Hines
2e08cb6e1b Merge "Add -mfpu=neon-vfpv4 if cpu is krait" 2015-08-15 02:04:55 +00:00
Yang Ni
36600a6bf9 Merge "Include target api version in build system for rscpp." 2015-08-14 18:39:47 +00:00
Dan Albert
578acca4e2 Merge "Link librt on the host when using sanitizers." 2015-08-14 00:59:52 +00:00
Dan Albert
2922411446 Link librt on the host when using sanitizers.
The sanitizers now use shared memory.

Change-Id: Ie8fa6690374eda08ee4138b68fd628ebbfa2d0c8
2015-08-13 17:25:10 -07:00
Noah Presler
4796a8c524 Include target api version in build system for rscpp.
b/23161320

Change-Id: Ibc23309abed092e7648168fbf4b80891a44929a6
2015-08-13 17:07:56 -07:00
Dan Albert
727b462a92 Merge "Never allow -w." 2015-08-13 16:48:18 +00:00