Commit graph

1644 commits

Author SHA1 Message Date
Dan Albert
c273d449e2 Merge "Revert "Use the platform SDK version from the config.""
am: 8f0f1757f5

Change-Id: Ida38854d79f2443f15e5121bb866f17619fd0f0a
2016-11-10 18:03:44 +00:00
Dan Albert
8f0f1757f5 Merge "Revert "Use the platform SDK version from the config."" 2016-11-10 17:47:39 +00:00
Dan Willemsen
4bd310a28a Merge "Add export_include_dirs to the local include path"
am: 7eaa5c8824

Change-Id: I010919ca36256d42b232294fd6c19b3603abea6b
2016-11-10 05:52:26 +00:00
Treehugger Robot
7eaa5c8824 Merge "Add export_include_dirs to the local include path" 2016-11-10 05:42:42 +00:00
Colin Cross
9022833edd Merge "Pass PREBUILT_SDK_VERSION to soong ndk build"
am: 7f1c10b9b1

Change-Id: I9a28bc60d1bd9ed4d2f89a2df1c8070ca23fd8ff
2016-11-10 01:00:59 +00:00
Colin Cross
7f1c10b9b1 Merge "Pass PREBUILT_SDK_VERSION to soong ndk build" 2016-11-10 00:47:33 +00:00
Colin Cross
9fe6ea834f Pass PREBUILT_SDK_VERSION to soong ndk build
Extract PREBUILT_SDK_VERSION from the make build system and pass
it to soong when doing ndk builds.

Test: untested
Change-Id: I573900dfb83aa8665c2bc349b7823e64497754d3
2016-11-09 13:01:41 -08:00
Dan Albert
74b8b55bb2 Revert "Use the platform SDK version from the config."
This reverts commit 9bef523809.

Reason for revert: Broke things

Change-Id: Ic3deac4fb6992572ac0cc95fa04d003e0c29f113
2016-11-09 19:39:42 +00:00
Dan Albert
92dccfb8bb Merge "Use the platform SDK version from the config."
am: fc75232555

Change-Id: I3308c23587dff4098bf959877e92142fc9b08835
2016-11-09 00:25:58 +00:00
Treehugger Robot
fc75232555 Merge "Use the platform SDK version from the config." 2016-11-09 00:17:46 +00:00
Dan Albert
d59dfec028 Add development/ndk/Android.bp.
am: d56d359f8c

Change-Id: Ief8a7b2bc0821e5fa8e91c80443347a1ed3cca90
2016-11-08 22:52:25 +00:00
Dan Albert
9bef523809 Use the platform SDK version from the config.
N is in AOSP now.

Test: make ndk && ls out/soong/ndk/platforms/android-24
Bug: None
Change-Id: I846ee12d10e962931bf22c94c37cdf7207dd4ff7
2016-11-08 12:53:39 -08:00
Dan Albert
d56d359f8c Add development/ndk/Android.bp.
Test: make native
Bug: None
Change-Id: I9eed4a63fa797a17c9ef20c73ec4e03b52791c2d
2016-11-08 11:43:45 -08:00
Dan Willemsen
273af7f3aa Add export_include_dirs to the local include path
Bug: 32641232
Test: ./soong builds compared before/after
Change-Id: If417a9f2278f42ffa524fccfd34f2b01a8cc9fb5
2016-11-07 22:31:32 +00:00
Colin Cross
63374ebf31 Merge "Support genrules with multiple tools"
am: a5662d5e4e

Change-Id: If50ee2a86e777d4bbd2963da257f515184214668
2016-11-07 20:39:01 +00:00
Colin Cross
a5662d5e4e Merge "Support genrules with multiple tools" 2016-11-07 20:28:25 +00:00
Colin Cross
6f080dff81 Support genrules with multiple tools
To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.

Also remove the host bin directory from the genrule path, and the
$srcDir variable, using either of them would have caused dependency
issues.

Bug: 31948427
Test: compare build.ninja
Change-Id: Icf6d3bce2bea00fec1363fd65c0bdf96d09281bf
(cherry picked from commit de6bd86d24)
2016-11-07 10:53:49 -08:00
Colin Cross
a912be4d5b Merge "Add android.Expand"
am: 6718d0ffac

Change-Id: I76cec89f9ec6965d43967322aa9592b2cd177d0b
2016-11-05 08:08:51 +00:00
Treehugger Robot
6718d0ffac Merge "Add android.Expand" 2016-11-05 08:04:09 +00:00
Dan Albert
a562428df4 Merge "Support a "platform-only" version tag."
am: f543ff67ad

Change-Id: I6e09d6593e1240c535fbe66b1f7c5a8cb613e47d
2016-11-05 00:42:55 +00:00
Treehugger Robot
f543ff67ad Merge "Support a "platform-only" version tag." 2016-11-05 00:35:47 +00:00
Colin Cross
6bde0948d2 Add android.Expand
Add android.Expand to expand $() variables in properties.

Test: expand_test
Bug: 31948427
Change-Id: Id30856a1d21d02e8997fcf2358e4a5feeede05be
2016-11-04 15:59:23 -07:00
Dan Albert
300cb2fe87 Support a "platform-only" version tag.
We tried to support this by version name convention (foo_PLATFORM and
foo_PRIVATE), but not everything follows those conventions. libm has
a LIBC_DEPRECATED, which is a bit to generic to apply this convention
to.

Support a "platform-only" tag which omits the tagged version in the
NDK.

Test: nose2
Bug: None
Change-Id: Iba34628ea02a813d22c8b32d10e54064f17ac6df
2016-11-04 14:52:30 -07:00
Colin Cross
1797477765 Merge "Move globbing to Blueprint"
am: 19ce4bddf1

Change-Id: Ib46054619cfb12beefe1a5d03bddc1be567f212c
2016-11-04 18:17:40 +00:00
Colin Cross
19ce4bddf1 Merge "Move globbing to Blueprint" 2016-11-04 18:09:36 +00:00
Colin Cross
f723c11136 Merge "Move more includes from -isystem to -I"
am: fea56e1220

Change-Id: I9b530954788cddccff712b0a7a666e2f5772da30
2016-11-04 15:35:20 +00:00
Colin Cross
fea56e1220 Merge "Move more includes from -isystem to -I" 2016-11-04 15:31:32 +00:00
Colin Cross
7f19f37443 Move globbing to Blueprint
Move Soong's globbing-with-dependencies support into Blueprint so it can
be used for subdirs= lines in Android.bp files.

Blueprint has a slight change in behavior around subname= lines, it now
always uses the subname and doesn't fall back to Blueprints.  To support
the Blueprints files in build/blueprint, use them directly with build=.

Test: build, add source file that matches glob, rebuild
Change-Id: Ifd0b0d3bc061aae0a16d6c7ca9a1cd8672656b4d
2016-11-04 04:54:16 +00:00
Colin Cross
04972fa4bc Merge "Add proto property struct"
am: 28f9094ee7

Change-Id: Ifeff48c97c5c9013e8bf27c5dd342bce2a422130
2016-11-04 01:07:30 +00:00
Treehugger Robot
28f9094ee7 Merge "Add proto property struct" 2016-11-04 01:02:27 +00:00
Dan Willemsen
610c494886 Add support for Implicit Outputs
am: 9f3c574a39

Change-Id: I6958429c73a4c6e656241b75d444506a2832acc1
2016-11-04 00:53:59 +00:00
Colin Cross
328f04e778 Move more includes from -isystem to -I
-isystem hides all warnings.  There were no warnings in
hardware/libhardware_legacy/include, hardware/ril/include, or
libnativehelper/include, move them from -isystem to -I.

Test: m -j native
Bug: 31751828
Change-Id: I64cf08b6f6a7f2cfbb19f7d3cc2d2cc9f0157a38
2016-11-03 15:49:36 -07:00
Colin Cross
0feb169460 Add proto property struct
The ProtoProperties struct was not being added to the property struct
list, preventing proto.type and proto.static properties from being set
in Android.bp files.

Bug: 32286026
Test: Add proto.type to system/extras/perfprofd/Android.bp, run soong
Change-Id: I9a5b63ddd3e7a53881ddbfd381c42aa1b4c4f454
2016-11-03 14:38:52 -07:00
Dan Willemsen
9f3c574a39 Add support for Implicit Outputs
Test: mmma -j system/tools/hidl
Test: Inspect out/soong/build.ninja before/after
Change-Id: I8e91a033342a12302d51358c5be244e32ad689d7
2016-11-03 14:35:12 -07:00
Colin Cross
a0411a2cf6 Fix race condition writing soong.config
am: d8f2014d3b

