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 i686-unknown-openbsd target. #38086

Merged
merged 3 commits into from Dec 4, 2016
Merged

Add i686-unknown-openbsd target. #38086

merged 3 commits into from Dec 4, 2016

Conversation

@semarie
Copy link
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
Copy link
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
Copy link
Member

alexcrichton commented Dec 1, 2016

@bors: r+

@bors
Copy link
Contributor

bors commented Dec 1, 2016

📌 Commit 40c609c has been approved by alexcrichton

@semarie
Copy link
Contributor Author

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
Copy link
Member

japaric commented Dec 2, 2016

@bors r-

Let's wait for that libc PR

@semarie semarie force-pushed the semarie:openbsd-i686 branch from 40c609c to f2dbcd6 Dec 4, 2016
@semarie
Copy link
Contributor Author

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).

It is like OSX or Windows: small structs are returned as integers.
@semarie semarie force-pushed the semarie:openbsd-i686 branch from f2dbcd6 to 6774e7a Dec 4, 2016
@alexcrichton
Copy link
Member

alexcrichton commented Dec 4, 2016

@bors: r+

@bors
Copy link
Contributor

bors commented Dec 4, 2016

📌 Commit 6774e7a has been approved by alexcrichton

@bors
Copy link
Contributor

bors commented Dec 4, 2016

Testing commit 6774e7a with merge 2190f6c...

bors added a commit that referenced this pull request Dec 4, 2016
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
@bors bors merged commit 6774e7a into rust-lang:master Dec 4, 2016
2 checks passed
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

This comment has been minimized.

Copy link

dsvensson commented on src/librustc_trans/cabi_x86.rs in 6774e7a Dec 6, 2016

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.

This comment has been minimized.

Copy link
Contributor

bdrewery replied Feb 26, 2018

Done here #48560

@semarie
Copy link
Contributor Author

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
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

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