Commit Graph

346 Commits

Author SHA1 Message Date
Yohann Roussel
cf65679d9e Add support for Jack plugin am: 53b7fbbe78 am: be50693fc1
am: 62e67d1bff

Change-Id: I7cf2db9ccd9bfe03ec1394340b2683b014e7dde5
2016-09-22 22:14:39 +00:00
Yohann Roussel
16243bdbec Fix bad JACK_PLUGIN variable
Changed to LOCAL_JACK_PLUGIN.

(cherry picked from commit 17924b136cb5bfc60d138e8c7e5c18a90b5965c3)

Test: Manually tested by some manual activations of the coverage plugin.
Change-Id: I1be4aaa502103fc308d35a5672dc4fe5900c4ebe
2016-09-21 10:54:42 +02:00
Yohann Roussel
53b7fbbe78 Add support for Jack plugin
And ensure compatibility with coverage plugin.

(cherry picked from commit 862bb84d37e3e6ca61080de58f206e512e09d4e0)

Bug: 28876950
Test: Manually tested by some manual activations of the coverage plugin.
Change-Id: I804558a501825357bf0812de626d2957eedbdc13
2016-09-21 10:53:45 +02:00
Colin Cross
b6e788ff89 Merge "Replace usages of my_register_name with my_all_targets" am: 077d9d5fe7 am: e373117cac am: 1f351ad75c
am: fba6042e11

Change-Id: Id807306cce8447e7170e9c344ce07eb6e03fda52
2016-09-21 02:56:39 +00:00
Colin Cross
fba6042e11 Merge "Replace usages of my_register_name with my_all_targets" am: 077d9d5fe7 am: e373117cac
am: 1f351ad75c

Change-Id: Ie0b935e6209a941cfe992276270b5b5b3e5c4f95
2016-09-21 02:28:59 +00:00
Colin Cross
3388670e78 Replace usages of my_register_name with my_all_targets
A few module types add extra dependencies on $(my_register_name), move
them to $(my_all_targets) so that they are built for mm and mma too.

Bug: 31526036
Test: mmm framework
Change-Id: I2e594ce771451a99691739b963f4ce517e9dd595
2016-09-20 16:03:50 -07:00
Dan Willemsen
98b277b930 Merge "Fix link_type checking" am: 665cda08f0 am: 1347d959de am: 8459bbca6f
am: 83aba3a7ab

Change-Id: I0cca5c1e262c8a8d92858ed5c927e4775c2e3a6e
2016-09-20 03:29:59 +00:00
Dan Willemsen
83aba3a7ab Merge "Fix link_type checking" am: 665cda08f0 am: 1347d959de
am: 8459bbca6f

Change-Id: I22da0f1703995c4734a72901abe2dbcee62c1406
2016-09-20 01:01:38 +00:00
Dan Willemsen
121e284b46 Fix link_type checking
This was printing "error:", but not actually triggering an error.
Instead of trying to write a single line bash script to handle this,
move the actual check into python. This allows us to print all of the
errors for a single module before triggering the failure.

Also updates the warning format and the warn.py script to properly parse
these warning. Many of the java:sdk -> java:platform warnings are false
positives due to the lack of LOCAL_SDK_VERSION markings on prebuilts.

Individual tags can be marked as warnings now, which lets us check for
system libraries linking against vendor libraries (which won't work on
AOSP). I'm not sure this is a completely valid check, which one reason
that it's just a warning.

Test: m all_link_types (with some missing libs commented out)
Change-Id: I333e418c9a4511b7c7e826891ae481da08fbf6f9
2016-09-15 14:40:39 -07:00
Ryan Campbell
af2091b217 Merge "Implement path-based enabling of code coverage." am: 1e1ecd5d07 am: 6b92bb4ebb am: 577eab3323
am: 5a63fe6856

Change-Id: I264e7ee9d8139c79fb882f40f1cb6854d2e24a8b
2016-09-14 03:05:55 +00:00
Ryan Campbell
5a63fe6856 Merge "Implement path-based enabling of code coverage." am: 1e1ecd5d07 am: 6b92bb4ebb
am: 577eab3323

Change-Id: I36a4fc67e87e8561486111263b0d6b6ed1bdefcc
2016-09-13 20:01:23 +00:00
Ryan Campbell
81c9d29dad Implement path-based enabling of code coverage.
Native coverage is enabled by setting NATIVE_COVERAGE to true
and specifying a list of paths in the COVERAGE_PATHS
environment variable. Files are exported to a zip file in the
target out directory.

Change-Id: I66a2ddd88e849bec1cc0cdae1b51fe18a007e2c3
2016-09-13 10:27:25 -07:00
Dan Willemsen
cfa84e90bd Merge "Identify modules ready to be converted to Soong" am: c6bada8acd am: 6596082d00 am: 52438f9fcf
am: b2bf9125f2

