Add i686-unknown-openbsd target. #38086

Merged
merged 3 commits into from Dec 4, 2016

Projects

None yet

5 participants

@semarie
Contributor
semarie commented Nov 30, 2016

It is a preliminary work. I still have some tests failing, but I have a working rustc binary which is able to rebuild itself.

an update of libc should be required too, but I dunno how to do it with vendor/ layout.

r? @alexcrichton

@japaric
Member
japaric commented Nov 30, 2016

LGTM.

an update of libc should be required too, but I dunno how to do it with vendor/ layout.

At the very least, you'll need to update the src/liblibc submodule in this PR. I don't know the specifics about cargo vendoring though.

@alexcrichton
Member

@bors: r+

@bors
Contributor
bors commented Dec 1, 2016

๐Ÿ“Œ Commit 40c609c has been approved by alexcrichton

@semarie
Contributor
semarie commented Dec 2, 2016

@alexcrichton Could you unapprove this PR for now please ?

I have pending PR in libc (rust-lang/libc#462) that would require a new liblibc for i686-unknown-openbsd correctness.

I will update this PR once libc PR be accepted.

@japaric
Member
japaric commented Dec 2, 2016

@bors r-

Let's wait for that libc PR

@semarie
Contributor
semarie commented Dec 4, 2016

I updated liblibc submodule.
I also added OpenBSD in librustc_trans/cabi_x86.rs as target requiring particular management for returning a struct (small structs are returned as integers).

@semarie semarie OpenBSD under x86 has particular ABI for returning a struct.
It is like OSX or Windows: small structs are returned as integers.
6774e7a
@alexcrichton
Member

@bors: r+

@bors
Contributor
bors commented Dec 4, 2016

๐Ÿ“Œ Commit 6774e7a has been approved by alexcrichton

@bors
Contributor
bors commented Dec 4, 2016

โŒ›๏ธ Testing commit 6774e7a with merge 2190f6c...

@bors bors added a commit that referenced this pull request Dec 4, 2016
@bors bors Auto merge of #38086 - semarie:openbsd-i686, r=alexcrichton
Add i686-unknown-openbsd target.

It is a preliminary work. I still have some tests failing, but I have a working rustc binary which is able to rebuild itself.

an update of libc should be required too, but I dunno how to do it with vendor/ layout.

r? @alexcrichton
2190f6c
@bors bors merged commit 6774e7a into rust-lang:master Dec 4, 2016

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details
@semarie semarie deleted the semarie:openbsd-i686 branch Dec 5, 2016
@dsvensson

Isn't it better to name the option according to the struct-return-behavior, rather than referring to how it's implemented on a growing list of platforms? I have no recommendation on the name though.

@semarie
Contributor
semarie commented Dec 6, 2016

this kind of "restructuration" was outside the scope of the PR, but I tend to agree with this approch, and it could be generalized to a list of options registered by target for required behaviour.

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