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

meson: Don't use -Wl,-no_weak_imports on <= 10.6 #7253

Merged
merged 1 commit into from May 29, 2020

Conversation

ryandesign
Copy link
Contributor

Description

meson: Don't use -Wl,-no_weak_imports on Mac OS X 10.6 and earlier.

This is a temporary workaround for build failures affecting any port that uses meson's has_function check and clang 8 or later on Mac OS X 10.6 and earlier.

Closes: https://trac.macports.org/ticket/60017
Closes: https://trac.macports.org/ticket/60308

Type(s)
  • bugfix
  • enhancement
  • security fix
Tested on

macOS 10.6.8 10K549
Xcode 3.2.6 DevToolsSupport-1806.0 10M2518

Verification

Have you

  • checked your Portfile with port lint?
  • tried existing tests with sudo port test?
  • tried a full install with sudo port -vst install?
  • tested basic functionality of all binary files?

@macportsbot
Copy link

Notifying maintainers:
@SoapZA for port meson.

@macportsbot macportsbot added by: member Created by a member with commit rights maintainer: open Affects an openmaintainer port labels May 28, 2020
@ryandesign
Copy link
Contributor Author

After this is merged we should force a build of all ports that depend on meson on the 10.6 buildbot workers since it's been broken for so long.

@macportsbot
Copy link

Travis Build #11893 Failed.

Lint results
--->  Verifying Portfile for meson
--->  0 errors and 0 warnings found.

Port meson success on xcode10.3. Log
Port meson's dependencies fail on xcode9.4. Log
Port meson success on xcode8.3. Log
Port meson success on xcode7.3. Log

@kencu
Copy link
Contributor

kencu commented May 28, 2020

Although getting rid of the irritating flag is nice, I don't understand how it is passing the test to get added.

The test is supposed to be testing the Xcode version, and this is 3.2.6 on Leopard.

The test is supposed to have nothing whatsoever to do with the version of clang.

Anyway, dropping the flag is good -- what is really going on here is unclear.

@kencu
Copy link
Contributor

kencu commented May 28, 2020

3.2.6 on SnowLeopard, I meant.

@kencu
Copy link
Contributor

kencu commented May 28, 2020

One more --as the no_weak_imports flag is supported only as of Xcode 8, the presence of this flag should cause the same linker errors on every system less than Xcode 8. -- what is that? 10.11?

Reading through the meson source (is a tangled web...) I think they try to map all clangs back to an llvm equivalent -- although I haven't found that exact bit of code that does that yet -- and then they do indeed try to equate clang 8.0 means Xcode 8.0 means the linker should support this flag.

@SoapZA
Copy link
Contributor

SoapZA commented May 28, 2020

I'm fine with this. @ryandesign can we get this upstreamed?

@kencu
Copy link
Contributor

kencu commented May 28, 2020

It's not upstreamable (it just deletes a chunk of code they specifically added to fix an issue) -- although upstream is trying to sort out what the real solution might be.

@ryandesign ryandesign merged commit a54674f into macports:master May 29, 2020
@ryandesign ryandesign deleted the meson branch May 29, 2020 15:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
by: member Created by a member with commit rights maintainer: open Affects an openmaintainer port
4 participants