diff options
author | Roland Levillain <rpl@google.com> | 2018-10-31 19:51:43 +0000 |
---|---|---|
committer | Roland Levillain <rpl@google.com> | 2018-11-06 15:53:34 +0000 |
commit | 9c53ca68acc7bbf3b1f5c37622eb461ce2dd91fe (patch) | |
tree | 449e3bba2104428576649e61d42c226c28952485 /Android.bp | |
parent | 304c6da539597333a763376096531be7fe1fbcf4 (diff) | |
download | vixl-9c53ca68acc7bbf3b1f5c37622eb461ce2dd91fe.tar.gz |
Build a unified libvixl(d) conditionally containing 32/64-bit versions.android-o-mr1-iot-release-smart-display-r9android-o-mr1-iot-release-smart-display-r8android-o-mr1-iot-release-smart-display-r5android-o-mr1-iot-release-smart-display-r40.1Jandroid-o-mr1-iot-release-smart-display-r4android-o-mr1-iot-release-smart-display-r39android-o-mr1-iot-release-smart-display-r30android-o-mr1-iot-release-smart-display-r22android-o-mr1-iot-release-smart-display-r14android-o-mr1-iot-release-smart-clock-r6android-o-mr1-iot-release-smart-clock-r2android-o-mr1-iot-release-smart-clock-fsiandroid-o-mr1-iot-release-smart-clock-fcsandroid-o-mr1-iot-release-cube_r2android-o-mr1-iot-release-cube-fsiandroid-o-mr1-iot-release-cube-fcs
Instead of building libvixl(d)-arm and libvixl(d)-arm64, build
a single libvixl(d) containing the code generating/processing
AArch32 (ARM) and/or AArch64 (ARM64) code, depending on the build
target.
Test: 32-bit-only device boot test
Test: 32/64-bit device boot test
Bug: 64359573
Change-Id: I3e519a95e99bc69fa839f814bf59d83e6ccf82ef
Diffstat (limited to 'Android.bp')
-rw-r--r-- | Android.bp | 67 |
1 files changed, 26 insertions, 41 deletions
@@ -73,12 +73,6 @@ cc_defaults { // const correctly when handling string constants. "-Wwrite-strings", - // As we can load both libvixl-arm.so and libvixl-arm64.so in the - // same process, and some functions are emitted in both libraries, - // flags for selecting implementation details for these functions - // must be shared to emit identical code. Otherwise we can get - // undefined behavior, especially with link-time optimization. - // b/64359573 "-DVIXL_CODE_BUFFER_MALLOC", ], local_include_dirs: ["src"], @@ -88,23 +82,31 @@ cc_defaults { }, } -cc_defaults { +art_cc_defaults { name: "vixl-arm", defaults: ["vixl-common"], - cppflags: [ - "-DVIXL_INCLUDE_TARGET_T32", - ], - srcs: ["src/aarch32/*.cc"], + codegen: { + arm: { + srcs: ["src/aarch32/*.cc"], + cppflags: [ + "-DVIXL_INCLUDE_TARGET_T32", + ], + }, + }, } -cc_defaults { +art_cc_defaults { name: "vixl-arm64", defaults: ["vixl-common"], - cppflags: [ - "-DVIXL_INCLUDE_SIMULATOR_AARCH64", - "-DVIXL_INCLUDE_TARGET_A64", - ], - srcs: ["src/aarch64/*.cc"], + codegen: { + arm64: { + srcs: ["src/aarch64/*.cc"], + cppflags: [ + "-DVIXL_INCLUDE_SIMULATOR_AARCH64", + "-DVIXL_INCLUDE_TARGET_A64", + ], + } + }, } cc_defaults { @@ -127,10 +129,11 @@ cc_defaults { ], } -cc_library { - name: "libvixl-arm64", +art_cc_library { + name: "libvixl", defaults: [ "vixl-release", + "vixl-arm", "vixl-arm64", "dex2oat-pgo-defaults", ], @@ -144,31 +147,13 @@ cc_library { }, } -cc_library { - name: "libvixld-arm64", - defaults: ["vixl-debug", "vixl-arm64"], -} - -cc_library { - name: "libvixl-arm", +art_cc_library { + name: "libvixld", defaults: [ - "vixl-release", + "vixl-debug", "vixl-arm", - "dex2oat-pgo-defaults", + "vixl-arm64", ], - - target: { - android: { - lto: { - thin: true, - }, - }, - }, -} - -cc_library { - name: "libvixld-arm", - defaults: ["vixl-debug", "vixl-arm"], } //######## VIXL HOST TESTS ######### |