google / google/ksp

kspCommonMainKotlinMetadata triggers ios related tasks when building for android

Open
#2,355 2 comments 4 reactions 0 assignees View on GitHub
Gradle P4
Dominant language
Kotlin
Stars
3.5k
Forks
415
Avg merge
1d 2h
Merged PRs (30d)
53

Description

Hi, I am using [reakt-native-toolkit](https://github.com/voize-gmbh/reakt-native-toolkit) in my multi module project.

The project layout is the following:
```
composeApp
| ├──ios
| | └──cocoapods
| | ├──Reachability
| | └──LoremIpsum (link only)
| └──android
|
└──shared
├──ios
| └──cocoapods
| └──LoremIpsum
└──android
```

When I run `./gradlew installDebug --dry-run` I get the following output:

```
:shared:xcodeVersion SKIPPED
:shared:podGenIos SKIPPED
:shared:podInstallSyntheticIos SKIPPED
:shared:podSetupBuildLoremIpsumIos SKIPPED
:shared:podBuildLoremIpsumIos SKIPPED
:shared:cinteropLoremIpsumIosArm64 SKIPPED
:shared:podSetupBuildLoremIpsumIosSimulator SKIPPED
:shared:podBuildLoremIpsumIosSimulator SKIPPED
:shared:cinteropLoremIpsumIosSimulatorArm64 SKIPPED
:shared:cinteropLoremIpsumIosX64 SKIPPED
:shared:commonizeCInterop SKIPPED
:shared:transformNativeMainCInteropDependenciesMetadata SKIPPED
:shared:transformNativeMainDependenciesMetadata SKIPPED
:shared:compileNativeMainKotlinMetadata SKIPPED
:shared:metadataNativeMainProcessResources SKIPPED
:shared:metadataNativeMainClasses SKIPPED
:shared:transformAppleMainCInteropDependenciesMetadata SKIPPED
:shared:transformAppleMainDependenciesMetadata SKIPPED
:shared:compileAppleMainKotlinMetadata SKIPPED
:shared:metadataAppleMainProcessResources SKIPPED
:shared:metadataAppleMainClasses SKIPPED
:shared:transformIosMainCInteropDependenciesMetadata SKIPPED
:shared:transformIosMainDependenciesMetadata SKIPPED
:shared:compileIosMainKotlinMetadata SKIPPED
:shared:metadataIosMainProcessResources SKIPPED
:shared:metadataIosMainClasses SKIPPED
:shared:iosArm64MetadataElements SKIPPED
:shared:iosSimulatorArm64MetadataElements SKIPPED
:shared:iosX64MetadataElements SKIPPED
:composeApp:transformCommonMainDependenciesMetadata SKIPPED
:composeApp:kspCommonMainKotlinMetadata SKIPPED
```

As you can see, there are multiple ios related tasks triggered (`podBuild...`, `ios...`) and they are only triggered for `:shared` module.

You can find a [build scan](https://scans.gradle.com/s/avhar45sscvvi) and reproducer in the attachment

[ComposeKSPCocoaPods.zip](https://github.com/user-attachments/files/19024950/ComposeKSPCocoaPods.zip)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.