Commit Graph

11 Commits

Author SHA1 Message Date
Kiyoung Kim 2d4bbf2415 Update linkerconfig configuration format
Update linkerconfig configuration format as json.

Bug: 169634881
Test: cuttelfish boot succeeded
Change-Id: I297ffc9e5c8d8916b2e7e0b3e837b6b82247401b
2020-10-06 17:28:19 +09:00
Kiyoung Kim 5a8189f141 Mark bionic APEX as visible
Linkerconfig is going to remove all hard-coded dependencies from APEX
modules and let APEX modules specify its own requirements. As part of
it, this change adds a new configuration file for linkerconfig and let
it aware that bionic APEX should be visible from all sections.

Bug: 167946001
Test: atest passed
Change-Id: If934d9a3e72b1466ee0d7bbb66d9383b90986a6b
2020-09-09 16:28:20 +09:00
Martin Stjernholm d6e35f1cc8 Add linkerconfig to the host exports.
ART runs it on host to create the linker config for its chroot test
environment. This avoids problems building linkerconfig in the reduced
master-art manifest.

Even though linkerconfig currently is in platform/system I'm adding it
to the Bionic module exports based on discussions that the linkerconfig
binary should be part of the Runtime (Bionic) APEX due to its close
ties to the linker.

Test: build/soong/scripts/build-aml-prebuilts.sh runtime-module-host-exports
  then try the prebuilt snapshot with art/tools/buildbot-build.sh in
  master-art
Bug: 162819454
Change-Id: I4d43d7f0b980af48b193d5eb358e4f010eea541b
2020-08-06 11:21:40 +01:00
Martin Stjernholm b87882d6a4 Need prebuilt linker executable for host Bionic.
ART runs some tests on host using linux_bionic (cf.
ab/git_master-art-host). On device Bionic binaries come from its APEX,
but on host they have to be supplied separately. Since they're not part
of the SDK they are instead provided through a `module_export` module,
which is technically similar to `sdk` in the way it produces prebuilt
snapshots.

Test: art/test/testrunner/run_build_test_target.py art-linux-bionic-x64
  on a master-art branch using snapshot built from runtime-module-sdk
  and runtime-module-host-exports
Bug: 152255951
Change-Id: I143b5412f7284f42c7e8be6cecc5ec96f1dc70f3
2020-06-02 21:20:18 +01:00
Martin Stjernholm 215e1da3fc Add Bionic module SDK.
Test: v
  1. build/soong/scripts/build-aml-prebuilts.sh runtime-module-sdk
  2. Unzip out/aml/soong/mainline-sdks/runtime-module-sdk-current.zip
     into prebuilts/module_sdk/runtime in a master-art tree without
     platform/bionic in its manifest.
  3. Check that all shared libs in the generated Android.bp file in the
     zip archive have stubs.version set.
  4. art/build/apex/runtests.sh is successful in the master-art tree.
Bug: 152255951
Change-Id: Iaada409c2edfa504056da8bebfb30756456eb282
2020-05-11 23:45:13 +01:00
Peter Collingbourne ea06b0dec2 Move crash_dump into the runtime APEX.
A future change will introduce a version lock between linker and
crash_dump. Move crash_dump into the runtime APEX alongside linker in order to
ensure that they will be the same version even if the runtime APEX is updated.

Bug: 135772973
Change-Id: I94740f9c45107f08490df639a2e4d589a3044847
Merged-In: I94740f9c45107f08490df639a2e4d589a3044847
2020-03-18 10:36:48 -07:00
Kiyoung Kim bf40eac2eb Remove ld.config.txt from bionic APEX
Dynamic linker will use generated linker configuration in general. As
ld.config.txt file in the APEX module will not be used, we can remove
this to avoid confusion.

Bug: 149887007
Test: m -j passed
Test: Boot succeeded from cuttlefish and walleye
Change-Id: Iffd2113cf29055a7263eb3697547297639e9dc0c
2020-02-20 16:05:27 +09:00
Martin Stjernholm 3274cc4692 Reland "Add libdl_android to the Runtime (aka Bionic) APEX".
Before this it ended up in /system.

Test: build & boot
Test: adb shell find system apex -name libdl_android.so | xargs adb shell ls -l
  =>
  apex/com.android.runtime/lib/bionic/libdl_android.so
  apex/com.android.runtime/lib64/bionic/libdl_android.so
  apex/com.android.runtime@1/lib/bionic/libdl_android.so
  apex/com.android.runtime@1/lib64/bionic/libdl_android.so
  system/lib/bootstrap/libdl_android.so
  system/lib/libdl_android.so -> /apex/com.android.runtime/lib/bionic/libdl_android.so
  system/lib64/bootstrap/libdl_android.so
  system/lib64/libdl_android.so -> /apex/com.android.runtime/lib64/bionic/libdl_android.so
Test: atest CtsBionicTestCases
Test: Repro in b/144343305#comment8 together with ag/9754153
Bug: 135753770
Bug: 144343305
Change-Id: I9ccd10b711223ca474e91741711b7b8efd521b2d
2019-11-21 16:15:20 +00:00
Yuexi Ma c74666eb3c Revert submission of topic 'libdl_android-in-apex'
Reason for revert: broke numerous major apps in app compat testing
Bug: 144100240

Change-Id: I50b440356bdbde3ac130da5d28d5ef20f8b63582
2019-11-07 19:18:53 +00:00
Martin Stjernholm a3b0eab32f Add libdl_android to the Runtime APEX.
Before this it ended up in /system.

Test: build & boot
Test: adb shell find system apex -name libdl_android.so | xargs adb shell ls -l
  =>
  apex/com.android.runtime/lib/bionic/libdl_android.so
  apex/com.android.runtime/lib64/bionic/libdl_android.so
  apex/com.android.runtime@1/lib/bionic/libdl_android.so
  apex/com.android.runtime@1/lib64/bionic/libdl_android.so
  system/lib/bootstrap/libdl_android.so
  system/lib/libdl_android.so -> /apex/com.android.runtime/lib/bionic/libdl_android.so
  system/lib64/bootstrap/libdl_android.so
  system/lib64/libdl_android.so -> /apex/com.android.runtime/lib64/bionic/libdl_android.so
Bug: 135753770
Change-Id: Ibabb5714e8cc0454c77ae5d42d9650c345ff1b89
2019-11-06 00:28:38 +00:00
Elliott Hughes 470d10cf0f Move bionic ("runtime") apex definition into bionic/.
Bug: http://b/139176024
Test: boots
Change-Id: Ifc3829e00b99c2f65ed932f0b42ab1ae59fec27c
2019-09-30 16:44:58 -07:00