Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add check that port can be used on current platform #68

Closed
wants to merge 1 commit into from

Conversation

@kurthindenburg
Copy link
Contributor

kurthindenburg commented Mar 24, 2018

Implement a check that the current platform is in the port's
platforms list.

This only handles the current platforms statement in the Portfile.

see https://trac.macports.org/ticket/15712

Implement a check that the current platform is in the port's
platforms list.

This only handles the current platforms statement in the Portfile.

see https://trac.macports.org/ticket/15712
@kurthindenburg
Copy link
Contributor Author

kurthindenburg commented Mar 24, 2018

This is a WIP to see if this is how we want to do this. This can be committed as-is or we can wait until I figure out all the conditionals in the trac ticket. I'll also have to a lot of tests to verify it all works.

A wrong platform will error out before the arch check.

Note: the _mportexec check is for the dependencies install.

@pmetzger
Copy link
Member

pmetzger commented Mar 28, 2018

Does this handle things like platforms {darwin >=8} ?

@jmroot
Copy link
Member

jmroot commented Mar 28, 2018

No, it doesn't. This should not be merged in its current form because it does not handle platforms macosx correctly, and because we don't want all ports to error out on non-darwin platforms anyway. We should be looking at which platforms are known not to work, rather than which ones are not known to work.

@kurthindenburg
Copy link
Contributor Author

kurthindenburg commented Aug 31, 2018

I don't think I understand exactly what needs done here so I'll close this for now.

@pmetzger
Copy link
Member

pmetzger commented Aug 31, 2018

I think what was being asked for was the ability to specify conditionals describing which platforms and os versions to build or not to build on. We do desperately need a facility like this, though.

@danielluke
Copy link
Member

danielluke commented Aug 31, 2018

I think if I were running on an unsupported (or marginally supported) platform, I'd be more interested in "did this work for other people" rather than "did the maintainer test it on my platform" (I don't exhaustively test on every platform, so I wouldn't be marking all of the 'it doesn't build here' possibilities, for example).

If we collected and exposed metadata about build success/failures (from the build infrastructure and maybe also from volunteers) that port could query and use in display to users, I think that that would be more useful.

@pmetzger
Copy link
Member

pmetzger commented Aug 31, 2018

The question isn't one of "did the maintainer test it". I have ports like OCaml that I know do not run on certain OSes but I get build errors for them anyway every time I touch them, which creates noise and confusion and wastes time on the build systems. The goal is to stop trying to build on things where we know building will not work and can never work. There are a lot of such things.

@danielluke
Copy link
Member

danielluke commented Aug 31, 2018

Ok. Making life easier for maintainer / macports-build infrastructure related and not a feature for end-users.

I think we just shouldn't bother building stuff for so many (old/non-supported/not being updated) OS releases.

@pmetzger
Copy link
Member

pmetzger commented Aug 31, 2018

That's another argument to be had. For now, I'd like to mark that OCaml can't build on 10.4 and 10.5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.