mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-26 16:28:12 -07:00
Better logging.
This commit is contained in:
parent
2ef4a4e3e9
commit
cd541f34cf
3 changed files with 110 additions and 85 deletions
|
@ -59,12 +59,12 @@ class Variant(val initialProductFlavor: ProductFlavorConfig? = null,
|
|||
// // The ordering of files is: 1) build type 2) product flavor 3) default
|
||||
buildType.let {
|
||||
val dir = File(KFiles.joinDir("src", it.name, project.projectInfo.sourceDirectory))
|
||||
log(2, "Adding source for build type ${it.name}: ${dir.path}")
|
||||
log(3, "Adding source for build type ${it.name}: ${dir.path}")
|
||||
result.add(dir)
|
||||
}
|
||||
productFlavor.let {
|
||||
val dir = File(KFiles.joinDir("src", it.name, project.projectInfo.sourceDirectory))
|
||||
log(2, "Adding source for product flavor ${it.name}: ${dir.path}")
|
||||
log(3, "Adding source for product flavor ${it.name}: ${dir.path}")
|
||||
result.add(dir)
|
||||
}
|
||||
|
||||
|
|
|
@ -11,6 +11,16 @@ fun Any.log(level: Int, text: String, newLine : Boolean = true) {
|
|||
}
|
||||
}
|
||||
|
||||
fun Any.logWrap(level: Int, text1: String, text2: String, function: () -> Unit) {
|
||||
if (level <= KobaltLogger.LOG_LEVEL) {
|
||||
KobaltLogger.logger.log(javaClass.simpleName, text1, newLine = false)
|
||||
}
|
||||
function()
|
||||
if (level <= KobaltLogger.LOG_LEVEL) {
|
||||
KobaltLogger.logger.log(javaClass.simpleName, text2, newLine = true)
|
||||
}
|
||||
}
|
||||
|
||||
fun Any.debug(text: String) {
|
||||
KobaltLogger.logger.debug(javaClass.simpleName, text)
|
||||
}
|
||||
|
|
|
@ -23,7 +23,9 @@ import com.beust.kobalt.api.IClasspathDependency
|
|||
import com.beust.kobalt.api.Project
|
||||
import com.beust.kobalt.maven.dependency.MavenDependency
|
||||
import com.beust.kobalt.misc.KFiles
|
||||
import com.beust.kobalt.misc.KobaltLogger
|
||||
import com.beust.kobalt.misc.log
|
||||
import com.beust.kobalt.misc.logWrap
|
||||
import java.io.File
|
||||
|
||||
class KobaltProcessResult : ProcessResult {
|
||||
|
@ -50,7 +52,7 @@ class KobaltJavaProcessExecutor : JavaProcessExecutor {
|
|||
|
||||
class KobaltProcessOutputHandler : BaseProcessOutputHandler() {
|
||||
override fun handleOutput(processOutput: ProcessOutput) =
|
||||
log(1, "AndroidBuild output" + processOutput.standardOutput)
|
||||
log(3, "AndroidBuild output" + processOutput.standardOutput)
|
||||
}
|
||||
|
||||
class KobaltErrorReporter : ErrorReporter(ErrorReporter.EvaluationMode.STANDARD) {
|
||||
|
@ -72,7 +74,12 @@ class ProjectLayout {
|
|||
class KobaltResourceMerger {
|
||||
fun run(project: Project, variant: Variant, config: AndroidConfig, aarDependencies: List<File>,
|
||||
rDirectory: String) {
|
||||
val logger = StdLogger(StdLogger.Level.VERBOSE)
|
||||
val level = when(KobaltLogger.LOG_LEVEL) {
|
||||
3 -> StdLogger.Level.VERBOSE
|
||||
2 -> StdLogger.Level.WARNING
|
||||
else -> StdLogger.Level.ERROR
|
||||
}
|
||||
val logger = StdLogger(level)
|
||||
val androidBuilder = createAndroidBuilder(project, config, logger)
|
||||
|
||||
//
|
||||
|
@ -144,6 +151,7 @@ class KobaltResourceMerger {
|
|||
|
||||
private fun processAssets(project: Project, variant: Variant, androidBuilder: AndroidBuilder,
|
||||
aarDependencies: List<File>) {
|
||||
logWrap(2, " Processing assets...", "done") {
|
||||
val intermediates = File(
|
||||
KFiles.joinDir(AndroidFiles.intermediates(project), "assets", variant.toIntermediateDir()))
|
||||
aarDependencies.forEach {
|
||||
|
@ -153,9 +161,11 @@ class KobaltResourceMerger {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun processManifests(project: Project, variant: Variant, androidBuilder: AndroidBuilder,
|
||||
config: AndroidConfig) {
|
||||
logWrap(2, " Processing manifests...", "done") {
|
||||
val manifestOverlays = variant.allDirectories(project).map {
|
||||
File("src/$it/AndroidManifest.xml")
|
||||
}.filter {
|
||||
|
@ -181,9 +191,11 @@ class KobaltResourceMerger {
|
|||
emptyMap() /* placeHolders */,
|
||||
reportFile)
|
||||
}
|
||||
}
|
||||
|
||||
private fun processResources(project: Project, variant: Variant, androidBuilder: AndroidBuilder,
|
||||
aarDependencies: List<File>, logger: ILogger, processOutputHandler: KobaltProcessOutputHandler) {
|
||||
logWrap(2, " Processing resources...", "done") {
|
||||
val layout = ProjectLayout()
|
||||
val preprocessor = NoOpResourcePreprocessor()
|
||||
val outputDir = AndroidFiles.mergedResources(project, variant)
|
||||
|
@ -213,10 +225,13 @@ class KobaltResourceMerger {
|
|||
preprocessor)
|
||||
resourceMerger.mergeData(writer, true)
|
||||
}
|
||||
}
|
||||
|
||||
private fun mergeResources(project: Project, variant: Variant, androidBuilder: AndroidBuilder,
|
||||
aarDependencies: List<File>, rDirectory: String,
|
||||
processOutputHandler: KobaltProcessOutputHandler) {
|
||||
logWrap(2, " Merging resources...", "done") {
|
||||
|
||||
val aaptOptions = object : AaptOptions {
|
||||
override fun getAdditionalParameters() = emptyList<String>()
|
||||
override fun getFailOnMissingConfigEntry() = false
|
||||
|
@ -253,7 +268,7 @@ class KobaltResourceMerger {
|
|||
}
|
||||
|
||||
androidBuilder.processResources(aaptCommand, true, processOutputHandler)
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
fun dex(project: Project) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue