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

Fix bugzilla issue 24389 - Make Phobos compile on FreeBSD 14 again. #8918

Merged
merged 1 commit into from
Feb 23, 2024

Commits on Feb 23, 2024

  1. Fix bugzilla issue 24389 - Make Phobos compile on FreeBSD 14 again.

    zlib can't be built with importC on FreeBSD 14, because qsort_r in
    stdlib.h uses some asm instructions, which dmd can't handle.
    
    dlang/dmd#16184 fixed it so that we got a
    proper error message about it (and theoretically making it so that zlib
    could be compiled on FreeBSD 14 with gdc or ldc, though I haven't tried
    that), but it didn't fix it so that it could build on dmd, since that
    would require that dmd be able to handle GNU assembly code, which isn't
    a planned feature AFAIK.
    
    dlang#8914 fixed it so that it's possible
    to build Phobos without using importC by providing a make variable, but
    it didn't do anything for FreeBSD specifically.
    
    This commit changes it so that FreeBSD sets that make variable in the
    makefile so that you don't have to do it manually to get FreeBSD 14 to
    build. It's not necessary for FreeBSD 13.2 (which is what the auto
    testers currently use), but it will be necessary for FreeBSD 14 (14.0
    currently being the latest release of FreeBSD).
    
    I can confirm from testing that explicitly setting USE_IMPORTC=1 on the
    command line will overrides this change, so that variable can still be
    set one way or the other on FreeBSD. It's just now 0 by default so that
    it will build by default on FreeBSD 14.
    jmdavis committed Feb 23, 2024
    Configuration menu
    Copy the full SHA
    e7779f6 View commit details
    Browse the repository at this point in the history