Commit graph

676 commits

Author SHA1 Message Date
Nelson Li
1f8357fe7d Revert "Revert "Build System: Solve dependency problem for test""
This reverts commit 6fe7f194b9.

Reason for revert: Fixed all build break.

Change-Id: I0a4842df1225399752515a4cd7a7c14173a5bf7b
2019-03-14 01:05:36 +00:00
Nelson Li
6fe7f194b9 Revert "Build System: Solve dependency problem for test"
This reverts commit 224e103308.

Reason for revert: Build Breakage in git_pi-dev-plus-aosp/docs @5366136
make -j110 docs showcommands dist DIST_DIR=/buildbot/dist_dirs/git_pi-dev-plus-aosp-linux-docs/5366136 checkbuild
FAILED:
 Dependencies in out found with no rule to create them:
 out/target/product/generic/data/app/CtsVerifierTester/CtsVerifierTester.apk
 out/target/product/generic/data/app/TradeFedTestApp/TradeFedTestApp.apk
 out/target/product/generic/data/app/TradeFedUiTestApp/TradeFedUiTestApp.apk
 15:53:46 stopping
and
make -j50 showcommands dist TARGET_PRODUCT=cf_x86_phone DIST_DIR=/buildbot/dist_dirs/git_master-linux-ndk_translation_all/5366149 ndk_translation_all
FAILED: ninja: 'out/target/product/vsoc_x86/data/nativetest/arm/arm_insn_tests_arm_static/arm_insn_tests_arm_static', needed by 'out/target/product/vsoc_x86/obj/PACKAGING/ndk_translation_tests_intermediates/arm_insn_tests_arm_static_result.xml', missing and no known rule to make it
15:55:38 ninja failed with: exit status 1
make: *** [run_soong_ui] Error 1
Return Code: 2

Change-Id: Idf95ef2e06526a0a31690420c923207db627605f
2019-03-11 16:48:29 +00:00
nelsonli
224e103308 Build System: Solve dependency problem for test
1. A test can add a runtime dependent test module by just setting
   LOCAL_REQUIRED_MODULES or LOCAL_TARGET_REQUIRED_MODULES. Then the dependent test
   module will be copied to testcase folder.
2. Do not install to $(TARGET_OUT_DATA) for testcase

BUG: 117224272

Test: 1. (a) vi cts/tests/tests/text/Android.mk
         (b) add LOCAL_REQUIRED_MODULES := CtsPrintTestCases
         (c) m -j CtsTextTestCases
         (d) Then, CtsPrintTestCases should also be built to testcase folder like below.
             ./target/product/generic_arm64/testcases/CtsPrintTestCases

Change-Id: I24ea3783486c54a05cfa9d3d0375b977afc230f8
2019-03-07 14:08:35 +08:00
Jeongik Cha
b806c44326 Clean up noisy error log in find-shareduid-violation.py
The script makes noisy error although fallback cmd succeed.

So make the script writes error log only if both of commands fail.

Bug: 124470143
Bug: 123664116
Test: m -j out/target/product/$(get_build_var TARGET_DEVICE)/shareduid_violation_modules.json
Test: And there is no error log in stderr
Change-Id: I3d4756066ee6904826c18754969fd4190bd02e1e
2019-02-16 10:50:56 +09:00
Jeongik Cha
ef26afdc27 Detect shareduid between different partitions
Find shareduid usage between the partitions(system, vendor, product).

Here is sample output

{
  "android.uid.system": {
    "product": [
      "Settings.apk"
    ],
    "system": [
      "framework-res.apk",
      "FusedLocation.apk",
      "Telecom.apk",
      "InputDevices.apk",
      "SettingsProvider.apk",
      "WallpaperBackup.apk",
      "KeyChain.apk"
    ]
  }
}

