Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit afc5a8e2 authored by Martin Stjernholm's avatar Martin Stjernholm Committed by Automerger Merge Worker
Browse files

Merge "Remove use of static libdexfile to avoid linking in ART internal code." am: 6d4e47a1

Change-Id: I6d90c27936603f035ff45142ad801009032c285c
parents 2d566d93 6d4e47a1
Loading
Loading
Loading
Loading
+9 −13
Original line number Diff line number Diff line
@@ -103,9 +103,14 @@ cc_library_static {
    export_include_dirs: ["include"],
}

// Fallback implementation.
// Fallback implementation, for use in the Bionic linker only.
cc_library_static {
    name: "libdebuggerd_handler_fallback",
    visibility: ["//bionic/linker"],
    apex_available: [
        "com.android.runtime",
        "//apex_available:platform",
    ],
    defaults: ["debuggerd_defaults"],
    recovery_available: true,
    srcs: [
@@ -118,8 +123,7 @@ cc_library_static {
        "libasync_safe",
        "libbase",
        "libdebuggerd",
        "libunwindstack",
        "libdexfile_support_static",  // libunwindstack dependency
        "libunwindstack_no_dex",
        "liblzma",
        "libcutils",
    ],
@@ -127,14 +131,6 @@ cc_library_static {
    header_libs: ["bionic_libc_platform_headers"],
    export_header_lib_headers: ["bionic_libc_platform_headers"],

    target: {
        recovery: {
            exclude_static_libs: [
                "libdexfile_support_static",
            ],
        },
    },

    export_include_dirs: ["include"],
}

@@ -188,7 +184,7 @@ cc_library_static {
    ],

    static_libs: [
        "libdexfile_support_static",  // libunwindstack dependency
        "libdexfile_support",  // libunwindstack dependency
        "libunwindstack",
        "liblzma",
        "libbase",
@@ -201,7 +197,7 @@ cc_library_static {
    target: {
        recovery: {
            exclude_static_libs: [
                "libdexfile_support_static",
                "libdexfile_support",
            ],
        },
    },
+2 −3
Original line number Diff line number Diff line
@@ -105,9 +105,8 @@ LOCAL_STATIC_LIBRARIES := \
    libgsi \
    libcom.android.sysprop.apex \
    liblzma \
    libdexfile_support_static \
    libunwindstack \
    libbacktrace \
    libunwindstack_no_dex \
    libbacktrace_no_dex \
    libmodprobe \
    libext2_uuid \
    libprotobuf-cpp-lite \
+41 −14
Original line number Diff line number Diff line
@@ -50,20 +50,9 @@ cc_library_headers {
    ],
}

cc_library {
    name: "libbacktrace",
    vendor_available: false,
    recovery_available: true,
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    vndk: {
        enabled: true,
        support_system_process: true,
    },
cc_defaults {
    name: "libbacktrace_defaults",
    defaults: ["libbacktrace_common"],
    host_supported: true,

    cflags: [
        "-Wexit-time-destructors",
@@ -88,7 +77,6 @@ cc_library {
            shared_libs: [
                "libbase",
                "liblog",
                "libunwindstack",
            ],

            static_libs: [
@@ -101,6 +89,30 @@ cc_library {
                whole_static_libs: ["libasync_safe"],
            },
        },
    },
}

cc_library {
    name: "libbacktrace",
    vendor_available: false,
    recovery_available: true,
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],
    vndk: {
        enabled: true,
        support_system_process: true,
    },
    host_supported: true,
    defaults: ["libbacktrace_defaults"],

    target: {
        linux: {
            shared_libs: [
                "libunwindstack",
            ],
        },
        vendor: {
            cflags: ["-DNO_LIBDEXFILE_SUPPORT"],
        },
@@ -110,6 +122,21 @@ cc_library {
    },
}

// Static library without DEX support to avoid dependencies on the ART APEX.
cc_library_static {
    name: "libbacktrace_no_dex",
    visibility: ["//system/core/debuggerd"],
    defaults: ["libbacktrace_defaults"],
    cflags: ["-DNO_LIBDEXFILE_SUPPORT"],
    target: {
        linux: {
            static_libs: [
                "libunwindstack_no_dex",
            ],
        },
    },
}

cc_test_library {
    name: "libbacktrace_test",
    defaults: ["libbacktrace_common"],
+47 −29
Original line number Diff line number Diff line
@@ -35,20 +35,13 @@ cc_defaults {
    },
}

cc_library {
    name: "libunwindstack",
    vendor_available: true,
    recovery_available: true,
    vndk: {
        enabled: true,
        support_system_process: true,
    },
cc_defaults {
    name: "libunwindstack_defaults",
    defaults: ["libunwindstack_flags"],
    export_include_dirs: ["include"],

    srcs: [
        "ArmExidx.cpp",
        "DexFile.cpp",
        "DexFiles.cpp",
        "DwarfCfa.cpp",
        "DwarfEhFrameWithHdr.cpp",
@@ -77,7 +70,6 @@ cc_library {
    ],

    cflags: [
        "-DDEXFILE_SUPPORT",
        "-Wexit-time-destructors",
    ],

@@ -89,24 +81,6 @@ cc_library {
                "-g",
            ],
        },
        vendor: {
            cflags: ["-UDEXFILE_SUPPORT"],
            exclude_srcs: [
                "DexFile.cpp",
            ],
            exclude_shared_libs: [
                "libdexfile_support",
            ],
        },
        recovery: {
            cflags: ["-UDEXFILE_SUPPORT"],
            exclude_srcs: [
                "DexFile.cpp",
            ],
            exclude_shared_libs: [
                "libdexfile_support",
            ],
        },
    },

    arch: {
@@ -124,12 +98,56 @@ cc_library {

    shared_libs: [
        "libbase",
        "libdexfile_support",
        "liblog",
        "liblzma",
    ],
}

cc_library {
    name: "libunwindstack",
    vendor_available: true,
    recovery_available: true,
    vndk: {
        enabled: true,
        support_system_process: true,
    },
    defaults: ["libunwindstack_defaults"],

    srcs: ["DexFile.cpp"],
    cflags: ["-DDEXFILE_SUPPORT"],
    shared_libs: ["libdexfile_support"],

    target: {
        vendor: {
            cflags: ["-UDEXFILE_SUPPORT"],
            exclude_srcs: ["DexFile.cpp"],
            exclude_shared_libs: ["libdexfile_support"],
        },
        recovery: {
            cflags: ["-UDEXFILE_SUPPORT"],
            exclude_srcs: ["DexFile.cpp"],
            exclude_shared_libs: ["libdexfile_support"],
        },
    },
}

// Static library without DEX support to avoid dependencies on the ART APEX.
cc_library_static {
    name: "libunwindstack_no_dex",
    recovery_available: true,
    defaults: ["libunwindstack_defaults"],

    visibility: [
        "//system/core/debuggerd",
        "//system/core/init",
        "//system/core/libbacktrace",
    ],
    apex_available: [
        "//apex_available:platform",
        "com.android.runtime",
    ],
}

//-------------------------------------------------------------------------
// Unit Tests
//-------------------------------------------------------------------------