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 DragonFlyBSD support for druntime #1999

Merged
merged 1 commit into from Feb 12, 2018

Conversation

@dkgroot
Contributor

dkgroot commented Dec 18, 2017

Related: DMD Pull Request
Bootstrapped via 'dmd-cxx' branch: See

Related PR:

Notes:

  • Fixed getAddrInfo issue in phobos/std/socket.d by giving addrinfo.ai_socktype a default value of SOCK_STREAM.
    (Without it getAddrInfo() will generate an error:'servname not supported for ai_socktype' when hints.ai_socktype is not set.)
  • 1 minor dragonfly related FIXME entries in src/core/sync/mutex.d (Caused by the implementation of pthread implementation on DragonFlyBSD): trylock after destroying a mutex does not return an error. (similar to 'Use after free')
@dlang-bot

This comment has been minimized.

Show comment
Hide comment
@dlang-bot

dlang-bot Dec 18, 2017

Contributor

Thanks for your pull request and interest in making D better, @dkgroot! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please verify that your PR follows this checklist:

  • My PR is fully covered with tests (you can see the annotated coverage diff directly on GitHub with CodeCov's browser extension
  • My PR is as minimal as possible (smaller, focused PRs are easier to review than big ones)
  • My PR follows the DStyle
  • I have provided a detailed rationale explaining my changes
  • New or modified functions have Ddoc comments (with Params: and Returns:)

Please see CONTRIBUTING.md for more information.


If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment.

Bugzilla references

Your PR doesn't reference any Bugzilla issue.

If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog.

Contributor

dlang-bot commented Dec 18, 2017

Thanks for your pull request and interest in making D better, @dkgroot! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please verify that your PR follows this checklist:

  • My PR is fully covered with tests (you can see the annotated coverage diff directly on GitHub with CodeCov's browser extension
  • My PR is as minimal as possible (smaller, focused PRs are easier to review than big ones)
  • My PR follows the DStyle
  • I have provided a detailed rationale explaining my changes
  • New or modified functions have Ddoc comments (with Params: and Returns:)

Please see CONTRIBUTING.md for more information.


If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment.

Bugzilla references

Your PR doesn't reference any Bugzilla issue.

If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog.

@nemanja-boric-sociomantic

This comment has been minimized.

Show comment
Hide comment
@nemanja-boric-sociomantic

nemanja-boric-sociomantic Dec 18, 2017

Contributor

It would be very nice if you could split this into several commits (as per your checklist in the PR), and amend it to say "Add DragonFlyBSD support for druntime" instead of "Port druntime to ..."

Contributor

nemanja-boric-sociomantic commented Dec 18, 2017

It would be very nice if you could split this into several commits (as per your checklist in the PR), and amend it to say "Add DragonFlyBSD support for druntime" instead of "Port druntime to ..."

Show outdated Hide outdated posix.mak

@dkgroot dkgroot changed the title from Port of druntime to DragonFlyBSD to Add DragonFlyBSD support for druntime Dec 18, 2017

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Dec 18, 2017

Contributor

@nemanja-boric-sociomantic
I had a little mishap during rebasing on top of master. Before this these were seperate commits. It it helps i added some comments (See above) to clarify the locations where the issues arose).

Contributor

dkgroot commented Dec 18, 2017

@nemanja-boric-sociomantic
I had a little mishap during rebasing on top of master. Before this these were seperate commits. It it helps i added some comments (See above) to clarify the locations where the issues arose).

Show outdated Hide outdated src/core/memory.d
@nemanja-boric-sociomantic

This comment has been minimized.

Show comment
Hide comment
@nemanja-boric-sociomantic

nemanja-boric-sociomantic Dec 18, 2017

Contributor

It it helps i added some comments (See above) to clarify the locations where the issues arose).

Comments do really help, thanks and thank you for the work!

Contributor

nemanja-boric-sociomantic commented Dec 18, 2017

It it helps i added some comments (See above) to clarify the locations where the issues arose).

Comments do really help, thanks and thank you for the work!

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Dec 18, 2017

Contributor

@nemanja-boric-sociomantic Thanks and Thanks for the review.
I could use a little help with these three open FIXME's. It is not always clear what the intent of a unittest is. Some of them could use a couple of comments as well.

Contributor

dkgroot commented Dec 18, 2017

@nemanja-boric-sociomantic Thanks and Thanks for the review.
I could use a little help with these three open FIXME's. It is not always clear what the intent of a unittest is. Some of them could use a couple of comments as well.