Bug: 123664116
Test: m -j out/target/product/$(get_build_var TARGET_DEVICE)/shareduid_violation_modules.txt
Change-Id: If2a75bf66b369cd3fad1744d08b6bfbfc624979c
2019-02-08 22:41:30 +09:00
Dan Willemsen
3b6f6fe8aa Stop using the files target for droidcore
This way if a BoardConfig.mk configures a specific image to exist (so it
doesn't end up as a folder on /system), but does not configure for it to
be created (like the device targets on AOSP that use a prebuilt), we
won't unnecessarily trigger the build system to build the contents.

Test: `m` before and after, comparing file lists
Test: check treehugger builds before/after
Change-Id: If0e4b958b3dfaa02771a5da70f970379635f904e
2019-01-14 21:46:31 -08:00
Dan Shi
6fe5bf0adb Copy shared libraries used by tests to testcases directory
This change collects the shared libraries files used by tests in
suite, and deploy the files to testcases/lib*. The shared libraries then
can be zipped in general-tests.zip and device-tests.zip. And the host
test can be run in TradeFed host based on build artifacts.

Bug: 111486845
Test: m -j general-tests; m -j device-tests
Confirm the test can run in testcases directory:
out/host/linux-x86/testcases$ ./net_test_avrcp/x86_64/net_test_avrcp
unzip general-tests.zip, confirm net_test_avrcp can run.

Change-Id: I4f9322118aa4891226ea318cbd1bcee6ca48b050
2018-11-04 19:51:59 -08:00
Julien Desprez
e483544cf5 Remove host proto lib from cts jars
The lib is already statically included in tradefed.jar.

Test: run cts-unit-tests
Bug: 118297021
Change-Id: I073b68216870b1e744ee35db82a7e03f11db6782
2018-10-23 09:38:09 -07:00
Colin Cross
d0dbeb3758 Always define sdk_addon as phony
dist-write-files will add dist targets to the sdk_addon target,
but the sdk_addon target is not declared as phony when building
with mm (ONE_SHOT_MAKEFILE set), causing:
build/make/core/main.mk:1495: error: writing to readonly directory: "sdk_addon"

Always define sdk_addon as phony even if ONE_SHOT_MAKEFILE is set.

Bug: 118144231
Test: mm
Change-Id: I99d14a98a7597ebd694c765f94b0d6f4486860dc
2018-10-22 10:42:44 -07:00
Dan Willemsen
dfb64ca033 Merge "Remove check_emu_boot, it's no longer necessary"
am: 6393560856

Change-Id: I89e3fc589dd2840fdea28b98f0de400d51a2a95a
2018-10-17 17:20:50 -07:00
Dan Willemsen
b1e3357962 Remove check_emu_boot, it's no longer necessary
Bug: 117859878
Test: treehugger
Change-Id: I4e9ade9b5b9dc7d494101bbd0b0eb2b245244337
2018-10-17 11:13:07 -07:00
Dan Willemsen
c466bc0203 Merge "Clean up DIST_DIR usages, move to dist-for-goals"
am: d3e8e5321f

Change-Id: Ib9defade594f2ccfe21aa2e6dc01e1641d12d9af
2018-10-17 10:38:52 -07:00
Dan Willemsen
7537fd050f Clean up DIST_DIR usages, move to dist-for-goals
soong_ui now guarantees DIST_DIR is set in the environment, so remove
the default.

Use dist-for-goals instead of writing directly into DIST_DIR.

When building the system image, use DIST_DIR from the environment
instead of from make. This will eventually stop working, but this will
work for now.

Bug: 117463001
Test: m dist  (check gpl_source.tgz, logs/product_copy_files_ignored.txt)
Test: m out/target/product/generic/product_copy_files_ignored.txt
Change-Id: Ice557e0a148602cb8eb154efb747d416f0d0db59
2018-10-16 23:37:51 -07:00
Colin Cross
4aa10a3cc5 Merge changes I9e73c0b8,Iac5c4327,Idf6fbc94
am: 7307de5e0c

Change-Id: Ifa95c4ec335d9bf913f851101f09c55840091dce
2018-10-01 19:15:18 -07:00
Colin Cross
8b6c94c744 Disable sdk_addon for mmm
mmm has a smaller view of the world and cannot generate sdk-addon
zip files.

Bug: 116818719
Test: m checkbuild
Change-Id: I9e73c0b84a42aaaa353704d6ab245b449166606d
2018-10-01 13:41:27 -07:00
Simran Basi
33724676b9 Merge "Create an artifact to output module-info and OWNERS files in source code"
am: 004b9b7b7d

Change-Id: I3536b4c6268659117237fd3b3001c8a208e841f9
2018-09-26 14:48:44 -07:00
Treehugger Robot
004b9b7b7d Merge "Create an artifact to output module-info and OWNERS files in source code" 2018-09-26 21:37:54 +00:00
Matt Wachowski
7318443ea1 Merge "Added rules to include verified boot config in zip"
am: 7e67802381

Change-Id: Ibbf4b6bc2f37621ab255123e417b8ea04dd61694
2018-09-26 10:28:21 -07:00
Matt Wachowski
7e67802381 Merge "Added rules to include verified boot config in zip" 2018-09-26 17:15:11 +00:00
Simran Basi
03f5253020 Create an artifact to output module-info and OWNERS files in source code
Bug: 114242886
Test: make dist -j owners
      make dist -j module-info

Change-Id: I6d00928c25e3213a5563e64806e0c04530161581
2018-09-24 16:31:29 -07:00
Nan Zhang
d332efd698 Merge commit 'ee16bfa6ca876affd27c07e28fdfb7c67dcd16fb' into stage-aosp-master
Test: m -j api-stubs-docs-jdiff
Change-Id: I927aadd930572365e823f4ae9636773a9820c9c8
2018-09-18 20:41:21 -07:00
Nan Zhang
e06305123b Delete apidiff.mk
Also remove the msg.mk files used for old apicheck.

And export jdiff-doc.zip generated by Soong.

Test: api-stubs-docs-diff
Bug: b/78245848
Change-Id: I329aa375623a7b7a121d58314dab694a326c9f0f
2018-09-17 15:33:13 -07:00
Matt Wachowski
9e4d5153b7 Added rules to include verified boot config in zip
Bug: b/78113934
Test: Local

Change-Id: I011a84e3804c6f2d217c723b9e05fd0f9a814e04
2018-09-14 09:53:14 -07:00
Brandon Lee
e17d8163c1 Merge "aidegen: add extra info to collect in module-info."
am: 076b905763

Change-Id: I3c32064f08f07d1e1dde130d5d248adf6519395c
2018-09-13 16:48:03 -07:00
Brandon Lee
5568c19ae1 aidegen: add extra info to collect in module-info.
- add "dependencies" and "srcs" to collect in module-info.mk.
- add "Srcs" in core/base_rules.mk

Bug: 112523202

Test: make out/target/product/generic_x86_64/module-info.json and
      generate out/target/product/generic_x86_64/module-info.json

Change-Id: I0669377b2e5e6b4ee225f1930bda208eff092dea
2018-09-12 17:39:32 +08:00
Dan Willemsen
127e2da2d3 Merge "Mark more sdk targets as PHONY"
am: 88207d0d65

Change-Id: Ia1b5757f64583f4763a939c80951cf792a5d5071
2018-09-10 18:57:49 -07:00
Dan Willemsen
921f581bef Mark more sdk targets as PHONY
These are used in various dist-for-goal targets even if we're not
currently building the sdks, so they always need to be marked with
.PHONY.

Test: m dist
Change-Id: I1e11ae37c6d0fd6ef8a3e293cf7409773c1bf3ab
2018-09-10 15:14:09 -07:00
yangbill
92ea6769da Merge "ATest: Change module_name from list to single string."
am: adee0d54d0

Change-Id: I5d51e26ae7231ce3b6109da214304a0336dd347c
2018-09-07 00:15:22 -07:00
Treehugger Robot
adee0d54d0 Merge "ATest: Change module_name from list to single string." 2018-09-07 07:07:13 +00:00
yangbill
f90b734c0c ATest: Change module_name from list to single string.
ATest's original module_name is designed as a single string.
The different type maybe cause some problem when loading module_name
data. Due to it expected it as a list but actually it will be a single
string after mod-info obj handling this data.

Bug: 113317515
Test: atest aapt2_tests
      atest hello_world_test
      atest BluetoothInstrumentationTests
      atest packages/apps/Bluetooth/tests/unit/Android.mk
      atest RunBluetoothRoboTests
      atest com.android.bluetooth
      atest libcore/luni/src/test/java/libcore/javax/net/ssl/SSLSocketTest.java
        Multiple tests found:
	  0: libjavacore-unit-tests
          1: jsr166-tests
          2: core-ojtests-public
	  ...
      atest SSLSocketTest # Brings up 2 prompts, one for which file then one for which module
      make -j bit
      bit Settings
      bit hello_world_test
      bit BluetoothInstrumentationTests
      bit RunBluetoothRoboTests (Could not find module, but the same situation
          before applying this patch)


Change-Id: I46a14c675eabd7cebd82562954380a9a769e80b5
2018-08-30 05:06:32 +00:00
Sasha Smundak
e6c2066b13 Merge "Do not call sort when setting ALL_DEPS.MODULES."
am: acdaa8fbac

Change-Id: Ief13c8c4ce110be86d6b0f47238fa5a23903ecd8
2018-08-29 11:38:59 -07:00
Treehugger Robot
acdaa8fbac Merge "Do not call sort when setting ALL_DEPS.MODULES." 2018-08-29 18:28:41 +00:00
yangbill
494c9442b6 Merge "Atest: add LOCAL_TEST_CONFIG to module_info.json"
am: be4ad83ef3

Change-Id: I83aadbe82ceebda3b52cb8d7e01003a96f722cec
2018-08-23 20:06:09 -07:00
yangbill
c9347b3167 Atest: add LOCAL_TEST_CONFIG to module_info.json
Bug: 112335032

Test: 1. Add LOCAL_TEST_CONFIG := ahat-tests.xml in
         art/tools/ahat/Android.mk for ahat-tests
      2. add ahat-tests.xml in local
      3. atest -m hello_world_test
      4. check module_info.json
         local_full_test_config": ["art/tools/ahat/ahat-tests.xml"]

Change-Id: Ice2a0c85979fa6b872c92aea5ff4a340342408ad
2018-08-24 09:29:11 +08:00
Colin Cross
e50ba8fc87 Merge "Fix reference to cleared global variable"
am: 5d1688bf27

Change-Id: Id1b4a96c99adb7be2ac27c867fe30d924a3663f6
2018-08-20 20:35:40 -07:00
Colin Cross
cceb7ab6d7 Fix reference to cleared global variable
Use PRIVATE_general_tests_list_zip inside the rule.  Also remove the
output files to make it more likely that an incremental build fails
the same was as a clean build.

Bug: 112865316
Test: rm $OUT/general-tests* && m general-tests
Change-Id: Idbca35f9ca71f65ef45ef026df41bd933fb9d37d
2018-08-20 19:26:33 -07:00
Colin Cross
09935c266b Merge changes from topic "test_suite_harness_bp"
am: c9f31dff01

Change-Id: I132397729b490d71e9466a18a505d49bf04c81be
2018-08-20 10:36:07 -07:00
Colin Cross
8a670d6c61 Move general-tests intermediates out of $(PRODUCT_OUT)
am: 38f16dcf4e

Change-Id: I5e4048d82a044ae587413f5c535a2893cb76fa25
2018-08-20 10:35:16 -07:00
Colin Cross
964748505d Rename general-tests-* variables to general_tests_*
am: 50d1c22efb

Change-Id: Ic4698cee14ef532a7dde7235ad662f6e4b6809ab
2018-08-20 10:34:23 -07:00
Colin Cross
b0d376f66b Add tools jars to general-tests.zip
Some non-tests were marked with
LOCAL_COMPATIBILITY_SUITE := general-tests
in order to get them into general-tests.zip. Soong is attempting to
only allow the test_suites property on tests.  Specify the tools
needed in the test suite in general-tests.mk instead, the same
way cts.mk does.

Bug: 112654980
Test: m checkbuild
Test: tradefed/general_tests_zip
Change-Id: Ied7a6b2f956b84659c3edcf4dd866a8cd936bedf
2018-08-17 22:59:12 -07:00
Colin Cross
38f16dcf4e Move general-tests intermediates out of $(PRODUCT_OUT)
Move intermediate files used to generate general-tests.zip out of
$(PRODUCT_OUT) to better isolate the rule.

Test: m checkbuild
Change-Id: I5f3d204cc4e36b6c6670aabe0e63bce8597afd4b
2018-08-17 22:56:24 -07:00
Colin Cross
50d1c22efb Rename general-tests-* variables to general_tests_*
Make supports dashes in variable names, but underscores are more
common.  Also use a private variable for general_tests_list_zip,
and clear local variables at the end of the file.

Test: m checkbuild
Change-Id: I8fd968d9e674dbc630bdb71ddd375448b6ada5ed
2018-08-17 22:54:45 -07:00
Sasha Smundak
1c31492ce0 Do not call sort when setting ALL_DEPS.MODULES.
This particular invocation of 'sort' is expensive (it may amount to 30%
of the total ckati execution time for the clean build).

Test: verify that the result of running 'm nothing' is unchanged,
verify that the result of running 'm -j deps-license
PROJ_PATH=packages/app/% DEP_PATH=external/%' is unchanged.

Change-Id: If1cfddd4dee24559a26ecceebdf03cf49cc5a367
2018-08-17 12:41:24 -07:00
Morris Lin
861ac1b65e Merge "module-info.mk: Output actual module_name."
am: 76f68c6b0e

Change-Id: I36ce757373ddd93bfa092d3957aca93fe1fe7cd8
2018-08-13 19:58:59 -07:00
Treehugger Robot
76f68c6b0e Merge "module-info.mk: Output actual module_name." 2018-08-14 02:48:26 +00:00
Morris Lin
a77d5a2dd6 module-info.mk: Output actual module_name.
Add actual module_name information to module-info.json, and atest can
get the actual module name instead of module_name with suffix.

Bug: 77288544

Test: make -j8
      m out/target/product/generic_x86_64/module-info.json

Change-Id: I1e2dfced10db7ef5d31d26dfeb6a6c50a073a519
2018-08-07 22:17:43 +08:00
Xin Li
195c9c9d42 Don't build STS when it does not exist.
am: ea0366589a

Change-Id: Ie0db06f7f010a96887591b599304861e3cd6273e
2018-07-30 18:14:10 -07:00
Xin Li
ea0366589a Don't build STS when it does not exist.
Change-Id: I7d5f6e11c7369fa473108605183581ad00e83887
2018-07-30 16:42:46 -07:00
Jae Shin
6fe8c185a2 Merge "Remove workaround for libclang_rt.ubsan* vndk libs" am: 6e5b55bf7f
am: 3bd5e7204d

Change-Id: Ic98e8fa22dd4721b27f3586175b4a637510ee230
2018-07-29 21:34:28 -07:00
Jae Shin
3bd5e7204d Merge "Remove workaround for libclang_rt.ubsan* vndk libs"
am: 6e5b55bf7f

Change-Id: I00c11e37267ca6d23a513849b4b5a7fb91c66b13
2018-07-29 21:30:18 -07:00