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

Commit fcc26690 authored by Roland Levillain's avatar Roland Levillain Committed by android-build-merger
Browse files

Merge "Refactor paths to Android Runtime binaries in directory `cmds/installd/`." am: 415bf008

am: 104e09d6

Change-Id: Ib8b88c73fc9997778198dbe73d21d80bf2774e99
parents d7c74684 104e09d6
Loading
Loading
Loading
Loading
+3 −9
Original line number Diff line number Diff line
@@ -333,8 +333,7 @@ class RunDex2Oat : public ExecVHelper {
            MapPropertyToArg("dalvik.vm.dex2oat-very-large", "--very-large-app-threshold=%s");

        // If the runtime was requested to use libartd.so, we'll run dex2oatd, otherwise dex2oat.
        const char* dex2oat_bin = "/apex/com.android.runtime/bin/dex2oat";
        constexpr const char* kDex2oatDebugPath = "/apex/com.android.runtime/bin/dex2oatd";
        const char* dex2oat_bin = kDex2oatPath;
        // Do not use dex2oatd for release candidates (give dex2oat more soak time).
        bool is_release = android::base::GetProperty("ro.build.version.codename", "") == "REL";
        if (is_debug_runtime() ||
@@ -642,10 +641,7 @@ class RunProfman : public ExecVHelper {
                  const std::vector<std::string>& dex_locations,
                  bool copy_and_update,
                  bool store_aggregation_counters) {
        const char* profman_bin =
            is_debug_runtime()
                ? "/apex/com.android.runtime/bin/profmand"
                : "/apex/com.android.runtime/bin/profman";
        const char* profman_bin = is_debug_runtime() ? kProfmanDebugPath: kProfmanPath;

        if (copy_and_update) {
            CHECK_EQ(1u, profile_fds.size());
@@ -1461,9 +1457,7 @@ class RunDexoptAnalyzer : public ExecVHelper {
                    const char* class_loader_context) {
        CHECK_GE(zip_fd, 0);
        const char* dexoptanalyzer_bin =
            is_debug_runtime()
                ? "/apex/com.android.runtime/bin/dexoptanalyzerd"
                : "/apex/com.android.runtime/bin/dexoptanalyzer";
            is_debug_runtime() ? kDexoptanalyzerDebugPath : kDexoptanalyzerPath;

        std::string dex_file_arg = "--dex-file=" + dex_file;
        std::string oat_fd_arg = "--oat-fd=" + std::to_string(oat_fd);
+10 −0
Original line number Diff line number Diff line
@@ -32,6 +32,16 @@ static constexpr int DEX2OAT_FROM_SCRATCH = 1;
static constexpr int DEX2OAT_FOR_BOOT_IMAGE      = 2;
static constexpr int DEX2OAT_FOR_FILTER          = 3;

#define ANDROID_RUNTIME_APEX_BIN "/apex/com.android.runtime/bin"
// Location of binaries in the Android Runtime APEX.
static constexpr const char* kDex2oatPath = ANDROID_RUNTIME_APEX_BIN "/dex2oat";
static constexpr const char* kDex2oatDebugPath = ANDROID_RUNTIME_APEX_BIN "/dex2oatd";
static constexpr const char* kProfmanPath = ANDROID_RUNTIME_APEX_BIN "/profmand";
static constexpr const char* kProfmanDebugPath = ANDROID_RUNTIME_APEX_BIN "/profmand";
static constexpr const char* kDexoptanalyzerPath = ANDROID_RUNTIME_APEX_BIN "/dexoptanalyzer";
static constexpr const char* kDexoptanalyzerDebugPath = ANDROID_RUNTIME_APEX_BIN "/dexoptanalyzerd";
#undef ANDROID_RUNTIME_APEX_BIN

// Clear the reference profile identified by the given profile name.
bool clear_primary_reference_profile(const std::string& pkgname, const std::string& profile_name);
// Clear the current profile identified by the given profile name (for single user).
+1 −1
Original line number Diff line number Diff line
@@ -438,7 +438,7 @@ private:
                          const char* isa) const {
        // This needs to be kept in sync with ART, see art/runtime/gc/space/image_space.cc.
        std::vector<std::string> cmd;
        cmd.push_back("/apex/com.android.runtime/bin/dex2oat");
        cmd.push_back(kDex2oatPath);
        cmd.push_back(StringPrintf("--image=%s", art_path.c_str()));
        for (const std::string& boot_part : Split(boot_cp, ":")) {
            cmd.push_back(StringPrintf("--dex-file=%s", boot_part.c_str()));