Commit graph

341 commits

Author SHA1 Message Date
Anton Hansson
8db2605038 CleanSpec for new system_other layout
Bug: 141707536
Test: m
Change-Id: I120362a230eb08863311a9c0d8aeb2f0ab6c81c7
2019-10-03 14:19:58 +01:00
Mitch Phillips
9b32a4ec5f Merge "Add backend for LOCAL_FUZZ_DATA for cc_fuzz corpus/dict." am: 30e613a48d am: c9a79eb8e8 am: 7e7e685e22
am: 2a7996ac0b

Change-Id: I2c0f43521040589e2eaeb293fc2e28282fdea768
2019-09-19 07:29:54 -07:00
Mitch Phillips
c9a79eb8e8 Merge "Add backend for LOCAL_FUZZ_DATA for cc_fuzz corpus/dict."
am: 30e613a48d

Change-Id: I3606b86577ba2c498cae44f51c1e89076c5fc8d0
2019-09-19 07:08:42 -07:00
Mitch Phillips
fd6d9022fe Add backend for LOCAL_FUZZ_DATA for cc_fuzz corpus/dict.
Adds the backend makefile parser for the LOCAL_FUZZ_DATA vars generated
by the cc_fuzz target.

Bug: 141026328
Test: m example_fuzzer, fuzz target should have adjacent corpus/dict
files.

Change-Id: Ide2c34318f11be132992650ce5cc1fd27895915c
2019-09-18 18:58:28 -07:00
Xin Li
abf6afdce6 Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master
Bug: 135460123
Change-Id: Ib7d2f7c5a8aef5c6c3e8f74c6c32d5092f32a166
Merged-In: I6f788cb4c7328e4f2315e4f028e2dd53badeb6cd
2019-09-08 13:11:47 -07:00
Bowgo Tsai
00f0d9464a Merge "Reland: Moving GSI-specific files to system_ext" am: 2fc007eba5 am: ab38d47d5a am: 5493629216 am: a93e381076
am: 7599e0abbf

Change-Id: I84c36107c4729641128274ba0d3974decde03ecd
2019-09-05 06:29:29 -07:00
Bowgo Tsai
a93e381076 Merge "Reland: Moving GSI-specific files to system_ext" am: 2fc007eba5 am: ab38d47d5a
am: 5493629216

Change-Id: I30d1808006ad64fe636a45d3b1c93ed4c2bcafc6
2019-09-05 06:14:32 -07:00
Bowgo Tsai
ab38d47d5a Merge "Reland: Moving GSI-specific files to system_ext"
am: 2fc007eba5

Change-Id: I2fae8961887e6fa0e9a8d3815e953a6f687fb2a8
2019-09-05 06:00:50 -07:00
Bowgo Tsai
ac3c65b7bb Reland: Moving GSI-specific files to system_ext
Only common files can reside in system partition, other files
should be moved to the newly added system_ext partition.

Note that for GSI, it will be a single system.img that includes the
contents of product and system_ext partitions, under /system/product
and /system/system_ext, respectively. After moving skip_mount.cfg to
system_ext partition, it also needs a symlink file under system
partition:

  /system/etc/init/config -> /system/system_ext/etc/init/config

This allows Q-launched first-stage init (in /boot partition) continue
to use the same path when new GSI image is used.

Bug: 138281441
Test: build aosp_arm64-userdebug and boot it on crosshatch
Test: rm -rf out && build/soong/soong_ui.bash --make-mode \
      TARGET_PRODUCT=aosp_arm64 TARGET_BUILD_VARIANT=userdebug droid
Change-Id: Iae9f5fb688f49497563864eb882d5f0ae33c744a
2019-09-05 17:11:07 +08:00
Ian Kasprzak
8809335740 Merge "Revert "Moving GSI-specific files to system_ext"" am: 414108c6c1 am: b5195f128d am: c1b6e703a9 am: 303eaac2c0
am: 40448f262e

Change-Id: I75810255c2523e38fb35506b222b425198018139
2019-09-04 19:02:43 -07:00
Ian Kasprzak
303eaac2c0 Merge "Revert "Moving GSI-specific files to system_ext"" am: 414108c6c1 am: b5195f128d
am: c1b6e703a9

Change-Id: I26d6c5d665d1a5d2df516d720d466b7f7d6ed240
2019-09-04 18:48:09 -07:00
Ian Kasprzak
b5195f128d Merge "Revert "Moving GSI-specific files to system_ext""
am: 414108c6c1

Change-Id: I289dddfc62ee165c9857eace3d703983da32b695
2019-09-04 18:34:31 -07:00
Ian Kasprzak
cba65a9c92 Revert "Moving GSI-specific files to system_ext"
This reverts commit 8ef0ffe7e8.

Reason for revert: b/140499897 - Breaking multiple builds across branches.
Test: Forrest - go/forrest_run/L78500000361846284

Change-Id: I618e0d051fdcd7a7afcc09408e20c53f38566e94
2019-09-05 01:03:17 +00:00
Bowgo Tsai
9ecb6b704c Merge "Moving GSI-specific files to system_ext" am: a6c80c1117 am: 478bda0122 am: 3c3db483a1 am: 832f700223
am: 85a542a3f3

Change-Id: Ie5fbd5d2483af9a1e11b578256e7365ec6db5546
2019-09-04 08:54:42 -07:00
Bowgo Tsai
832f700223 Merge "Moving GSI-specific files to system_ext" am: a6c80c1117 am: 478bda0122
am: 3c3db483a1