Show outdated Hide outdated posix.mak
Show outdated Hide outdated posix.mak
Show outdated Hide outdated posix.mak
};
_x87 x87;
uint mxcsr;

This comment has been minimized.

@ibuclaw

ibuclaw Dec 18, 2017

Member

Not related to this patch, but I've just noticed that the OpenBSD branch is wrong.

@ibuclaw

ibuclaw Dec 18, 2017

Member

Not related to this patch, but I've just noticed that the OpenBSD branch is wrong.

@driusan

I compared the consts against /usr/include/*.h

Show outdated Hide outdated src/core/stdc/errno.d
Show outdated Hide outdated src/core/stdc/math.d
{
alias off_t fpos_t;
/// See /usr/include/stdio.h

This comment has been minimized.

@driusan

driusan Dec 22, 2017

This is a little confusing, because in /usr/include/stdio.h it's called "__FILE_public" not "__sFILE": `http://gitweb.dragonflybsd.org/dragonfly.git/blob/f30091155bf042c3e2934ca63573dabebe30f556:/include/stdio.h#l101

@driusan

driusan Dec 22, 2017

This is a little confusing, because in /usr/include/stdio.h it's called "__FILE_public" not "__sFILE": `http://gitweb.dragonflybsd.org/dragonfly.git/blob/f30091155bf042c3e2934ca63573dabebe30f556:/include/stdio.h#l101

This comment has been minimized.

@dkgroot

dkgroot Dec 22, 2017

Contributor

Will rename struct __sFILE to struct __FILE_public as per your request.

@dkgroot

dkgroot Dec 22, 2017

Contributor

Will rename struct __sFILE to struct __FILE_public as per your request.

@@ -2,7 +2,7 @@
* $(RED Deprecated. Use $(D core.sys.darwin.sys.mman) instead. This module
* will be removed in June 2018.)
*
* D header file for FreeBSD
* D header file for OSX

This comment has been minimized.

@driusan

driusan Dec 22, 2017

This change doesn't look related to DragonFly?

@driusan

driusan Dec 22, 2017

This change doesn't look related to DragonFly?

This comment has been minimized.

@joakim-noah

joakim-noah Dec 22, 2017

Member

Yep, just a random comment fix, no problem with including it.

@joakim-noah

joakim-noah Dec 22, 2017

Member

Yep, just a random comment fix, no problem with including it.

This comment has been minimized.

@dkgroot

dkgroot Dec 22, 2017

Contributor

Reverted
@joakim-noah Woops :-)

@dkgroot

dkgroot Dec 22, 2017

Contributor

Reverted
@joakim-noah Woops :-)

This comment has been minimized.

@joakim-noah

joakim-noah Dec 22, 2017

Member

You can just remove that last revert commit.

@joakim-noah

joakim-noah Dec 22, 2017

Member

You can just remove that last revert commit.

dkgroot added a commit to dkgroot-ldc/druntime that referenced this pull request Dec 22, 2017

dkgroot added a commit to dkgroot-ldc/druntime that referenced this pull request Dec 22, 2017

@joakim-noah

This comment has been minimized.

Show comment
Hide comment
@joakim-noah

joakim-noah Dec 22, 2017

Member

btw, you don't need to mirror your druntime/phobos patches here to the LDC repos. I'm going to compare your pulls here and just try to cherry-pick and merge them to the LDC ltsmaster and master branches once they're merged here, so you can just limit your ldc pulls eventually to any changes you had to make in addition to these.

For now, it doesn't hurt that you're trying to keep the two in sync, and the two separate PRs point me to potential merge conflicts, but just giving you a head's up that you don't need to spend a ton of time on the ldc pulls, as I'll likely just key off these upstream pulls.

Member

joakim-noah commented Dec 22, 2017

btw, you don't need to mirror your druntime/phobos patches here to the LDC repos. I'm going to compare your pulls here and just try to cherry-pick and merge them to the LDC ltsmaster and master branches once they're merged here, so you can just limit your ldc pulls eventually to any changes you had to make in addition to these.

For now, it doesn't hurt that you're trying to keep the two in sync, and the two separate PRs point me to potential merge conflicts, but just giving you a head's up that you don't need to spend a ton of time on the ldc pulls, as I'll likely just key off these upstream pulls.

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Dec 22, 2017

Contributor

@joakim-noah Ooh that's a real relief. Trying to juggle / sync 11 PR's was a little daunting, to be honest. Nice to see that we seem to be making real progress on all of this :-)

Contributor

dkgroot commented Dec 22, 2017

@joakim-noah Ooh that's a real relief. Trying to juggle / sync 11 PR's was a little daunting, to be honest. Nice to see that we seem to be making real progress on all of this :-)

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Jan 15, 2018

Contributor

Hi guys, would it help if this PR were be split by file, so that it would make a little more progress ?

Contributor

dkgroot commented Jan 15, 2018

Hi guys, would it help if this PR were be split by file, so that it would make a little more progress ?

@joakim-noah

This comment has been minimized.

Show comment
Hide comment
@joakim-noah

joakim-noah Jan 16, 2018

Member

No, somebody just needs to make sure all review comments have been addressed and make a decision.

Member

joakim-noah commented Jan 16, 2018

No, somebody just needs to make sure all review comments have been addressed and make a decision.

@wilzbach

This comment has been minimized.

Show comment
Hide comment
@wilzbach

wilzbach Jan 16, 2018

Member

Hi guys, would it help if this PR were be split by file, so that it would make a little more progress ?
No, somebody just needs to make sure all review comments have been addressed and make a decision.

In my experience it does help. However, splitting it up by file might be a bit to granular.
Did you see @nemanja-boric-sociomantic's comment at the top:

It would be very nice if you could split this into several commits (as per your checklist in the PR)

For example, gc + rtcould one "package" PR:

image

  • this is more work entirely on your side (for reviewers smaller PRs are less "mental" work)
  • as @joakim-noah pointed out it's not a requirement
Member

wilzbach commented Jan 16, 2018

Hi guys, would it help if this PR were be split by file, so that it would make a little more progress ?
No, somebody just needs to make sure all review comments have been addressed and make a decision.

In my experience it does help. However, splitting it up by file might be a bit to granular.
Did you see @nemanja-boric-sociomantic's comment at the top:

It would be very nice if you could split this into several commits (as per your checklist in the PR)

For example, gc + rtcould one "package" PR:

image

  • this is more work entirely on your side (for reviewers smaller PRs are less "mental" work)
  • as @joakim-noah pointed out it's not a requirement
@joakim-noah

This comment has been minimized.

Show comment
Hide comment
@joakim-noah

joakim-noah Jan 16, 2018

Member

He already split this pull into three after Nemenja said that. Don't split again, I will round up the review and try to get it going here.

Member

joakim-noah commented Jan 16, 2018

He already split this pull into three after Nemenja said that. Don't split again, I will round up the review and try to get it going here.

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Jan 24, 2018

Contributor

Ping @ZombineDev @CyberShadow @klickverbot @MartinNowak
Are there any issues with this PR ? Thanks in advance for you review !

DragonFly Based CI

Contributor

dkgroot commented Jan 24, 2018

Ping @ZombineDev @CyberShadow @klickverbot @MartinNowak
Are there any issues with this PR ? Thanks in advance for you review !

DragonFly Based CI

@wilzbach

OK everything looks properly scoped in version blocks to me. Anything else blocking this PR?

@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Feb 9, 2018

Contributor

@wilzbach Thanks a lot !
Thanks everyone for reviewing !

Contributor

dkgroot commented Feb 9, 2018

@wilzbach Thanks a lot !
Thanks everyone for reviewing !

@joakim-noah

A few nits left.

Show outdated Hide outdated posix.mak
Show outdated Hide outdated src/core/stdc/errno.d
Show outdated Hide outdated src/core/sync/mutex.d
Show outdated Hide outdated src/rt/backtrace/dwarf.d
Show outdated Hide outdated src/rt/backtrace/elf.d
@joakim-noah

Bit more to do.

Show outdated Hide outdated src/core/sync/mutex.d
Show outdated Hide outdated src/rt/backtrace/elf.d
@dkgroot

This comment has been minimized.

Show comment
Hide comment
@dkgroot

dkgroot Feb 11, 2018

Contributor

@joakim-noah Thanks for your remarks/comments/review !

Contributor

dkgroot commented Feb 11, 2018

@joakim-noah Thanks for your remarks/comments/review !

@wilzbach wilzbach added the auto-merge label Feb 12, 2018

@dlang-bot dlang-bot merged commit 2613173 into dlang:master Feb 12, 2018

5 checks passed

CyberShadow/DAutoTest Documentation OK (1038 additions, 1159 deletions)
Details
auto-tester Pass: 10
Details
ci/circleci Your tests passed on CircleCI!
Details
codecov/patch 100% of diff hit (target 74.647%)
Details
continuous-integration/jenkins/pr-merge This commit looks good
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment