Commit graph

33 commits

Author SHA1 Message Date
Jooyung Han
93cb9b5b31 Remove vnd*.libraries.txt from /system/etc
These files are moved to VNDK APEX.

Bug: 145184886
Test: bulid && boot
Change-Id: I85ab025e1ad490ee7704e4219c5ee611c83ca429
2020-03-07 04:54:23 +09:00
Treehugger Robot
b21ca5795e Merge "Implement BOARD_VNDK_VERSION" 2020-02-13 11:01:10 +00:00
Jooyung Han
ce01a3b014 Install VNDK_USING_CORE_VARIANT_LIBRARIES
With TARGET_VNDK_USE_CORE_VARIANT := true, some VNDK libraries are not
installed and instead system variants are used at runtime.

When building system only, VNDK_USING_CORE_VARIANT_LIBRARIES are not
installed under /system because there is no dependency to trigger
installing. (By definition, /vendor modules depends on vndk libs)

Bug: 148803529
Test: lunch aosp_cf_x86_go_phone-userdebug
      m systemimage # should install vndk libraries of core variant

Change-Id: Ied4347969955491b13dc674f2e8453d76592d1d7
2020-02-05 16:18:09 +09:00
Inseob Kim
f0cec69de9 Implement BOARD_VNDK_VERSION
This allows BOARD_VNDK_VERSION to be set to old versions. With VNDK
snapshot and vendor snapshot installed, newer system and older vendor
image can be built in the same time.

Bug: 65377115
Test: 1) VNDK_SNAPSHOT_BUILD_ARTIFACTS=true m dist vndk vendor-snapshot
Test: 2) install snapshot under source tree
Test: 3) set BOARD_VNDK_VERSION and boot cuttlefish
Change-Id: Ic5fefc8bcb866584b27f021a429cb6670a2e3048
2020-01-23 12:52:25 +00:00
Hsin-Yi Chen
4367e6cc51 Merge "Compare existing ABI dump list with LSDUMP_PATHS" 2020-01-17 02:09:39 +00:00
Hsin-Yi Chen
62de555119 Compare existing ABI dump list with LSDUMP_PATHS
This commit fixes the check for redundant files in prebuilts/abi-dumps.
Some ABI dump file names are different from the module names. The list
of existing files should be compared with LSDUMP_PATHS which are the
files generated by soong.

This commit also adds the check for the files in
prebuilts/abi-dumps/platform.

Bug: 147409497
Test: make
Change-Id: If304afb116e9b5d3cb7ceaf74822d5a19ebe1a35
2020-01-16 10:46:30 +08:00
Steven Moreland
7e2ec0e5af update-vndk-list.sh delinated with ticks in error
People have asked me on several occassions how to fix this error. It's
somewhat confusing since scripts aren't usually on a path. However, in
this case, the script is added to the path on host. Hopefully, using
tick marks here will make that more clear.

Bug: N/A
Test: N/A
Change-Id: I8601a5a9eb348b2e358875b45eae57ec910c9a06
2020-01-06 15:05:07 -08:00
Jooyung Han
fe15dd1eb7 Move extra VNDKs to /system_ext
Extra VNDKs are now installed under /system_ext in APEX format with
a phony target "vndk_apex_snapshot_package".

There are still files remained in /system/etc(*.libraries.<VER>.txt)
which are installed with "vndk_snapshot_packages".

These files are already packaged into VNDK APEXes, but linkerconfig and
libnativeloader still use them from /system/etc.(b/145184886)

Bug: 137802149
Test: lunch aosp_arm64
  && flash system.img on Q device
  && boot

Change-Id: I94c340d6f1c1af6ab1ae93c22b0a98fd4c10262e
2019-11-27 22:16:16 +09:00
Jooyung Han
037b3e081c Use MakeVar from soong instead of hardcoding
check-vndk-list target reads the vndk.libraries.txt file from
SOONG_VNDK_LIBRARIES_FILE makevar.

Bug: 142963962
Test: m check-vndk-list
Change-Id: I10f6ad80757ed267b66c9a709b75621e063f3744
2019-10-31 11:37:07 +09:00
Treehugger Robot
85808a8089 Merge "Revert "Revert "Revert "Revert "install VNDK APEX instead of VNDK libs""""" 2019-10-30 04:29:37 +00:00
Jooyung Han
93bdc3e734 Revert "Revert "Revert "Revert "install VNDK APEX instead of VNDK libs""""
This reverts commit ec8769762f.

Reason for revert:  Fix b/143374795

Change-Id: I7a9a06cb01e3cac0d15b352da76b6b8e9b45eb63
2019-10-28 21:07:21 +00:00
Greg Kaiser
35815917ba Merge "Revert "Revert "Revert "install VNDK APEX instead of VNDK libs"""" 2019-10-28 17:12:33 +00:00
Jooyung Han
ec8769762f Revert "Revert "Revert "install VNDK APEX instead of VNDK libs"""
This reverts commit 6851a27604.

Reason for revert: b/143374795

Change-Id: Iff04cb2a500b4d624abeec4dbc5dcfb5a6e03397
2019-10-28 05:09:13 +00:00
Treehugger Robot
6b1be377a5 Merge "Use soong-generated vndk.libraries.txt" 2019-10-26 01:52:39 +00:00
Jooyung Han
a0158d8327 Use soong-generated vndk.libraries.txt
check-vndk-list target should use 'filename's not 'modulename's.
But retrieving(or calculation) of filename from modulename doesn't work
when target module is not installed. That's why builds of some targets
fail given that libprotobuf-cpp-full's name is changed.

Now soong generates vndk.libraries.txt with filenames of VNDK libs.

And, check-vndk-list target is disabled now for targets with no vndk
libs. (BOARD_VNDK_VERSION is not set)

Bug: 142963962
Bug: 141019581
Test: m check-vndk-list
Test: lunch qemu_trusty_arm64-userdebug; m check-vndk-list (no check)
Change-Id: I680deb1a7af37c32a9e6932d52e8d87e5a3534b9
2019-10-25 02:15:48 +09:00
Winson Chiu
3d5eba2be4 Revert "VNDK library list uses installed name"
This reverts commit b808592783.

Reason for revert: potentially broke build b/143233626

Change-Id: I1458cb687923833010f3de1277092f8ead744ea3
2019-10-23 21:24:40 +00:00
Jooyung Han
6851a27604 Revert "Revert "install VNDK APEX instead of VNDK libs""
This reverts commit 376c613085.

Bug: 141451661
Test: m && boot (tested with cuttlefish)
2019-10-19 02:24:09 +09:00
Jooyung Han
376c613085 Revert "install VNDK APEX instead of VNDK libs"
This reverts commit 172c8e6de0.

Reason for revert: some targets are broken

Bug: 142773030
Change-Id: Ic35b19c7973946658365ecd7de4846f3175054b5
2019-10-16 23:45:38 +00:00
Jooyung Han
172c8e6de0 install VNDK APEX instead of VNDK libs
VNDK APEX replaces VNDK libs under /system/libs/vndk[-sp].

For current VNDK (vndk_package), com.android.vndk.current APEX is
installed instead of VNDK libraries.

For older versions of VNDK (vndk_snapshot_package),
com.android.vndk.v## APEXes are installed along with prebuilt VNDK libs.
The reason why phony targets of VNDK prebuilts are still installed is
that phony targets install the required *.libraries.##.txt files to
/system/etc.

After those .txt files are moved to APEXes, then we can remove those phony
targets.(b/141450808)

Bug: 141451661
Test: m && boot (tested with cuttlefish)

Change-Id: Ibfa06d42ec0081fa7010091ef097bb940bacf8d6
2019-10-13 04:18:05 +09:00
Yo Chiang
b808592783 VNDK library list uses installed name
For example, module libprotobuf-cpp-lite has installed library name
libprotobuf-cpp-lite-3.9.1.so.
VNDK library list should use this installed name instead of module name.

Bug: 141019581
Test: m $ANDROID_PRODUCT_OUT/obj/PACKAGING/vndk_intermediates/libs.txt
Change-Id: I7f19fedafdd2809e0b8738bbab6ad513ddb30ea0
2019-10-09 18:12:49 +08:00
Kiyoung Kim
7b04103fb9 Add library list for VNDK using core variant
Some device requires VNDK_USING_CORE_VARIANT list, but it was not
implemented in previous. Adding this library list to the build target so
it can be added to system image.

Bug: 141695559
Test: m -j passed & Tested from Cuttlefish
Change-Id: Ic6847fd1966d4e1884cdce97015c8c1d1e0f3422
2019-09-27 14:02:31 +09:00
Jooyung Han
a3c987d7f3 Skip *.libraries.txt when skipping current vndk
When TARGET_SKIP_CURRENT_VNDK=true current vndk libs are not installed.
Related *.libraries.txt files also should not be installed.

Bug: 132140714
Bug: 137511540
Test: TARGET_SKIP_CURRENT_VNDK=true m systemimage # and, look into /system/etc
Change-Id: Ieea7444c359410dd9a14ac0dd369cae38d18b63a
2019-09-09 11:19:19 +09: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
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
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
Juju Sung
3021218d2a Remove extra brackets in vndk_packages collecting phase
Built target with syntax error near unexpected token `llndk.libraries.txt'
Unpaired brackets makes syntax error in collecting vndk_packages.

Test: build&flashed
Bug: 140097958
Change-Id: I65683a1fc3e7d2f1c8e4eeb471b23620d48c7c41
2019-08-30 09:59:51 +09:00
Hsin-Yi Chen
5cbf33afe9 Add tags to lsdump_paths.txt
- Update the conversion from LSDUMP_PATHS to lsdump_paths.txt.
  LSDUMP_PATHS is a list of "tag:path". Each element is converted to
  "tag: path\n" in lsdump_paths.txt.

- Update the check for redundant ABI dumps.
  prebuilts/abi-dumps/ndk contains the ABI dumps for NDK.
  prebuilts/abi-dumps/vndk contains those for LLNDK, VNDK-core, VNDK-SP,
  except NDK.

Test: make findlsdumps
Bug: 133176785
Change-Id: I90559e6c68a7f901a318cd8d5125e9a7401ac22c
2019-08-05 11:20:22 +08:00
Przemyslaw Szczepaniak
b4befed86f Merge "Move libneuralnetworks.so to com.android.neuralnetworks APEX" 2019-07-24 09:12:18 +00:00
Hsin-Yi Chen
07ece13f06 Ensure no redundant ABI reference dumps
This commit ensures that all ABI dumps under prebuilts/abi-dumps/ have
corresponding NDK/VNDK libraries. When an NDK/VNDK library is removed
but its ABI dump isn't, the build system reports an error.

The build system does not check whether all NDK/VNDK libraries have ABI
reference dumps because the owners of the libraries may intend to
disable ABI check in some cases.

Test: touch prebuilts/abi-dumps/vndk/R/32/x86/test.so.lsdump && make
Bug: 132140703
Change-Id: I615ac8b509f151b75f57f35cd78c518fae798974
2019-07-23 14:20:21 +08:00
Przemyslaw Szczepaniak
f67c72b34d Move libneuralnetworks.so to com.android.neuralnetworks APEX
Test: build&flashed crosshatch image
Bug: 137320025

Change-Id: Iadbb32cffc636c515a5e89b62539183ebc0c2f14
2019-07-19 16:41:48 +01:00
Jooyung Han
9340a673cd make: Add support to skip current VNDK install
You can get a system.img without current VNDK libs.
This may help when you want a smaller system.img given that the image
will be used with a specific version (not current) of vendor image.

Bug: 132140714
Test: m TARGET_SKIP_CURRENT_VNDK=true && see if current VNDK is not
installed

Change-Id: Ie0815e6dd6ce2f861b6c42e637da4bb146320673
2019-05-25 02:06:08 +09:00
Justin Yun
89443aed80 Add an option not to install all VNDK libs
When using VNDK snapshot, current VNDK libs are not required. Use
"TARGET_SKIP_CURRENT_VNDK=true" to skip installing current VNDK libs.

Bug: 123607022
Test: TARGET_SKIP_CURRENT_VNDK=true PRODUCT_EXTRA_VNDK_VERSIONS=28 m -j
Change-Id: I65c902c71a7952536bbf824a1dccb9360e843f1a
2019-02-13 10:46:10 +09:00
SzuWei Lin
2d541f35cd Apply skip mounting product and other partitions in GSI
Uses skip_mount.cfg for `init` to skip mounting product and
product_service paritions in GSI. The patch also removes
the un-mount in `init.gsi.rc`.

With this patch, a device with flashing GSI will not use the
content in product/prodcut_service partitions on the device
and will always use the content under /system/product in GSI.

The patch also rename the target/product/vndk to
target/product/gsi.

Bug: 120208657
Bug: 117246558
Test: Boot blueline master/P with flashing aosp_arm64-userdebug
Test: /product and /product_service should be symbolic links
Change-Id: Idc9c60e5a05b3d90fc4ab64b0ac000571849b19b
2018-12-19 14:42:27 +08:00
Renamed from target/product/vndk/Android.mk (Browse further)