Change-Id: I5d62bfb03a26881b2dd9e8d70987fd95a4cb5380
2019-09-04 08:40:44 -07:00
Bowgo Tsai
478bda0122 Merge "Moving GSI-specific files to system_ext"
am: a6c80c1117

Change-Id: Ibba7d959d3e8a3e2b97c9138d067f9b6d0593d60
2019-09-04 08:22:42 -07:00
Bowgo Tsai
8ef0ffe7e8 Moving GSI-specific files to system_ext
Only common files can reside in system partition, other files
should be moved to the newly added system_ext partition.

Note that for GSI, it will be a single system.img that includes the
contents of product and system_ext partitions, under /system/product
and /system/system_ext, respectively. After moving skip_mount.cfg to
system_ext partition, it also needs a symlink file under system
partition:

  /system/etc/init/config -> /system/system_ext/etc/init/config

This allows Q-launched first-stage init (in /boot partition) continue
to use the same path when new GSI image is used.

Bug: 138281441
Test: build aosp_arm64-userdebug and boot it on crosshatch
Change-Id: Ida7c2d1b0152c7ef77fa9aeb5d0766d17aec59c5
2019-09-04 14:54:53 +08:00
Justin Yun
751f697381 Merge "Revert "Add product and system_ext partition for emulator"" am: 0c55b6d2cb am: 66a0d43db2 am: b3162c117e am: ac3686da61
am: 6bd7903b8a

Change-Id: I26e652ea3621078990647854440514e56df277de
2019-08-07 17:44:58 -07:00
Justin Yun
ac3686da61 Merge "Revert "Add product and system_ext partition for emulator"" am: 0c55b6d2cb am: 66a0d43db2
am: b3162c117e

Change-Id: Iaa4eca2de01460aea205c45b91c2c3bbb4ebc55a
2019-08-07 17:24:42 -07:00
Justin Yun
66a0d43db2 Merge "Revert "Add product and system_ext partition for emulator""
am: 0c55b6d2cb

Change-Id: I112c27402c00276f2442daeb233ceee73814fe0e
2019-08-07 16:58:49 -07:00
Justin Yun
b5570cf17b Revert "Add product and system_ext partition for emulator"
This reverts commit ef7e3f2623.

The configuration affects GSI to have separate partitions for product
and system_ext which was not intended.

Bug: 138742524
Bug: 138382074
Test: emulator; check boot
Change-Id: Ie621d6b49f22ee2775adf1c1497e812f840f8ba7
2019-08-07 23:44:41 +00:00
Dan Willemsen
541f86efc4 Merge "Remove import_includes/export_includes" am: 6240872250 am: 0c5a068d02 am: baa4704f97 am: 823ab5d846
am: dce8646ed9

Change-Id: I8da292fe990c717cc78ce267048ef1fec059a9b6
2019-08-05 11:21:12 -07:00
Dan Willemsen
823ab5d846 Merge "Remove import_includes/export_includes" am: 6240872250 am: 0c5a068d02
am: baa4704f97

Change-Id: Iac1feccdf16968ed465c5c4bad748244832dcc19
2019-08-05 11:01:08 -07:00
Dan Willemsen
0c5a068d02 Merge "Remove import_includes/export_includes"
am: 6240872250

Change-Id: Idf487156730321d4172a057697ac3585497de13f
2019-08-05 10:44:05 -07:00
Dan Willemsen
b4cc811e98 Merge changes from topic "rm_ONE_SHOT_MAKEFILE" am: 8b8b9b6bf8 am: 58be946140 am: bc838a4887 am: 9e18f1a939
am: bd385d8106

Change-Id: I6ca7d53ddf84969b37c341905e253bd5bf131ac9
2019-08-01 15:31:09 -07:00
Dan Willemsen
18ffd5891e Remove import_includes/export_includes
Now that ONE_SHOT_MAKEFILE no longer exists, we don't have to rely on
the filesystem to store this informtion.

This removes ~16.7k files from our build graph
(aosp-master/aosp_arm64-eng), though only about 600 of them were being
used in a normal build.

Test: treehugger
Change-Id: I3ac12f5ea7f11d25064109a0599bc5be1976fba5
2019-08-01 14:56:45 -07:00
Dan Willemsen
9e18f1a939 Merge changes from topic "rm_ONE_SHOT_MAKEFILE" am: 8b8b9b6bf8 am: 58be946140
am: bc838a4887

Change-Id: Ib88f71fe579d6e5372c44b45974e50097ddb4309
2019-08-01 14:52:48 -07:00
Dan Willemsen
58be946140 Merge changes from topic "rm_ONE_SHOT_MAKEFILE"
am: 8b8b9b6bf8

Change-Id: I5764b2ce848710584d2d837e9e33fb9fb71c8d33
2019-08-01 14:31:32 -07:00
Dan Willemsen
0df0f6bbf1 Remove [jni_]link_type files
Now that mm/ONE_SHOT_MAKEFILE have been removed, we can expect to know
about all of our dependencies at the end of the build.

This removes 19k nodes from our build graph (aosp-master
aosp_arm64-eng), though in a default build, only 3k of those are used.

Test: ALLOW_MISSING_DEPENDENCIES=true, then trigger a missing dependency
Test: treehugger
Test: create link_type files, then apply CleanSpec.mk, ensure they're removed
Change-Id: I9506331e4a9911d2f26e59a2f72a97aef1644073
2019-07-31 18:09:22 -07:00
Justin Yun
ef7e3f2623 Add product and system_ext partition for emulator
Build product and system_ext image and add them to super partition.

