[MacPorts] #59717: clang >= 3.4: Unable to build/bootstrap on Intel Tiger
MacPorts
noreply at macports.org
Sun Nov 17 23:30:14 UTC 2019
#59717: clang >= 3.4: Unable to build/bootstrap on Intel Tiger
-------------------------------------------------+-------------------------
Reporter: dgelessus | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: tiger i386
Port: libcxx llvm-3.4 clang-3.4 llvm-3.7 |
clang-3.7 |
-------------------------------------------------+-------------------------
Comment (by dgelessus):
> are you sure you want to do this? If it's for fun and sport, fine.
Otherwise, forget it.
My fun and sport is unusual ;) So far I haven't run into anything that
seems unreasonably complicated to fix, so I want to see how far I can get.
I'm aware that Intel Tiger doesn't have much practical use (and I have
this machine dual-booted to 10.7, which I use for most things), but I'm
happy to submit patches for any part of this that I can work out. (As long
as MacPorts core accepts it - if this would be better off in a separate
repo to not clutter up the core, let me know.)
> you can't backport macports-libstdc++ into clang 3.4, I believe, as the
guts that make it work didn't show up until clang-3.9, and were backported
into 3.8.
Interesting. I didn't have much trouble adjusting the +libstdcxx patch
file from 5.0 to work with 3.4 and 3.7, though I haven't tested if it
actually works as expected. All I know is that the flag is accepted and
clang doesn't crash as a result. Right now I only use -stdlib=macports-
libstdc++ in clang-3.4 to work around some quirk with how clang-3.7's
configure script is called (when checking that the C++ compiler is
working, it includes the flag, even though the rest of the llvm/clang-3.7
build uses -stdlib=libc++). I need to look into that again in more detail,
it's probably better to fix the configure script than to patch clang-3.4
just for that.
> but 3.4 is too far back to go, and --- why? use 3.8 instead.
Currently I'm following the bootstrap chain that MacPorts suggested by
default. clang-3.4 and libcxx are apparently working (nothing crashed yet
at least) and the clang-3.7 build is in progress right now. That would
allow building newer clangs, assuming everything worked up to that point.
Of course, the newer clangs will most likely require more work to get
running on Tiger...
I'm also fairly certain that this bootstrap sequence worked fine in the
past (at some point during MacPorts 2.5.4, which I know isn't very
specific). That installation broke at some point (couldn't upgrade most
ports anymore, because almost everything triggered the dependency cycle in
clang-3.4), so I uninstalled almost everything and tried to get the clang
versions installed again.
I haven't tried anything using gcc yet - it's quite possible that that
would be a better route than the old clang versions.
--
Ticket URL: <https://trac.macports.org/ticket/59717#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list