Commit Graph

1174 Commits

Author SHA1 Message Date
Colin Cross
92b7d584c8 Add RuleBuilderCommand.Flags
Test: rule_builder_test.go
Change-Id: I7887a67aaef33bc591d83fade9175da3e401529f
2019-03-29 16:35:06 -07:00
Jaewoong Jung
4bc3a00349 Merge "Add prebuilt_apex." am: 083bd3e971 am: 14acd15640
am: 3cdc5b69a4

Change-Id: Ie43668acd32e52cdb2391f5c9d9798859a6aa885
2019-03-29 00:59:39 -07:00
Treehugger Robot
083bd3e971 Merge "Add prebuilt_apex." 2019-03-29 07:36:53 +00:00
Jaewoong Jung
939ebd5f33 Add prebuilt_apex.
Bug: 127789981
Test: apex_test.go + com.android.tzdata.apex
Change-Id: I09bb0a4b2acf310c55c789569da3c9d755638232
2019-03-28 15:56:22 -07:00
Jaewoong Jung
a4edf844da Merge "Fix an override_module bug." am: 044ead6b1a am: 5ce95f2eaf
am: ac24969630

Change-Id: I352a380486600c0b48a61daa0457eff09ceb8f66
2019-03-27 16:13:22 -07:00
Jaewoong Jung
a641ee9cc7 Fix an override_module bug.
proptools.PrependProperties doesn't replace a pointer when both the src
and the dst have one. This prevented override_module from overriding
simple value pointer properties when the base module has existing
values. It turns out this was why the name property needed to be
overwritten manually.

Bug: 122957760
Test: app_test.go
Change-Id: I3302287c31a560422548c22fade95261ddbe606a
2019-03-27 11:21:24 -07:00
Patrice Arruda
010bc3f077 Merge "Soong: Add synopsis to soong_namespace module." am: 39302bbcb9 am: acca92e981
am: e54b65abc2

Change-Id: I3b2de8d90dff9a398588cf0e2677e57ba05dfb12
2019-03-27 09:06:33 -07:00
Patrice Arruda
64765aaef9 Soong: Add synopsis to soong_namespace module.
Synopsis was missing to soong_namespace module. Also added documentation
to imports properties. This required the namespaceProperties struct to be
pulled out of the NamespaceModule struct in order for the documentation
tool to extract the property documentation.

Bug: b/128337482
Test: Ran the doc generation command and verified that the synopsis was
added to soong_namespace and imports properties is listed too.

Change-Id: I519b14629bdbc85f35fbc8fa03e78dc2ad3f655e
2019-03-26 09:09:41 -07:00
Jaewoong Jung
79e3e79ee8 Merge "Add override_android_app module type." am: e9665723da am: 9874d6abe6
am: c3432e294e

Change-Id: I28638a23c6140ae1775187a2afc61b15db97f487
2019-03-22 07:57:11 -07:00
Jaewoong Jung
e9665723da Merge "Add override_android_app module type." 2019-03-22 14:36:04 +00:00
Dan Willemsen
2039c8ebfb Merge "Tell make that sh_test is a NATIVE_TEST" am: 7446606eeb am: 4204e66c4c
am: 66f363dbff

Change-Id: I5f14565e0ebd1393666199263894764db722617c
2019-03-21 20:28:37 -07:00
Jaewoong Jung
525443aa22 Add override_android_app module type.
This is a new implementation of overriding module types that makes use
of local variants. With this, product owners can use PRODUCT_PACKAGES to
decide which override module to include in their products.

Bug: 122957760
Bug: 123640028
Test: app_test.go
Change-Id: Ie65e97f615d006b6e9475193b6017ea9d97e8e97
2019-03-21 13:26:20 -07:00
Dan Willemsen
3db041948b Tell make that sh_test is a NATIVE_TEST
So that it ends up in VTS's DATA/nativetest like a cc_test, and
otherwise acts like a test.

Test: convert external/linux-kselftest to sh_test
Change-Id: I44b7cfca45f8fe5d7fbb6eaa845a79bd70f155ef
2019-03-21 12:44:57 -07:00
Anton Hansson
b56333c19b Separate device and product overlays am: 53c88448fd am: d24adcf68e
am: 40286c75e4

