mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Make sure buildConfig is turned on for all the 3rd party libraries (#40939)
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/40939 Currently some libs on RN 0.73 are broken as the default for Build Config generation changed from true to false since AGP 8.x. This reverts the behavior to the old flag. Closes #40791 Closes #40559 Changelog: [Internal] [Changed] - Make sure buildConfig is turned on for all the 3rd party libraries Reviewed By: mdvacca Differential Revision: D50270382 fbshipit-source-id: 02dcb031c577f65be2f41d9da0334c1b3d89e4c5
This commit is contained in:
+4
-2
@@ -12,7 +12,8 @@ import com.android.build.gradle.internal.tasks.factory.dependsOn
|
||||
import com.facebook.react.internal.PrivateReactExtension
|
||||
import com.facebook.react.tasks.GenerateCodegenArtifactsTask
|
||||
import com.facebook.react.tasks.GenerateCodegenSchemaTask
|
||||
import com.facebook.react.utils.AgpConfiguratorUtils.configureBuildConfigFields
|
||||
import com.facebook.react.utils.AgpConfiguratorUtils.configureBuildConfigFieldsForApp
|
||||
import com.facebook.react.utils.AgpConfiguratorUtils.configureBuildConfigFieldsForLibraries
|
||||
import com.facebook.react.utils.AgpConfiguratorUtils.configureDevPorts
|
||||
import com.facebook.react.utils.BackwardCompatUtils.configureBackwardCompatibilityReactMap
|
||||
import com.facebook.react.utils.DependencyUtils.configureDependencies
|
||||
@@ -64,7 +65,7 @@ class ReactPlugin : Plugin<Project> {
|
||||
}
|
||||
|
||||
configureReactNativeNdk(project, extension)
|
||||
configureBuildConfigFields(project, extension)
|
||||
configureBuildConfigFieldsForApp(project, extension)
|
||||
configureDevPorts(project)
|
||||
configureBackwardCompatibilityReactMap(project)
|
||||
|
||||
@@ -83,6 +84,7 @@ class ReactPlugin : Plugin<Project> {
|
||||
|
||||
// Library and App Configurations
|
||||
configureJavaToolChains(project)
|
||||
configureBuildConfigFieldsForLibraries(project)
|
||||
}
|
||||
|
||||
private fun checkJvmVersion(project: Project) {
|
||||
|
||||
+11
-1
@@ -18,7 +18,7 @@ import org.gradle.api.plugins.AppliedPlugin
|
||||
@Suppress("UnstableApiUsage")
|
||||
internal object AgpConfiguratorUtils {
|
||||
|
||||
fun configureBuildConfigFields(project: Project, extension: ReactExtension) {
|
||||
fun configureBuildConfigFieldsForApp(project: Project, extension: ReactExtension) {
|
||||
val action =
|
||||
Action<AppliedPlugin> {
|
||||
project.extensions.getByType(AndroidComponentsExtension::class.java).finalizeDsl { ext ->
|
||||
@@ -35,6 +35,16 @@ internal object AgpConfiguratorUtils {
|
||||
project.pluginManager.withPlugin("com.android.library", action)
|
||||
}
|
||||
|
||||
fun configureBuildConfigFieldsForLibraries(appProject: Project) {
|
||||
appProject.rootProject.allprojects { subproject ->
|
||||
subproject.pluginManager.withPlugin("com.android.library") {
|
||||
subproject.extensions.getByType(AndroidComponentsExtension::class.java).finalizeDsl { ext ->
|
||||
ext.buildFeatures.buildConfig = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun configureDevPorts(project: Project) {
|
||||
val devServerPort =
|
||||
project.properties["reactNativeDevServerPort"]?.toString() ?: DEFAULT_DEV_SERVER_PORT
|
||||
|
||||
Reference in New Issue
Block a user