nokeedev / gradle-native

The home of anything about Gradle support for natively compiled languages

Home Page:https://nokee.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Validate Xcode build adapter against Signal-iOS build

lacasseio opened this issue · comments

As a user of the Xcode build adapter, I want to build a project with similar complexity as Signal-iOS build so that I can prove the build adapter works as advertised.

Acceptance Criteria

  • When invoking gradle Signal -Dconfiguration=Debug -Dsdk=iphonesimulator the build completes successfully.

The Signal build has the following particularities:

  • You must clone the Git submodules
  • You must first invoke make dependencies
  • Cocopods installation seems to be failing; hence the build adapter must skip this step

There is also a particular behaviour that is triggered by Xcode when building the whole workspace, that is, the use of Clang vfsoverlay. It needs to be clarified why this particular behaviour is only triggered during a workspace build. The solution generates and passes the overlays to the target build. We are still validating the solution.

The vfsoverlay should be something that is composed into the build adapter. This means we need a task that creates the overlay data, exports the data, another task that merges the overlay data into a usable file, and finally then passes it to the build settings. We need to merge the overlay because -ivfsoverlay (clang) can only be specified once as opposed to -vfsoverlay (swiftc).