Change-Id: I1e6ae2fe7f5cc57271edce235b702b83b64a7902
2019-03-21 04:46:05 -07:00
Anton Hansson
53c88448fd Separate device and product overlays
This change adds book-keeping of whether an overlay came from
DEVICE_PACKAGE_OVERLAYS or PRODUCT_PACKAGE_OVERLAYS. This is
later used when writing the output to soong_app_prebuilt.mk, to
use either LOCAL_SOONG_[DEVICE|PRODUCT]_RRO_PACKAGES depending
on the original source.

This change is intended to be a noop on its own, but allows a
follow-up make change to customize the location of the auto-generated
RRO packages.

Bug: 127758779
Test: verify noop on presubmit targets
Change-Id: Ib24fe1d05be132c360dd6966f7c83968c9939f77
2019-03-21 11:25:46 +00:00
Jiyong Park
6964c93121 Merge "Notice support for APEX" am: 21c81326ff am: 602b6ba221
am: ba47ea108a

Change-Id: I67ecf430ba38963084c4a65d3482a0a7ff5ba73e
2019-03-20 23:20:22 -07:00
Treehugger Robot
21c81326ff Merge "Notice support for APEX" 2019-03-21 06:04:14 +00:00
Vic Yang
b7700709dd Add support for no-vendor-variant VNDK am: efd249e62a am: 409b1d2375
am: 89ac74fed3

Change-Id: I11df12e61cab3d3f694573a558fe8862023e475c
2019-03-20 21:58:34 -07:00
Vic Yang
efd249e62a Add support for no-vendor-variant VNDK
When no-vendor-variant VNDK is enabled, the vendor variant of VNDK
libraries are not installed.  Since not all VNDK libraries will be
ready for this, we keep a list of library names in cc/vndk.go to
indicate which libraries must have their vendor variants always
installed regardless of whether no-vendor-variant VNDK is enabled.

Also add --remove-build-id option to the strip script to facilitate
the check of functional identity of the two variants.

Bug: 119423884
Test: Add a dummy VNDK library and build with
      TARGET_VNDK_USE_CORE_VARIANT := true, with the corresponding
      build/make change.

Change-Id: Ieb1589488690e1cef1e310669a8b47a8b8759dac
2019-03-21 04:29:24 +00:00
Jiyong Park
52818fcde8 Notice support for APEX
Notice file for an APEX is created by merging notice files for the
modules included in it (plus the notice file for the APEX itself if
specified).

Notice files having the same content are not duplicated; it is emitted
only once.

