gecko-dev/mobile/android/gradle/debug_level.gradle

21 строка
1.0 KiB
Groovy
Исходник Обычный вид История

/* -*- Mode: Groovy; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*-
Bug 1353055 - Strip 'vars' debugging information when building Fennec --with-gradle. r=ahunt To observe the difference, use `javap -l`. For example, for automationRelease and automationDebug built with `./mach gradle clean app:assembleAutomationRelease app:assembleAutomationDebug`, I see locally: $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/release/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 <snip> } $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/debug/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 LocalVariableTable: Start Length Slot Name Signature 0 16 0 this Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu$1; 0 16 1 this$0 Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu; 0 16 2 x0 Landroid/os/Handler; <snip> } MozReview-Commit-ID: 3HmiGkHhowQ --HG-- extra : rebase_source : c84d8d4b8ac813e49db0c61a30c7098ff2eae3f4
2017-04-03 23:41:11 +03:00
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
// Bug 1353055 - Strip 'vars' debugging information to agree with moz.build.
ext.configureVariantDebugLevel = { variant ->
// Like 'debug', 'release', or 'withGeckoBinaries'.
def buildType = variant.buildType.name
// For :app, like 'local', 'localOld', or 'official'. For other projects, null.
def audienceDimension = variant.productFlavors[0]?.name
Bug 1353055 - Strip 'vars' debugging information when building Fennec --with-gradle. r=ahunt To observe the difference, use `javap -l`. For example, for automationRelease and automationDebug built with `./mach gradle clean app:assembleAutomationRelease app:assembleAutomationDebug`, I see locally: $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/release/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 <snip> } $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/debug/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 LocalVariableTable: Start Length Slot Name Signature 0 16 0 this Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu$1; 0 16 1 this$0 Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu; 0 16 2 x0 Landroid/os/Handler; <snip> } MozReview-Commit-ID: 3HmiGkHhowQ --HG-- extra : rebase_source : c84d8d4b8ac813e49db0c61a30c7098ff2eae3f4
2017-04-03 23:41:11 +03:00
// The default is 'lines,source,vars', which includes debugging information
// that is quite large: roughly 500kb for Fennec. Therefore we remove
// 'vars' unless we're producing a debug build, where it is useful.
if (!'debug'.equals(buildType) || 'official'.equals(audienceDimension)) {
Bug 1353055 - Strip 'vars' debugging information when building Fennec --with-gradle. r=ahunt To observe the difference, use `javap -l`. For example, for automationRelease and automationDebug built with `./mach gradle clean app:assembleAutomationRelease app:assembleAutomationDebug`, I see locally: $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/release/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 <snip> } $ javap -l objdir-droid/gradle/build/mobile/android/app/intermediates/classes/automation/debug/org/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu\$1.class Compiled from "ActivityStreamContextMenu.java" class org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1 extends org.mozilla.gecko.util.UIAsyncTask$WithoutParams<java.lang.Boolean> { final android.view.MenuItem val$bookmarkItem; final org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu this$0; org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu$1(org.mozilla.gecko.home.activitystream.menu.ActivityStreamContextMenu, android.os.Handler, android.view.MenuItem); LineNumberTable: line 103: 0 LocalVariableTable: Start Length Slot Name Signature 0 16 0 this Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu$1; 0 16 1 this$0 Lorg/mozilla/gecko/home/activitystream/menu/ActivityStreamContextMenu; 0 16 2 x0 Landroid/os/Handler; <snip> } MozReview-Commit-ID: 3HmiGkHhowQ --HG-- extra : rebase_source : c84d8d4b8ac813e49db0c61a30c7098ff2eae3f4
2017-04-03 23:41:11 +03:00
variant.javaCompile.options.debugOptions.debugLevel = 'lines,source'
}
}