Like, try X and if it doesn't exist try Y and so on (grabbing
whatever matchs first)
I have no clue how to realize that kind of logic.
There is a `link` command in the modulemap, but a `link if exists`
doesn't sound like it is implemented now.
It's not implemented yet, but it should. Actually, more than "link if exists" i was thinking of a "link this, preferably ... if it's not there, here's a list of alternative names of this library and link whatever is available first off that list"
Otherwise, it's gonna be rough using stuff from the swift ecosystem and
editing modulemaps and writing instruction for users to do that.
As long as you point the Swift users to the direction where they can
tweak this behaviour this feels fine for me.
Well, demanding that to a developer consuming code or worst, to a final user ... for me, it feels like demanding arcanery or something alpha-looking.
But when providing OSS this really is a no-go.
At least on Linux this whole ./configure; make; make install; stuff was
created to wrestle down these distribution-depending things.
Well, I'll differ in considering autotools like a reference or standard when you implement a build system from scratch (which is the case of swift-build). At the end, it all boils down to repeating old and terrible designs, or making something cool (easy to set up, no forced fiddling to initially build and something pretty much distraction-less during development process ... I think a build system should aim for something like that, because we all benefit from something like that :D)
At my work, we're not married to any particular language and we have space to -judiciously- involve with new tech. Would love that to be the case with swift (I mainly write backend software with rust -which was a recent addition alongside the existing python codebase- and also code that does require it's share of C interop), but the whole build system story is the biggest deterrent at the moment (for now, swift is only used specifically for iOS development through xcode)
My two cents there,