Change-Id: Ib249a1cdd546cf3bafed7002ac9e05080f55715d
2016-08-26 23:28:07 +00:00
Dan Willemsen
b2bf9125f2 Merge "Identify modules ready to be converted to Soong" am: c6bada8acd am: 6596082d00
am: 52438f9fcf

Change-Id: I3d2aec41ae42b05006cea2837968174edd97817a
2016-08-26 22:54:34 +00:00
Dan Willemsen
fc92fb2b9b Identify modules ready to be converted to Soong
The output will be in the `m dist` results as soong_to_convert.txt, or
can be built using:

  $ m $OUT/soong_to_convert.txt

The output is a list of modules that are probably ready to convert to
Soong:

  # Blocked on Module (potential problems)
           283 libEGL (srcs_dotarm)
           246 libicuuc (dotdot_incs dotdot_srcs)
           221 libspeexresampler
           215 libcamera_metadata
               ...
             0 zram-perf (dotdot_incs)

The number at the beginning of the line shows how many native modules
depend on that module.

All of their dependencies have been satisfied, and any potential
problems that Make can detect are listed in parenthesis after the
module:

  dotdot_srcs: LOCAL_SRC_FILES contains paths outside $(LOCAL_PATH)
  dotdot_incs: LOCAL_C_INCLUDES contains paths include '..'
  srcs_dotarm: LOCAL_SRC_FILES contains source files like <...>.c.arm
  aidl: LOCAL_SRC_FILES contains .aidl sources
  dbus: LOCAL_SRC_FILES contains .dbus-xml sources
  objc: LOCAL_SRC_FILES contains Objective-C sources
  proto: LOCAL_SRC_FILES contains .proto sources
  rs: LOCAL_SRC_FILES contains renderscript sources
  vts: LOCAL_SRC_FILES contains .vts sources

Not all problems can be discovered, but this is a starting point.

Change-Id: I45674fe93fd267d4d1fb0bc3bc9aa025e20c5ac6
2016-08-26 13:33:31 -07:00
Yohann Roussel
4253f35dbb Merge "Allow selection of prebuilts min sdk" am: 624619d4d0 am: 1d7e0f2c74 am: 51403950b3
am: 760ece009b

Change-Id: I74a694593cc3937a919346c4dc0923883c85beea
2016-08-24 10:04:44 +00:00
Yohann Roussel
760ece009b Merge "Allow selection of prebuilts min sdk" am: 624619d4d0 am: 1d7e0f2c74
am: 51403950b3

Change-Id: I59906380334fd96d70044b7d5253ea703ab08690
2016-08-24 09:54:54 +00:00
Yohann Roussel
1d7e0f2c74 Merge "Allow selection of prebuilts min sdk"
am: 624619d4d0

Change-Id: I54df2acb3003c0222b3f3d909d3f9c80dfda493d
2016-08-24 09:50:29 +00:00
Yohann Roussel
5960c54664 Allow selection of prebuilts min sdk
Bug: 30966099

Change-Id: I55128d5a321bd65b4e12b90afbf7efe8ccb35829
2016-08-22 09:54:32 +02:00
Dan Willemsen
533fb4d03c Allow prebuilt APKs to specify LOCAL_INSTALLED_MODULE_STEM am: dc1ddfcf3c am: 38fc8ea734
am: fcdfbfe030

Change-Id: Ide5f24faf4773e0700acfe209bcde7de3547d94d
2016-08-06 20:56:02 +00:00
Dan Willemsen
fcdfbfe030 Allow prebuilt APKs to specify LOCAL_INSTALLED_MODULE_STEM am: dc1ddfcf3c
am: 38fc8ea734

Change-Id: I9f97af6b8036392e1737c084b5cb5c8dfbbe2d8e
2016-08-06 20:53:01 +00:00
Dan Willemsen
dc1ddfcf3c Allow prebuilt APKs to specify LOCAL_INSTALLED_MODULE_STEM
We've got a case where two different prebuilt APKs need to have the same
apk name (but using a different LOCAL_MODULE_PATH).

Bug: 30470308
Change-Id: I5551e720d173623daa757c4c0aabc8e1a423ac38
2016-08-05 17:26:28 -07:00
Dan Albert
ea03e2cd85 Merge changes from topic \\\\'soong-sysroots\\\\' am: 65de8e446c am: 01efd46bca am: cce7b4f00a
am: dee194df54

Change-Id: I836ba1c1734f09df3645345ff7a8e9b7fdcac3a5
2016-07-28 16:20:11 +00:00
Dan Albert
dee194df54 Merge changes from topic \\\'soong-sysroots\\\' am: 65de8e446c am: 01efd46bca
am: cce7b4f00a

