Cross compiling

Hi, just wondering if there is an iPlug2 plugin cross-compilation guide for newbies.

It would be useful for the common case: “I want to offer my plugin for Mac and Windows.” As I see it, there are two basic strategies:

  1. Azure Pipelines with Github
    a) this assumes your project includes iPlug2/azure-pipelines.yml and Scripts/ci/ folder.
    b) set up Azure DevOps account.
    c) create a new Pipeline in an Azure Devops project, linked to your iPlug2 project repository.
    d) configure the Pipeline with “Existing Azure Pipelines YAML file”, choosing azure-pipelines.yml from your project repository (does this work with submodules?)

  2. Compile on your own macOS/Windows machines (or virtual machines)
    Good to spell out the obvious option.

Do I have this right? Are there any gotchas with Azure Pipelines?

Edit: Azure Pipelines configuration does not play nice with submodules (path to azure-pipelines.yml cannot traverse submodules). It wouldn’t have worked anyway; I think the pipeline configuration has to be reworked for “out-of-source” builds.

Edit 2: Looks like there is a pipeline config for OOS builds here: iPlug2OOS/.github/workflows/build-native.yml at master · iPlug2/iPlug2OOS · GitHub