Bug: 138382074
Test: boot emulator and check system_ext partition mounted
Change-Id: Ifa67bd6ad475ac5912e8f919c7a771c9958bd5c2
Merged-In: Ifa67bd6ad475ac5912e8f919c7a771c9958bd5c2
2019-07-31 10:45:55 +00:00
Justin Yun
eac89fa9cb resolve merge conflicts of 0a81687a25 to qt-r1-dev-plus-aosp
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Iee31e0df5e5d2b94c9ba7d6815fbbb41497c33c6
2019-07-31 13:34:35 +09:00
Justin Yun
ff3d62d31d Add product and system_ext partition for emulator
Build product and system_ext image and add them to super partition.

Bug: 138382074
Test: boot emulator and check system_ext partition mounted
Change-Id: Ifa67bd6ad475ac5912e8f919c7a771c9958bd5c2
Merged-In: Ifa67bd6ad475ac5912e8f919c7a771c9958bd5c2
(cherry picked from commit 28843c3e32)
2019-07-31 00:13:19 +00:00
Eino-Ville Talvala
a133a497c2 Remove libcameraservice and libcamera_client from base_system
Libcameraservice is only used by cameraserver, and is explicitly listed
as a dependency.  Libcamera_client is used by multiple places, but each
of them lists it as a depedency as well, so it's not needed here.

Removing the unused 64-bit version of libcameraservice will save ~2 MB
on the system partition.

Bug: 138403869
Test: atest CtsCameraTestCases
Merged-In: I196f869350900e7cc1521bc397c6ecff28decb6f
Change-Id: I196f869350900e7cc1521bc397c6ecff28decb6f
2019-07-30 11:28:23 -07:00
Justin Yun
28843c3e32 Add product and system_ext partition for emulator
Build product and system_ext image and add them to super partition.

Bug: 138382074
Test: boot emulator and check system_ext partition mounted
Change-Id: Ifa67bd6ad475ac5912e8f919c7a771c9958bd5c2
2019-07-30 08:45:55 +09:00
Eino-Ville Talvala
aa54e5b41e Remove libcameraservice and libcamera_client from base_system
Libcameraservice is only used by cameraserver, and is explicitly listed
as a dependency.  Libcamera_client is used by multiple places, but each
of them lists it as a depedency as well, so it's not needed here.

Removing the unused 64-bit version of libcameraservice will save ~2 MB
on the system partition.

Bug: 138403869
Test: atest CtsCameraTestCases
Change-Id: I196f869350900e7cc1521bc397c6ecff28decb6f
2019-07-26 12:54:06 -07:00
Anton Hansson
e08363da37 Re-submit "Make mainline device use apex"
The build system default was changed to not support apex, but
we want the mainline device to enable it.

Test: make mainline_system
Change-Id: I9f29e8354acffb1856dfd8a173b80a3f9324630c
2019-06-18 12:19:37 +01:00
Bowgo Tsai
63b4c9eb76 Moving /odm/build.prop to /odm/etc/buid.prop
am: 33ff602070

Change-Id: I9b26413a5fbfe43e900d79010075a4c234d4b310
2019-05-22 21:07:11 -07:00
Bowgo Tsai
33ff602070 Moving /odm/build.prop to /odm/etc/buid.prop
In device root directory, we have the following symlinks:
  - /odm/app -> /vendor/odm/app
  - /odm/bin -> /vendor/odm/bin
  - /odm/etc -> /vendor/odm/etc
  ...

This allows the Generic System Image (GSI) to be used on both devices:
  1) Has a physical odm partition, where those symlink will be hidden
     when /odm is used as the mount point
  2) Has no physical odm partition and fallback to /vendor/odm/.

We can't just have the symlink /odm -> /vendor/odm, because the former
devices won't have /vendor/odm directory, which leads to mount failure
when the mount point /odm is resolved to /vendor/odm.

The existing /vendor/odm/build.prop won't be loaded in the latter
devices, because there is no symlink:
    - /odm/build.prop -> /vendor/odm/build.prop.

Note that init blocks reading through direct symlinks (O_NOFOLLOW) so
the above symlink won't work either. This CL moves the odm build.prop
to /odm/etc/build.prop for init to load it (symlinks in earlier
components of the path will still be followed by O_NOFOLLOW).

Bug: 132128501
Test: boot a device and checks /odm/etc/build.prop is loaded
Test: make dist with an odm.img, checks $OUT/odm/etc/build.prop is loaded
Change-Id: I6f88763db755c9ec6068bfdd9cee81c19d72e9d7
Merged-In: I6f88763db755c9ec6068bfdd9cee81c19d72e9d7
(cherry picked from commit 6c62884000)
2019-05-22 16:14:53 +08:00
Bowgo Tsai
71a4d5cdd5 Moving /odm/build.prop to /odm/etc/buid.prop
In device root directory, we have the following symlinks:
  - /odm/app -> /vendor/odm/app
  - /odm/bin -> /vendor/odm/bin
  - /odm/etc -> /vendor/odm/etc
  ...

This allows the Generic System Image (GSI) to be used on both devices:
  1) Has a physical odm partition, where those symlink will be hidden
     when /odm is used as the mount point
  2) Has no physical odm partition and fallback to /vendor/odm/.

We can't just have the symlink /odm -> /vendor/odm, because the former
devices won't have /vendor/odm directory, which leads to mount failure
when the mount point /odm is resolved to /vendor/odm.