Change-Id: Ia5f4f59a5d53c852905a50f1a54d1ec3b9e6e2a7
2016-07-28 16:12:25 +00:00
Dan Albert
01efd46bca Merge changes from topic \'soong-sysroots\'
am: 65de8e446c

Change-Id: I8c8951364c5ddd6f99a27111acdb72097ab5db42
2016-07-28 16:06:24 +00:00
Dan Albert
4ac4231ca1 Add LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.
This allows a module to avoid being installed to the common library
directory.

Test: Prevents copying of NDK libraries with the NDK sysroot patches.
Bug: http://b/27533932
Change-Id: I24f11d5a70595bcd524ac5bd85034c226d2de211
2016-07-28 00:06:19 -07:00
Dan Willemsen
57b814df5f Merge \\\\"Allow prebuilts to specify mini-debug-info\\\\" am: 4ea20be28b am: d5c3e04c85 am: 6fb6459157
am: 2dcdb6d05c

Change-Id: I3dede8e141cb2e4d6b09729d42fa52dc2986f357
2016-07-14 04:18:19 +00:00
Dan Willemsen
2dcdb6d05c Merge \\\"Allow prebuilts to specify mini-debug-info\\\" am: 4ea20be28b am: d5c3e04c85
am: 6fb6459157

Change-Id: I2f5470cbc730d786f79dabd509e392222af4b3cf
2016-07-14 04:15:09 +00:00
Dan Willemsen
d5c3e04c85 Merge \"Allow prebuilts to specify mini-debug-info\"
am: 4ea20be28b

Change-Id: I410014ad90800d78753f0c5c8cbb948aef369614
2016-07-14 04:09:47 +00:00
Dan Willemsen
4598fbc9dd Allow prebuilts to specify mini-debug-info
So that Soong can specify the default that's used by Make.

Change-Id: I0c1062ad8f21df8b9a483f99dce679a1434e4859
2016-07-13 17:39:56 -07:00
Dan Willemsen
937a1fb25c Merge \\\\"Extend SDK link check to java libraries\\\\" am: e706372ba1 am: 720a966ce5 am: 245b024986
am: 57471aa06f

Change-Id: Id56450c2b06b8974f75e77e2f098138f201e4d9a
2016-07-11 21:21:17 +00:00
Dan Willemsen
57471aa06f Merge \\\"Extend SDK link check to java libraries\\\" am: e706372ba1 am: 720a966ce5
am: 245b024986

Change-Id: I34889f0e04c8512553fde7f3fc2a03f5f1d2231a
2016-07-11 20:34:51 +00:00
Dan Willemsen
720a966ce5 Merge \"Extend SDK link check to java libraries\"
am: e706372ba1

Change-Id: Ia4cb9cfe94da5bdccce8726ed8777de13638bada
2016-07-11 20:27:08 +00:00
Dan Willemsen
62dfb591b1 Extend SDK link check to java libraries
Java code using the SDK should not link to java code built with the
platform APIs or the system SDK. Java code using the system SDK should
not link to the platform APIs either, but it can link to java code using
another SDK.

Change-Id: Iaae0a7e01993cfa1e023649fbd8a7974b5eca709
2016-07-09 04:42:15 +00:00
Colin Cross
301ff0def0 Merge \\\\"Support LOCAL_STRIP_MODULE := keep_symbols for prebuilts\\\\" am: aa3525dcf1 am: a00b2765cf am: b82ef6edf4
am: 3a47107c90

Change-Id: I4a1237f6dca0fee93c5564e60f55578aedda3fd3
2016-07-07 19:32:29 +00:00
Colin Cross
3a47107c90 Merge \\\"Support LOCAL_STRIP_MODULE := keep_symbols for prebuilts\\\" am: aa3525dcf1 am: a00b2765cf
am: b82ef6edf4

Change-Id: I6b700b83c7ca1f7f4c116c1db729cc9b5cd0566c
2016-07-07 19:28:59 +00:00
Colin Cross
a00b2765cf Merge \"Support LOCAL_STRIP_MODULE := keep_symbols for prebuilts\"
am: aa3525dcf1

Change-Id: I968afb2a8abfe9763a6fc1ee7eff5abf41d3a094
2016-07-07 19:21:19 +00:00
Colin Cross
5d934c7924 Support LOCAL_STRIP_MODULE := keep_symbols for prebuilts
Change-Id: I92a838b07fe4116d5a4b8521fe1ce8d44e6e84e2
2016-07-07 11:16:49 -07:00
Dan Willemsen
907078116a resolve merge conflicts of bfbcc0e to nyc-mr1-dev-plus-aosp
am: 8434156634