Change-Id: I5624e6749aa57beb6fc0eefb3058ac2b019ef75d
2016-11-03 19:27:37 +00:00
Colin Cross
d8f2014d3b Fix race condition writing soong.config
soong_build is run twice simultaneously now, once for manifest
generation and once for docs generation.  If one starts writing the
default soong.config file, and the other starts reading it, the reader
can see an empty file and fail.  Write the soong.config file to a
temporary file and the atomically rename it into place.

Bug: 32628314
Test: rm out/soong/soong.config && m -j blah && cat out/soong/soong.config
Change-Id: I8119b11d45093284b24cbc926d81eb9ea4bf2e27
2016-11-03 16:48:37 +00:00
Dan Willemsen
f1bc35a478 Merge changes from topic 'genpath_yacc'
am: 5a054df23c

Change-Id: Ib0ca3236c028b181c5adc4870d44e7c5f0b753ae
2016-11-03 07:19:08 +00:00
Dan Willemsen
967f8d4750 Add yacc generated headers to the include path
am: e1a3ce3609

Change-Id: I403fa749b607f860298e12454c3774c97e597791
2016-11-03 07:19:07 +00:00
Dan Willemsen
37e1142b77 Add subdir to GenPath
am: 21ec49068f

Change-Id: Iea27631a3214f515aec100381806d7ea1abbf482
2016-11-03 07:19:06 +00:00
Colin Cross
e41ddecd1f Merge "Support sanitizing a single device arch"
am: 42e04de8a7

Change-Id: I8fe2556a325e31c32144309c9570087dc3acdadf
2016-11-03 07:18:29 +00:00
Dan Willemsen
5a054df23c Merge changes from topic 'genpath_yacc'
* changes:
  Add yacc generated headers to the include path
  Add subdir to GenPath
2016-11-03 07:13:32 +00:00
Treehugger Robot
42e04de8a7 Merge "Support sanitizing a single device arch" 2016-11-03 07:12:54 +00:00
Dan Willemsen
e1a3ce3609 Add yacc generated headers to the include path
Test: mmma -j system/tools/aidl
Change-Id: I444c7f2b004877e027f67e36e016b528511e1a32
2016-11-02 21:19:18 -07:00
Dan Willemsen
21ec49068f Add subdir to GenPath
We were emulating this for proto files, standardize it and make the
other generators use it as well.

Test: Compare out/soong/build.ninja before/after change
Test: mmma -j system/tools/hidl
Change-Id: I1888c7b981749060a398387bbb9b481270bf6d75
2016-11-02 21:19:11 -07:00
Dan Willemsen
79cfc83f6e Merge "Update build.ninja.in for blueprint upgrade"
am: eb716e2559

Change-Id: Icb0a3136dda5c41db7772a6e9f553203493fea4a
2016-11-03 02:45:16 +00:00
Dan Willemsen
eb716e2559 Merge "Update build.ninja.in for blueprint upgrade" 2016-11-03 02:39:18 +00:00
Dan Willemsen
568be82106 Allow overriding tidy configs using environment variables
am: 318af8be27

Change-Id: Id73b8894bc6b33943ac131fe48a2620edee622f4
2016-11-03 00:44:00 +00:00
Dan Willemsen
627803256f Update build.ninja.in for blueprint upgrade
Bug: 32574042
Test: m -j
Change-Id: I34a3180a34b156955baf49c87fa985583083687e
2016-11-02 16:21:56 -07:00
Dan Willemsen
318af8be27 Allow overriding tidy configs using environment variables
This matches what Make did.

Bug: 32244182
Test: WITH_TIDY=1 m -j
Test: WITH_TIDY=1 DEFAULT_GLOBAL_TIDY_CHECKS=* m -j
Test: WITH_TIDY=1 DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS=* m -j
Change-Id: I12ee413829d35e20f21f8ca49bb315ea831a6506
2016-11-02 15:47:20 -07:00
Colin Cross
23ae82a2b2 Support sanitizing a single device arch
Allow specifying one or more architectures to sanitize for.  Defaults to
sanitizing all architectures.  Allows reducing the cost of sanitization
by only sanitizing half of the platform.

Bug: 29498013
Test: No change to build.ninja files with m -j SANITIZE_TARGET=address
Test: m -j SANITIZE_TARGET=address SANITIZE_TARGET_ARCH=arm
Test: nm -D $OUT/system/bin/app_process64 | grep asan, no asan symbols found
Change-Id: I972cccc2f19443895d47b44bd8104105f93ffb7d
2016-11-02 15:18:19 -07:00