Bug: 128701495
Test: m (apex_test is amended)
Test: m and inspect $(PRODUCT_OUT)/obj/NOTICE.txt to check there are
license entries for /system/apex/*.apex files

Change-Id: I169d91038291a6c71615de97cf5b03174afab5d4
2019-03-21 08:05:50 +09:00
Colin Cross
75bace9c07 Replace ctx.ExpandSources with android.PathsForModuleSrc am: 8a49795df1 am: 9bcee1f400
am: 3cafca1d18

Change-Id: I8945a8a775d5931489ef3f3614046207dd816f1e
2019-03-20 12:53:01 -07:00
Colin Cross
ecfa227f40 Remove ModuleSrcPath am: 07e51619a2 am: 734ad216fe
am: 055d480456

Change-Id: I386ab7a179da59477acc38571f63e652ac47d8a2
2019-03-20 12:52:44 -07:00
Colin Cross
cfb63c9cc7 Remove ExpandSourcesSubDir and ModuleSrcPath.WithSubDir am: 2fafa3ec49 am: ba0fa9c339
am: 5bbf0dda95

Change-Id: I0c1e0fddca6afe4ed8d5d232e39d27bb9c0c3722
2019-03-20 12:52:27 -07:00
Colin Cross
8a49795df1 Replace ctx.ExpandSources with android.PathsForModuleSrc
Move the logic from ctx.ExpandSources into android.PathsForModuleSrc
and ctx.ExpandSource into android.PathForModuleSrc, and deprecate
them.  When combined with the pathDepsMutator this will let all
properties that take source paths also take filegroups or genrule
outputs, as long as they are tagged with `android:"path"`.

Test: All soong tests
Change-Id: I01625e76b5da19240e9649bf26a014eeeafcab8f
2019-03-20 19:36:13 +00:00
Colin Cross
07e51619a2 Remove ModuleSrcPath
ModuleSrcPath was designed as a type that ensured that modules only
referenced sources inside the directory that contained the Android.bp
file.  In practice they don't work very well, because allowing
filegroups and genrules as inputs to any module that takes a source
path means that the path might end up being to a file in another
source directory or to a generated file in the output directory.

Remove ModuleSrcPath, replacing it with SourcePath in the places
that need to explicitly refer to a path in the source tree, or
Path where it may be a source path or a generated path.

Make PathForModuleSrc return a Path instead of a SourcePath in
preparation for consolidation with ctx.ExpandSources, which will
make it possibly return paths to generated files.

Test: All soong tests
Change-Id: I973a78470ed14307eea5f6d0cc93942775a65715
2019-03-20 19:36:03 +00:00
Colin Cross
2fafa3ec49 Remove ExpandSourcesSubDir and ModuleSrcPath.WithSubDir
Replace ExpandSourcesSubDir with ExpandSources plus
PathsWithModuleSrcSubDir, which loops over the paths and uses
Join to create paths relative to subdir on any results that
are ModuleSrcPaths.

Test: All soong tests
Change-Id: I11a7face88641e2c26ccdca0a3117d5c38ab588e
2019-03-20 19:35:52 +00:00
Colin Cross
f46f315a55 Merge "Support go 1.12" am: bb3deefa9d am: 930ae2f702
am: 318c318f97

Change-Id: I512af0e859af2b0c4bd690e3224488f05e05b0a5
2019-03-19 21:37:08 -07:00
Colin Cross
3020fee889 Support go 1.12
go 1.12 changed the stack trace of a function call during global
variable initialization to contain a function called
"PKG.init.ializers".  Fix callerName to split the package path
and function name on the first "." after the last "/", and look
for functions called "init.ializers" or functions with the
prefix "init."

Test: Soong tests with go 1.12
Change-Id: I25f1ba989ef2d65ca85cb7c9d84454cca230ff86
2019-03-19 23:47:22 +00:00
Julien Desprez
2af7d4edd4 Merge "Support test_suite and test_config with sh_test" am: 8c84e60f38 am: 542c4cb03f
am: e0036d8b4a

Change-Id: I886eff6faa96a8ce6c1f90a1ec24a75612660522
2019-03-19 14:20:30 -07:00
Julien Desprez
8c84e60f38 Merge "Support test_suite and test_config with sh_test" 2019-03-19 21:05:13 +00:00
Colin Cross
526f14600f Merge "Don't add dependencies on modules referenced in unused arch variants" am: 1f74135f97 am: 577ef51ca7
am: 0612d8431b

Change-Id: Iec9802e9c4873217d7d15126ced7b31207313279
2019-03-19 01:26:02 -07:00
Julien Desprez
9e7fc1407d Support test_suite and test_config with sh_test
Start basic suite support for sh_test so we can
include them in suites.

Test: make adb-remount-sh
Bug: 127959519
Change-Id: If73541d614a2d809e4f94e4fee4c660840631cc1
2019-03-18 14:35:21 -07:00
Colin Cross
a3a97415d3 Don't add dependencies on modules referenced in unused arch variants
When extracting dependencies from properties tagged with
`android:"path"`, only look at the general property structs
and not the arch-specific ones.  The necessary arch-specific
values will be appended into the general property structs.

Fixes: 128377112
Test: path_properties_test.go
Change-Id: I35e35555d5b15473229a7458fcfc2c7dacaec889
2019-03-18 12:49:14 -07:00
Benjamin Gordon
58d24616e2 Merge "Add stoney ridge x86 variant" am: cd2e52870a am: 5473e3fbdf
am: c8351c6af8

Change-Id: I83644aba3f3657bf630b9330f6d30ab1ff3466e1
2019-03-15 15:57:18 -07:00
Benjamin Gordon
87e7f2f685 Add stoney ridge x86 variant
Bug: 124445930
Test: compile and deploy to grunt
Change-Id: Ie63217c7c68f5688bf070cbabf9ea5a1b82d3acc
2019-03-15 11:04:48 -06:00
Jiyong Park
7753455639 Merge "Create symlink for bionic files" am: 7487fb54fe am: f0fceb2cbf
am: 94d2eef048

Change-Id: Ic1d94187e0d4703165e0666cac04017a780b0fea
2019-03-15 02:40:51 -07:00
Treehugger Robot
7487fb54fe Merge "Create symlink for bionic files" 2019-03-15 09:02:18 +00:00
Patrice Arruda
bf54cde61c Merge "Soong: update the synopsis of vts_config module." am: 6f933e5528 am: 826a11f6ec
am: 71bd15d860

Change-Id: I8d60b5947b02c91f52a990df6276d05b7d32d60c
2019-03-14 18:40:13 -07:00
Treehugger Robot
6f933e5528 Merge "Soong: update the synopsis of vts_config module." 2019-03-15 01:22:27 +00:00
Stephen Hines
33b3746bb7 Merge "Add AVX/AVX2 supported archs in build system" am: 5971f50a22 am: 3c9be84a21
am: 55b011de4c

Change-Id: I7bf976ebdafd8a7859c4c6aa6a6df08c6947316b
2019-03-14 18:21:09 -07:00
Stephen Hines
5971f50a22 Merge "Add AVX/AVX2 supported archs in build system" 2019-03-15 00:55:04 +00:00
Patrice Arruda
3cec272c94 Soong: update the synopsis of vts_config module.
Added more details on the vts_config synopsis.

Bug: b/128337482
Test: Ran the doc generation command and verified that the synopsis
was updated in vts_config module.

Change-Id: I1d29a7f800b5dd4e6f1719af5d0d3b723202f33d
2019-03-14 12:05:02 -07:00
Jiyong Park
f11943527d Create symlink for bionic files
This change creates following symlinks for bionic files.

/system/lib/libc.so -> /apex/com.android.runtime/lib/bionic/libc.so
/system/lib/libm.so -> /apex/com.android.runtime/lib/bionic/libm.so
/system/lib/libdl.so -> /apex/com.android.runtime/lib/bionic/libdl.so
/system/bin/linker -> /apex/com.android.runtime/bin/linker
...

This allows us to not have mountpoints under /bionic.

Bug: 125549215
Test: m and inspect the symlinks in the system partition.
Change-Id: I3a58bf4f88c967862dbf06065a1af8fc4700dda3
2019-03-15 03:04:52 +09:00
Patrice Arruda
297e7a4950 Merge "Soong: Update the filegroup's synopsis documentation." am: 33548f07a8 am: afb11048e4
am: 3574493fbd

Change-Id: I3c8cf1a0a69e19c49f59b89a3593fb5e95976afc
2019-03-13 14:13:56 -07:00
Patrice Arruda
8958a942d1 Soong: Update the filegroup's synopsis documentation.
Cleaned up the synopsis of filegroups module under android package.

Bug: b/128337482
Test: built the documentation manually and verified that the changes
took place.

Change-Id: Ib5544125e5462fca7c7aebc4bed4647bba11d56b
2019-03-13 10:53:36 -07:00
Shalini Salomi Bodapati
4a0459dd03 Add AVX/AVX2 supported archs in build system
This patch adds new arch features avx2 and avx512 and
their supported archictectures for x86 and x86_64

Bug: 123376719
Test: m checkbuild

Change-Id: I3c079741815b39d7dbb4072e12ef7c9c2c15f5fe
Signed-off-by: Shalini Salomi Bodapati <shalini.salomi.bodapati@intel.com>
2019-03-13 03:48:45 +00:00
Patrice Arruda
0f4065c6b2 Merge "Soong: Add documentation to sh_binary[_host] module." am: 66184450d5 am: a3864b9ad8
am: 90ae6dbc98

Change-Id: I6ea6a6dadd6b68868a2286c13cb2bf3ddd381ce8
2019-03-12 09:45:57 -07:00
Patrice Arruda
66184450d5 Merge "Soong: Add documentation to sh_binary[_host] module." 2019-03-12 16:21:36 +00:00
Patrice Arruda
ab47f86fc4 Merge "Soong: Update documentation on prebuilt* modules." am: 9dd4b38c40 am: 61bb94811c
am: 03c00d4f64

Change-Id: Iac0606c0cbbe12d4cad9a9417ccc5f95778d4614
2019-03-12 08:03:32 -07:00
Patrice Arruda
9e14b96f29 Soong: Update documentation on prebuilt* modules.
The prebuilt_etc_host is missing synopsis. Also, cleaned up the
synopsis of the remaining prebuilt* module to be clearer.

Bug: b/128337482
Test: Built the documentation and verified that the output is correct.
Change-Id: I64593970a44b548ac841de79aa0e4aa1699c6c9b
2019-03-11 16:14:07 -07:00