The existing /vendor/odm/build.prop won't be loaded in the latter
devices, because there is no symlink:
    - /odm/build.prop -> /vendor/odm/build.prop.

Note that init blocks reading through direct symlinks (O_NOFOLLOW) so
the above symlink won't work either. This CL moves the odm build.prop
to /odm/etc/build.prop for init to load it (symlinks in earlier
components of the path will still be followed by O_NOFOLLOW).

Bug: 132128501
Test: boot a device and checks /odm/etc/build.prop is loaded
Test: make dist with an odm.img, checks $OUT/odm/etc/build.prop is loaded
Change-Id: I6f88763db755c9ec6068bfdd9cee81c19d72e9d7
Merged-In: I6f88763db755c9ec6068bfdd9cee81c19d72e9d7
(cherry picked from commit 6c62884000)
2019-05-22 14:04:39 +08:00
Bowgo Tsai
6c62884000 Moving /odm/build.prop to /odm/etc/buid.prop
In device root directory, we have the following symlinks:
  - /odm/app -> /vendor/odm/app
  - /odm/bin -> /vendor/odm/bin
  - /odm/etc -> /vendor/odm/etc
  ...

This allows the Generic System Image (GSI) to be used on both devices:
  1) Has a physical odm partition, where those symlink will be hidden
     when /odm is used as the mount point
  2) Has no physical odm partition and fallback to /vendor/odm/.

We can't just have the symlink /odm -> /vendor/odm, because the former
devices won't have /vendor/odm directory, which leads to mount failure
when the mount point /odm is resolved to /vendor/odm.

The existing /vendor/odm/build.prop won't be loaded in the latter
devices, because there is no symlink:
    - /odm/build.prop -> /vendor/odm/build.prop.

Note that init blocks reading through direct symlinks (O_NOFOLLOW) so
the above symlink won't work either. This CL moves the odm build.prop
to /odm/etc/build.prop for init to load it (symlinks in earlier
components of the path will still be followed by O_NOFOLLOW).

Bug: 132128501
Test: boot a device and checks /odm/etc/build.prop is loaded
Test: make dist with an odm.img, checks $OUT/odm/etc/build.prop is loaded
Change-Id: I6f88763db755c9ec6068bfdd9cee81c19d72e9d7
2019-05-21 21:38:12 +08:00
Chong Zhang
562df6ec9c resolve merge conflicts of 7980587608 to qt-r1-dev-plus-aosp
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I2acc079286697d8a303d15283fcde9af4c6cd69b
2019-05-15 20:51:02 -07:00
Chong Zhang
6dd3336925 resolve merge conflicts of 07d4342fa5 to qt-dev-plus-aosp
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Iba2e59906c6d9dd3dba2cf3ebe88206ae9d7bca9
2019-05-15 15:44:39 -07:00
Chong Zhang
07d4342fa5 Remove soft omx libs from package -- DO NOT MERGE
These are installed by media.codec as required modules,
and they're usually on vendor partition now. We don't
want to install the system targets here.

bug: 132466615

Change-Id: I8375563648bc2a5016dac4760b853cb32dde5429
2019-05-15 20:02:23 +00:00
Martin Stjernholm
b7fd03fd32 Merge "Remove libc_malloc_{debug,hooks} from the system image." am: eba4d2312a
am: 5b657c75ac

Change-Id: I61d80c674ea5066e104bace51a329b951b159f0c
2019-05-09 13:18:49 -07:00
Martin Stjernholm
5055dae50c Remove libc_malloc_{debug,hooks} from the system image.
They are part of Bionic and should now be in the Runtime APEX.

Test: Flash and boot
Bug: 122566199
Bug: 118374951
Change-Id: Ib1a2999b56d743242ef7aafa7aed57f8c6a7b0e5
2019-05-07 17:33:36 +01:00
Tao Bao
721a294a1c Merge "Update the references to verity tools." am: 31c2bf905e
am: ee153db46a

Change-Id: I9f6b38c0538b8b0e9146c622dfb807f170398c8d
2019-05-03 06:59:30 -07:00
Tao Bao
d5ab10eed4 Update the references to verity tools.
Test: `m -j dist` with aosp_marlin-userdebug
Test: `atest releasetools_test`
Test: Run signing with otatools.
Test: TreeHugger
Change-Id: I60d5bad4435d588c5f97b2245ca67ed3d55299b7
2019-05-02 18:32:11 -07:00
Pete Bentley
5a78b371ed Remove libjavacrypto from system image.
The only copy needed is the one in the Conscrypt APEX.

Bug: 123925742
Test: m
Change-Id: Ieea8549d047750cf3580d6fe0204fdf55b6b8394
Merged-In: Ieea8549d047750cf3580d6fe0204fdf55b6b8394
2019-04-30 20:36:18 +01:00
Pete Bentley
c3b9f66cd1 Merge "Remove libjavacrypto from system image." am: 4ec15d2c50
am: 229ba6c8ee

Change-Id: Ic879fa9a3b3137182ab77150fee563303148f3d4
2019-04-26 11:14:36 -07:00
Pete Bentley
f9dd05f1bf Remove libjavacrypto from system image.
The only copy needed is the one in the Conscrypt APEX.

Bug: 123925742
Test: m
Change-Id: Ieea8549d047750cf3580d6fe0204fdf55b6b8394
2019-04-26 10:28:16 +01:00
Bowgo Tsai
2835149987 Revert "Adding adb_debug.prop"
This reverts commit a280a66b5a.

/init now switched to read adb_debug.prop from debug ramdisk instead
of GSI or other system.img. No need to keep the file in GSI.