Change-Id: I132859dfe61cb0451ce1e713dff585dbc7b1ffa0
2016-06-29 21:31:32 +00:00
Dan Willemsen
8434156634 resolve merge conflicts of bfbcc0e to nyc-mr1-dev-plus-aosp
Change-Id: Iff6b808f5220050a876bc21fc0d221523d549976
2016-06-29 14:14:14 -07:00
Dan Willemsen
048f56dfce Extract prebuilt APKs from zip files
Since APKs are zip files, embedded APKs in other APKs can be extracted,
installed, then optimized.

DPI-based filenames can be used if LOCAL_DPI_VARIANTS is set.

Bug: 29179775
Change-Id: Iab6388111522114ce9dc07057d59e3a89394cd6f
2016-06-22 14:25:53 -07:00
Dan Willemsen
0d8dac828d Merge changes Ib6ffcc38,Ia58e6bc1 am: 3068a85962 am: 5da565a85a am: c4c3cc2ee9
am: c62e01831b

Change-Id: Id0c2646d53e8210043a175d1d9e401824c02d846
2016-06-16 15:58:38 +00:00
Dan Willemsen
5da565a85a Merge changes Ib6ffcc38,Ia58e6bc1
am: 3068a85962

Change-Id: I20aec66ac749a5db3f65e368e14a5caca12afff8
2016-06-16 15:50:46 +00:00
Dan Willemsen
b097fbed0a Check that NDK-built modules only link to NDK-built modules
Modules built against the NDK should only link against modules also
built against the NDK (or link to the NDK prebuilts). This patch
attempts to catch these cases, and prints a large warning when this is
violated. Once the tree is cleaned up, this will change to an error.

Change-Id: Ib6ffcc38d9161abdbe45a58af26ba429fb6f1876
2016-06-15 20:22:19 -07:00
Dan Willemsen
bf23c7aa27 Merge "Add NATIVE_TESTS class, move host native tests" am: e72fc63901 am: 10461b78f0 am: 32b36a8819
am: cb7af16c6e

* commit 'cb7af16c6e497e5f5d553352c86f62f024472a1c':
  Add NATIVE_TESTS class, move host native tests

Change-Id: I9d885e23b55e20e48ada35334de362bcd6408936
2016-06-07 00:15:37 +00:00
Dan Willemsen
32b36a8819 Merge "Add NATIVE_TESTS class, move host native tests" am: e72fc63901
am: 10461b78f0

* commit '10461b78f0955d9dba8d32045d1e35ff0f9a5c8c':
  Add NATIVE_TESTS class, move host native tests

Change-Id: Ia11b54676d3b33e58c177a5a375f29233657524e
2016-06-07 00:09:39 +00:00
Dan Willemsen
7fe992c0cc Add NATIVE_TESTS class, move host native tests
Host native tests have been getting installed into
out/host/linux-x86/bin/..., but this pollutes the bin directory with a
lot of poorly named tests. Also, to support 32-bit and 64-bit tests, we
need to have different names with different suffixes. This causes
problems when tests expect to be named something specific (like gtest).
It's also convenient to store test data next to the test itself.

So with this change, native tests will be installed in
out/host/linux-x86/nativetest[64]/$(LOCAL_MODULE)/$(LOCAL_MODULE_STEM)
just like target tests get installed into /data/nativetest[64].

Implement this using a new NATIVE_TESTS class, which is like
EXECUTABLES, but sets up the install path differently, and configures
the rpath to load shared libraries with the proper relative path.
LOCAL_MODULE_RELATIVE_PATH can be used to control the directory name, it
will default to $(LOCAL_MODULE). This way multiple related tests can be
grouped together.

Target native tests also use NATIVE_TESTS now, but nothing should change
other than LOCAL_MODULE_RELATIVE_PATH can be used.

Change-Id: I535e42b1a6b21c5b8d6a580aa2f944d2be35e27d
2016-05-24 12:43:16 -07:00
Shinichiro Hamaji
6adf8a01c9 Merge "Make apks depend on their certificates" am: f0a465c2cb am: f562875d0c am: e855fd6a59
am: 486ee6bb7d

* commit '486ee6bb7d6e8abea45643511b4877bfcc10d18f':
  Make apks depend on their certificates

Change-Id: I42f59c305834044e15a634022ff2789582a69e6e
2016-05-17 04:13:09 +00:00
Shinichiro Hamaji
e855fd6a59 Merge "Make apks depend on their certificates" am: f0a465c2cb
am: f562875d0c

* commit 'f562875d0c232b91be9a0931d30c31b1bbb98c45':
  Make apks depend on their certificates

Change-Id: I28f5f91a6265201136cdf83c18c7ada359bb4d33
2016-05-17 04:08:25 +00:00
Shinichiro Hamaji
641e61cb53 Make apks depend on their certificates
Bug: 27954979
Change-Id: I02db576cb80cbb9dd684d931da02e1b3b3efdf37
2016-05-13 16:03:24 +09:00