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

Commit 6d4e47a1 authored by Martin Stjernholm's avatar Martin Stjernholm Committed by Gerrit Code Review
Browse files

Merge "Remove use of static libdexfile to avoid linking in ART internal code."

parents 548101de a2cc8930
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
//-------------------------------------------------------------------------