Multi-target projects as references

I have a solution with ios and macos projects referencing a multi target project. Would it be possible to only build whats required ?

It looks to me as though its building the linux and .net targets as well.


Hmm. Maybe. the way I do this now is I just enable the targets I need.

I’l see what I can do. What gets build currently also depends on the “Goal”. This isn’t well documented yet, When you do a build in Fire, all Enabled projects/targets get built. if you do a Run orTest, Fore passes the --goal:<project>[;<target>] switch, and that builds only the projects that the Active project depends on. I could loom at extending that mode to also limit the targets;

main problem is, which targets are used for project References is determined in the ResolveReferences task, but the build order (and what projects to build at all) is determined easy earlier, before the first project even builds…

Compromise: I’ll allow a Target property on the project references to make it specify a specific target you want. if set, building for a goal will only build that target. Does that sound fair/good enough?

Resolving a project ref to a target unfortunately requires a lot of logic, and information I don’t have if that project wasn’t built yet :(.

1 Like

Thanks, I think so.

1 Like

Afraid I wont fix this; there’s too much chicken-and-egg problem going on here to solve this cleanly, sorry.

Ok. Thanks for looking into it.

1 Like

FWIW, as part of this I did make some fixes to how Goals work (it still built too much), and documented the switch at Command-Line Switches.

1 Like