See the following for more details:
  https://android-review.googlesource.com/c/platform/system/core/+/946517

Bug: 126493225
Test: tree hugger
Change-Id: I981db8e13216fbe0f066f4d3684ee149b1177d22
Merged-In: I981db8e13216fbe0f066f4d3684ee149b1177d22
(cherry picked from commit 8966070431)
2019-04-23 16:24:29 +08:00
Bowgo Tsai
bf23e32478 Merge "Revert "Adding adb_debug.prop"" am: db57997c72
am: 3a4df557b0

Change-Id: I30d442f7e519684dfdb9824c02af5556d9218320
2019-04-23 00:52:26 -07:00
Colin Cross
5180722c5e Use framework.aidl built by Soong
Bug: 130798034
Test: m checkbuild
Change-Id: I24621b41860ce1fd1c3ba067430c8d62b49d03cb
Merged-In: I24621b41860ce1fd1c3ba067430c8d62b49d03cb
(cherry picked from commit 50bf3127d9)
2019-04-22 09:58:07 -07:00
Bowgo Tsai
8966070431 Revert "Adding adb_debug.prop"
This reverts commit a280a66b5a.

/init now switched to read adb_debug.prop from debug ramdisk instead
of GSI or other system.img. No need to keep the file in GSI.

See the following for more details:
  https://android-review.googlesource.com/c/platform/system/core/+/946517

Bug: 126493225
Test: tree hugger
Change-Id: I981db8e13216fbe0f066f4d3684ee149b1177d22
2019-04-22 18:39:44 +08:00
Colin Cross
963a88aa80 Merge "Use framework.aidl built by Soong" am: ab2b34b8fd
am: 009981c5e4

Change-Id: I1913f5acb7d49c6d3b723b7510784b59d8f2ea5b
2019-04-21 10:38:42 -07:00
Colin Cross
50bf3127d9 Use framework.aidl built by Soong
Bug: 130798034
Test: m checkbuild
Change-Id: I24621b41860ce1fd1c3ba067430c8d62b49d03cb
2019-04-18 12:06:27 -07:00
Victor Chang
c3538a4ac0 Remove libicu*.so from /system
Bug: 120659668
Test: CtsJniTestCases
Merged-In: I1c2ab41aa0b19f71025e2dd09be9b9bd306e8616
Change-Id: I1c2ab41aa0b19f71025e2dd09be9b9bd306e8616
(cherry picked from commit c164b8ef13)
2019-04-15 12:36:50 +01:00
vichang
9def1f23e9 Merge "Remove libicu*.so from /system" am: b23062899c
am: 5a7ce27b9f

Change-Id: Ifdaa72481889fe37e751e355b906e99eef2029c0
2019-04-13 02:46:46 -07:00
Victor Chang
c164b8ef13 Remove libicu*.so from /system
Bug: 120659668
Test: CtsJniTestCases
Change-Id: I1c2ab41aa0b19f71025e2dd09be9b9bd306e8616
2019-04-12 20:01:43 +01:00
Yifan Hong
0d8e89b5f8 Reland "Only assert-max-image-size for static partitions."
assert-max-image-size doesn't make sense for
dynamic partitions, as build_image.py always find the
right size for the output image. Hence:

- build_image.py no longer need to write generated_*_info.txt
  (which contains the size of the image).
- assert-max-image-size on the static BOARD_*IMAGE_PARTITION_SIZE. If
  a partition is dynamic, that variable isn't set, and
  assert-max-image-size becomes a no-op. If the partition is static,
  assert-max-image-size checks the static partition size as it used
  to be.
- Fix read-size-of-partitions to use the size of the partition by
  reading the image directly (instead of using generated_*_info.txt).

For devices without AVB, with DAP enabled, and does not have
RESERVED_SIZE for partitions, because of right sizing, the original
code always warns about approaching size limits. Since such checks
doesn't make sense for dynamic partitions, remove them.

Test: builds on device with dynamic partitions
Test: builds on cuttlefish with DAP enabled (without AVB), no
      more size limit warnings:
WARNING: out/target/product/vsoc_x86/vendor.img approaching size limit (X now; limit X)

This reverts commit 6e099095d1.

Reason for revert: reland the CL

Bug: 122377935
Test: build blueline_mainline

Change-Id: Iee594b64e687decff186c0fa60f82b88608febe9
Merged-In: Iee594b64e687decff186c0fa60f82b88608febe9
2019-04-11 10:12:27 -07:00
Yifan Hong
f15b77cfe7 Merge "Reland "Only assert-max-image-size for static partitions."" am: d72873dc41
am: d70f1c637a

Change-Id: I204a6cdeee52ebd8643a223f8bb6f312037d159a
2019-04-10 13:48:34 -07:00
Yifan Hong
8c3dce0c56 Reland "Only assert-max-image-size for static partitions."
This reverts commit 6e099095d1.

Reason for revert: reland the CL

Bug: 122377935
Test: build blueline_mainline

Change-Id: Iee594b64e687decff186c0fa60f82b88608febe9
2019-04-09 10:56:34 -07:00
Florian Mayer
a1bfa46cfa Merge "Revert "Only assert-max-image-size for static partitions."" am: 1d26ca95c3
am: 3db0c17630

Change-Id: I5fb9b3f57d7e86fc5644dd059986082ecb382612
2019-04-09 07:20:48 -07:00
Florian Mayer
6e099095d1 Revert "Only assert-max-image-size for static partitions."
This reverts commit 67e4336912.

Reason for revert: Broke master

Change-Id: I8a5054a42f145881437e2cb5b372f276bfdaa3d2
2019-04-09 09:54:59 +00:00
Yifan Hong
201daffa9a Merge changes from topic "dap_size_check" am: 3c4889fc79
am: 27128f4b10

Change-Id: I3bdebdef8a8bcef7c841967ff9562342ed33a60c
2019-04-08 22:19:03 -07:00
Yifan Hong
67e4336912 Only assert-max-image-size for static partitions.
assert-max-image-size doesn't make sense for
dynamic partitions, as build_image.py always find the
right size for the output image. Hence:

- build_image.py no longer need to write generated_*_info.txt
  (which contains the size of the image).
- assert-max-image-size on the static BOARD_*IMAGE_PARTITION_SIZE. If
  a partition is dynamic, that variable isn't set, and
  assert-max-image-size becomes a no-op. If the partition is static,
  assert-max-image-size checks the static partition size as it used
  to be.
- Fix read-size-of-partitions to use the size of the partition by
  reading the image directly (instead of using generated_*_info.txt).

For devices without AVB, with DAP enabled, and does not have
RESERVED_SIZE for partitions, because of right sizing, the original
code always warns about approaching size limits. Since such checks
doesn't make sense for dynamic partitions, remove them.

Test: builds on device with dynamic partitions
Test: builds on cuttlefish with DAP enabled (without AVB), no
      more size limit warnings:
WARNING: out/target/product/vsoc_x86/vendor.img approaching size limit (X now; limit X)

Fixes: 122377935
Change-Id: I75e1b8322197cb18cf397d02aefd49d777bb6405
2019-04-04 15:09:51 -07:00
Yifan Hong
7a8ffbeb9f resolve merge conflicts of 7bd8a3692f to master
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I16278376fb4a2b26f15b675016d00819ea99c296
2019-04-01 09:53:23 -07:00
Yifan Hong
5478754cd6 Move super.img to obj/PACKAGING
To avoid the confusion. super.img isn't intended to be flashed
during day-to-day development.

Test: m superimage
Bug: 128891161
Change-Id: I9d62e5929b415343b2d890ab21e6ae51175af2ae
2019-03-29 14:47:28 -07:00
Jiwen 'Steve' Cai
eee1046b50 Remove android.frameworks.bufferhub@1.0-service
Disable this for Q. We will add this back once Q branches.

Bug: 128320950
Bug: 123429755
Test: Build system
Change-Id: I1d360c7a8890148be6197092ba149203a72a019d
2019-03-29 11:51:42 -07:00
Bowgo Tsai
e4544b1c02 Moving system_other key into product.img
Currently system_other AVB public key is placed in system.img.
However, this makes it's harder to have a *generic* system.img
across different product configs. Moving the key to /product
partition to allow more product-specific AVB keys.

Device board config can add /product/etc/fstab.postinstall,
to mount system_other with this key in /product. It can specify
different mount options, file systems, verity settings, etc., in
this product-specific fstab as well.

Bug: 123611926
Test: `make productimage` checks the following is generated.
      $OUT/product/etc/security/avb/system_other.avbpubkey
      Also checks it's included in $OUT/installed-files-product.{json, txt}

Test: run the following command and checks that
      PRODUCT/etc/security/avb/system_other.avbpubkey is updated:
      ./build/tools/releasetools/sign_target_files_apks \
        --avb_system_other_algorithm SHA256_RSA2048 \
        --avb_system_other_key external/avb/test/data/testkey_rsa2048.pem \
        out/dist/*-target_files-*.zip signed-target_files.zip

Change-Id: I6804f29941bec54375d80bd68a5aedb5c23b842e
2019-03-20 16:18:11 +08:00
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
Martin Stjernholm
6fd16926b1 Clean up libjdwp.so and possibly other dependencies that might have crept in
between http://r.android.com/890494 and http://r.android.com/913898.

(Repopulating libs from intermediates is quick, so not wasting effort trying
to be precise.)

Test: Don't have a suitably old build tree to test with.
Bug: 124498388
Change-Id: Ice35606e4c301d5b01837963137421f9d23a9733
2019-03-01 20:41:52 +00:00
Martin Stjernholm
616dc79043 Remove libnpt from system again.
http://r.android.com/914573 fixes libjdwp to look for it in the APEX.

Test: Flash and boot
Test: adb forward tcp:5555 jdwp:`adb shell pidof com.android.email` && jdb -attach localhost:5555
Test: atest CtsJdwpTestCases
Bug: 124498388
Change-Id: Idf380660a21c88969e42d6a03a6b50fd2baa4c17
2019-02-27 20:51:56 +00:00
Colin Cross
47e384c3d6 Remove dexpreopting of boot jars from Make
Dexpreopting of boot jars is now implemented in
build/soong/java/dexpreopt_bootjars.go.

Test: m checkbuild
Change-Id: I036510e7674b876976ce191c5b18bf0b7a15c6ee
2019-02-15 13:00:14 -08:00
Martin Stjernholm
a568592f53 Disable installation of ART modules in /system.
Remove ART modules (`art-runtime`, `art-tools`) from `PRODUCT_PACKAGES`, as
they are provided by the Android Runtime APEX module
(`com.android.runtime`).

Copy of rpl's http://r.android.com/812674.

Test: Flash and boot
Test: atest CtsJniTestCases
Test: atest CtsJdwpTestCases
Test: m checkbuild dist
Bug: 113373927
Change-Id: I3e0c130f1a9c596629ab243648f0251cf71c1499
2019-02-13 22:28:09 +00:00
Anton Hansson
95958eefa9 Change RRO default location to /product
This changes the default location of RRO packages that don't
specify where they should be installed to /product instead of
/vendor.

Also change the auto-generated "enforced RRO" packages to install
on /product, and be explicit about that in the mk to make it
independent of the RRO default.

The reasoning for this change is that most overlays tend to be
for product level customizations, like themes and so on. RROs
for hardware related things can still be explicitly installed
on /vendor.

Bug: 123566903
Test: preubmit
Test: various internal tests
Change-Id: Ie7d5f19dc7ab421a7bcf584153f991e18e961cda
2019-02-07 13:06:18 +00:00
Colin Cross
485c9cd400 Move hiddenapi singleton rules to Soong
Hiddenapi rules are now in build/soong/java/hiddenapi_singleton.go.
This effectively requires any module in PRODUCT_BOOT_JARS to be
defined in Soong.

Bug: 123645297
Test: m checkbuild
Change-Id: If72bd1c20b2014d0a3d400624d37fdb0a3052245
2019-02-05 21:38:55 -08:00
Anton Hansson
80c80804f0 Merge product_services into product by default
Noone is intended to use product_services for now, so make
product_services modules merge in product by default.

Bug: 113098451
Test: boot blueline
Test: boot walleye
Change-Id: Id13487e40afe4ae581fac027c8c075798c26c7e8
2019-02-01 15:04:44 +00:00
Pete Bentley
b8b08bdd02 Move remaining libcore JNI libraries to APEX.
Test: Flash and boot on Taimen
Test: atest CtsLibcoreTestCases CtsJniTestCases
Bug: 119090773
Change-Id: Ia9e7077327d2abc3f637c09acc5933b9c1682d5a
Exempt-From-Owner-Approval: Simple clean steps rule
2019-01-28 09:14:12 +00:00
Dan Willemsen
45539e3941 Fix possible incremental build issue
We tried to start using toybox's sed, but it produced invalid results
with one of init's genrules. Clear out that generated code to fix future
incremental builds, since we don't rebuild everything on a $PATH change.

Bug: 122744241
Test: generate bad file, remove toybox sed, apply this change
Change-Id: I197aa4b68b2fe309b3033e8736e1d80c8ded80ad
2019-01-11 19:51:06 -08:00
Justin Klaassen
6900aa2144 Remove ExactCalculator module
Individual products can add their own calculator package if desired.

Bug: 120905067
Test: lunch aosp_arm64 && make -j8
Merged-In: I60490b6e2a42c4304768075e8fef9f07cb72d268
Change-Id: I60490b6e2a42c4304768075e8fef9f07cb72d268
2019-01-10 14:30:55 +08:00
Colin Cross
ab84792815 Remove file named .d created in the source directory
I59b20c931ee3e5a8d35eb30da4148691c5095502 accidentally wrote depsfiles
to a file called .d in the top level of the source tree, remove them.

Bug: 119412419
Test: m
Change-Id: Iaf71a64a7ee4aa39084423dfd16aa934613ba158
2018-12-15 19:13:29 -08:00
Colin Cross
e07a32b124 Restore reverted CleanSpec
Ica006a007d112c232311435aaac0c0e476232b67 added a clean step that was
reverted in I0ce3ad70c73ff997aacaf411b0b5dc73760e7f91.  Reverting
a clean step could cause a future clean step to be skipped, because
Make only tracks how many clean steps have been run out of each
CleanSpec.mk file.  Add back the reverted clean step.

Bug: 119412419
Test: none
Change-Id: I11fe12d7c3526ccc21f468b350b4288cb55a9447
2018-12-15 19:05:07 -08:00
Colin Cross
10846f99fb Revert "Correctly create directories before unzipping dexpreopt zip"
This reverts commit 2bb1f518fd.

Test: none
Bug: 119412419
2018-12-14 11:49:55 -08:00
Colin Cross
2bb1f518fd Correctly create directories before unzipping dexpreopt zip
Ie7daa94e107d53eff075ca58dbe721bd9d7fc8c2 attempted to pre-create
the directories that unzip would unzip into, but incorrectly
created them in the top of the source tree instead of in
$(PRODUCT_OUT).  Fix the directory location and add a cleanspec
to clean up the incorrect directories in the source tree.

Bug: 119412419
Test: m correctly cleans up incorrect directories in source tree
Test: extract unzip command from out/verbose.log.gz and add bash -x
Change-Id: Ica006a007d112c232311435aaac0c0e476232b67
2018-12-13 23:32:06 -08:00
Nicolas Geoffray
1bc5aff793 Remove perfprofd from set of binaries installed on system.
Needed to get some space on marlin-eng :(

Also avoids static linking libart into perfprofd. Roland will follow-up by reverting the no-perfprofd changes.

bug: 73175642

Test: lunch marlin-eng && m -j32
Change-Id: Ic1c79c6dd1052981801b92604f9891a8a63b4ea0
2018-12-11 23:00:57 +00:00
patricktu
345c9ae44f AIDEGen: Adopt prebuilt mechanism to bypass 'm aidegen'.
Bug: 119642842
Test: m clean;aidegen tradefed
Change-Id: Ib25591de77762ffdcc72ea4a064a50cfb3e5015e
2018-11-29 15:25:40 +08:00
Anton Hansson
adbafe0a7c Add BOARD_USES_SYSTEM_OTHER_ODEX := true to mainline
Likely not the final setting we'll settle with for this device,
but brings mainline_system builds closer to the device builds
it's targeting.

Bug: 80410283
Test: build mainline_arm64
Change-Id: Ib672d1a060d0ad6a4e1faa210461bbbbaf6f2bc6
2018-11-16 16:36:50 +00:00
Colin Cross
3b4417a45e Remove old copies of host-libprotobuf-java-full.jar in test suites
Test suite directories not covered by installclean have an old copy
of host-libprotobuf-java-full in them that causes problems when
libprotobuf-java-full uses an updated ABI, remove them.

Bug: 119049592
Test: manual
Change-Id: Iedf0aaf2a1d1ca2c7332da3cc6d948946946eebe
2018-11-05 15:11:46 -08:00
Dan Willemsen
78c40be560 Create a new kati packaging step; move dist
Instead of looking at `dist` and DIST_DIR directly in the Kati Build
step, always write out information about every call to dist, then create
the rules in another ckati run.

So instead of having:

  dist:    <goal> -> <dist> -> <output>
                \______________↑

  nodist:  <goal> -----------> <output>

Always use another phony target in the Kati Build step:

   <goal> ---> <output>
        \----> _dist_<goal>

Then in the packaging step (which is much faster), choose between dist
and no dist:

  dist:   _dist_<goal> -> <dist> -> <output>

  nodist: _dist_<goal>

Bug: 117463001
Test: m dist
Change-Id: Ic96bb6356740300dd3113f6ed699e6a619360c40
2018-10-20 21:44:44 +00:00
Colin Cross
3c6d5480c5 Remove strip.sh intermediates to save space
Add a cleanspec to removed unused strip.sh intermediates.  Saved
32GB on my AOSP checkout that had been used to build multiple
devices.

Test: m nothing
Change-Id: Ia319a2feacdd1a1ac8b88a6783766c370438ce12
2018-10-18 14:19:56 -07:00
Dan Willemsen
8cf6b65445 Remove *_OUT_INTERMEDIATE_LIBRARIES
Always use the exact libraries like Soong does instead.

Test: m
Change-Id: Ifd48020073dd045247f76f84627c497e94562286
2018-09-15 10:52:13 -07:00
Tao Bao
696bb33676 Install recovery etc files to recovery/root/system/etc.
They used to be installed under recovery/root/etc. This CL moves the
files to the new location and creates a symlink from /etc to /system/etc
(done by the rule in system/core/rootdir). This gives similar layout
between normal boot and recovery, and allows installing prebuilt_etc
files with Soong (`recovery_available: true`).

As part of the change, we no longer need the whitelisting rule for
mke2fs.conf.

Bug: 112780007
Test: Build with other changes in the topic (aosp_taimen-userdebug).
      Check the generated files under recovery (/etc being a symlink to
      /system/etc).
Test: Boot into recovery. Verify basic functionalities (`adb shell` and
      `adb sideload`, factory reset).
Test: `build/soong/build_test.bash --dist`
Change-Id: Ibb6dea6f179a339f0c2d0fd8ba05ec0085b79a12
2018-08-21 10:30:49 -07:00
Tao Bao
d6b3a4cc79 Add the Cleanspec rule for product-services symlink.
Bug: 112431447
Test: `m dist` when there's a leftover symlink of "/product-services".
Change-Id: I39bb79bd7790fe2243075768c6423b0fddc379f7
2018-08-21 07:34:18 -07:00
Dario Freni
924af7d4dd s/product-services/product_services/g
Attempting to reduce the number of different spellings we have for
"product services" partition in the codebase.

Bug: 112431447
Test: m
Change-Id: I6debd3f5f5abc4bd1e22f2ef11c5fe131915976c
Merged-In: I6debd3f5f5abc4bd1e22f2ef11c5fe131915976c
2018-08-20 10:44:59 -07:00
Sudheer Shanka
a566dce20b Update CleanSpec to remove generated files from IVold.aidl.
Bug: 112058806
Test: Device booted after flashing a build with this change.
Change-Id: If0bda6869a7ed09b8c320b5c44c43f9d4cb4c3dd
Merged-In: If0bda6869a7ed09b8c320b5c44c43f9d4cb4c3dd
2018-08-20 10:44:50 -07:00
Steven Moreland
91c5154a42 Remove vr_hwc from GSI image.
Not all phones support the VR, so on phones
that don't, the inclusion of vr_hwc is causing
VtsHalGraphicsComposerV2_1Target failures.

Bug: 109913118
Bug: 111963599
Test: vr_hwc is not on aosp_arm64_ab
Change-Id: I803b4dddc5a87e35875992ad9421c644698112f1
Merged-In: I803b4dddc5a87e35875992ad9421c644698112f1
(cherry picked from commit 52971ca09b)
2018-07-31 02:48:29 +00:00
Colin Cross
c7dee5c9a1 Move merged AndroidManifest.xml file to manifest subdirectory
Some modules generate their own custom AndroidManifest.xml file
to $(intermediates.COMMON)/AndroidManifest.xml file.  Move the
build system's location to
$(intermediates.COMMON)/manifest/AndroidManifest.xml.

This location will also be used later for finding manifest files
from LOCAL_STATIC_ANDROID_LIBRARIES dependencies.

Bug: 78447299
Test: m checkbuild
Change-Id: I345f079bdd191451333b38d882418f2f7150b1e9
Merged-In: I345f079bdd191451333b38d882418f2f7150b1e9
(cherry picked from commit 0bcc120b54)
2018-06-14 21:36:53 +00:00