[MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

classic Classic list List threaded Threaded
33 messages Options
12
Reply | Threaded
Open this post in threaded view
|

[MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
--------------------+----------------------
 Reporter:  l2dy    |      Owner:  g5pw
     Type:  defect  |     Status:  assigned
 Priority:  Normal  |  Milestone:
Component:  ports   |    Version:
 Keywords:          |       Port:  rust
--------------------+----------------------
 I updated `rust` to 1.25.0 and its llvm dependency to `llvm-6.0` in
 [77b2ac31e027672243e78942002737e7185ba125/macports-ports]. However build
 failed on OS X <= 10.9 on Buildbot with this error:

 {{{
 running: "/usr/bin/clang" "-O2" "-ffunction-sections" "-fdata-sections"
 "-fPIC" "-ffunction-sections" "-fdata-sections" "-fPIC" "--target=x86_64
 -apple-darwin" "-stdlib=libc++" "--target=x86_64-apple-darwin" "-fno-
 builtin" "-fvisibility=hidden" "-ffreestanding" "-fomit-frame-pointer"
 "-DVISIBILITY_HIDDEN" "-o"
 "/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_lang_rust/rust/work/rustc-1.25.0-src/build/x86_64
 -apple-darwin/stage0-std/x86_64-apple-darwin/release/build
 /compiler_builtins-1d69f6fbd68a066f/out/../../libcompiler_builtins
 /compiler-rt/lib/builtins/x86_64/floatundidf.o" "-c"
 "../../libcompiler_builtins/compiler-rt/lib/builtins/x86_64/floatundidf.S"
 cargo:warning=../../libcompiler_builtins/compiler-
 rt/lib/builtins/x86_64/floatundidf.S:37:11: error: unexpected token in
 directive
 cargo:warning=.balign 4 .subsections_via_symbols ; .globl ___floatundidf ;
 ; .private_extern ___floatundidf ; ___floatundidf:
 cargo:warning=          ^
 exit code: 1
 }}}

 I've only tested it on 10.13 and didn't discover this issue. Sorry for
 pushing the update in a hurry.

--
Ticket URL: <https://trac.macports.org/ticket/56322>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------
Changes (by tehcog):

 * Attachment "main.log" added.

 main.log

--
Ticket URL: <https://trac.macports.org/ticket/56322>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by pmetzger):

 Zero King, are you working on this?

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by l2dy):

 Replying to [comment:2 pmetzger]:
 > Zero King, are you working on this?

 No, I don't have an old OS X environment. But I could revert the change
 for older systems by adding an `if` block.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by pmetzger):

 Maybe Ken would be able to help testing on the old environments? He seems
 to have a bunch of them.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by ryandesign):

 The first step is to file a bug report with the developers of rust. Has
 anybody done that?

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by dbevans):

 In [changeset:"a6c03510bb38fa46bcce7310e66893347b7a686d/macports-ports"
 a6c03510bb38fa46bcce7310e66893347b7a686d/macports-ports] (master):
 {{{
 #!ConfigurableCommitTicketReference repository="macports-ports"
 revision="a6c03510bb38fa46bcce7310e66893347b7a686d"
 librsvg: only build with rust/cargo on 10.10 or better

 Rust @1.25.0 fails to build on 10.9 and earlier.

 See https://trac.macports.org/ticket/56322
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by g5pw):

 Does this bug still persist with rust 1.26?

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:8>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by l2dy):

 Replying to [comment:8 g5pw]:
 > Does this bug still persist with rust 1.26?

 Yes, see
 https://build.macports.org/builders/ports-10.9_x86_64-builder/builds/56846.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:9>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.25.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.25.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by pmetzger):

 Perhaps we should change the title to 1.26?

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:10>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9 (was: rust @1.25.0: buid failed on OS X <= 10.9)

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:11>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by kencu):

 This looks like an issue that is likely caused by the older systems using
 `as` as the assembler and the newer systems using `clang` as the
 assembler.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by kencu):

 See [ticket:37846] for details and how to force `clang` as the assembler
 on the older systems.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:13>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by g5pw):

 Thanks for the input Ken! Do you have access to a machine running 10.9? I
 don't really have any system to test that on... :/

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:14>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by tehcog):

 Replying to [comment:14 g5pw]:
 > Thanks for the input Ken! Do you have access to a machine running 10.9?
 I don't really have any system to test that on... :/

 I have mavericks and the same issue:

 {{{
 :info:build running: "/usr/bin/clang" "-O2" "-ffunction-sections" "-fdata-
 sections" "-fPIC" "-ffunction-sections" "-fdata-sections" "-fPIC" "--
 target=x86_64-apple-darwin" "-stdlib=libc++" "--target=x86_64-apple-
 darwin" "-fno-builtin" "-fvisibility=hidden" "-ffreestanding" "-fomit-
 frame-pointer" "-DVISIBILITY_HIDDEN" "-o"
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_rust/rust/work/rustc-1.26.0-src/build/x86_64
 -apple-darwin/stage0-std/x86_64-apple-darwin/release/build
 /compiler_builtins-8bee530f001b77a3/out/../../libcompiler_builtins
 /compiler-rt/lib/builtins/x86_64/floatundidf.o" "-c"
 "../../libcompiler_builtins/compiler-rt/lib/builtins/x86_64/floatundidf.S"
 :info:build cargo:warning=../../libcompiler_builtins/compiler-
 rt/lib/builtins/x86_64/floatundidf.S:37:11: error: unexpected token in
 directive
 :info:build cargo:warning=.balign 4 .subsections_via_symbols ; .globl
 ___floatundidf ; ; .private_extern ___floatundidf ; ___floatundidf:
 :info:build cargo:warning=          ^
 :info:build exit code: 1
 }}}
 However, I am a little confused as the error is indicating the use of
 clang.  If you tell me what to do, I can test what ever you have for a
 solution.  You will have to assist me though...

 Regards,

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:15>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by kencu):

 it is compiling with clang, but on 10.9 and below, it is sending the
 assembly to `as` to convert into machine code.

 the ancient `as` in `cctools` doesn't understand new-fangled assembly like
 `.subsections_via_symbols` and barfs.

 You have to force the assembly to go to llvm's integrated assembler using
 the tricks in [ticket:37846].

 At least at this moment I believe that will likely fix this. Can test
 tomorrow I think.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:16>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by kencu):

 Well, rust is very complicated, isn't it? Good luck to all of you who use
 it regularly!

 I had a HELLUVA time trying to figure out how I would get something like
 `-integrated-as` or `-Wa,-q` or `AS_INTEGRATED_ASSEMBER=1` to take
 purchase on the clang compiler's build line without messing up the `rustc`
 compiler.

 Instead of that, I tried a different approach. At some point, `clang`
 switched to making the `-integrated-as` the default on Darwin. In
 `clang-5.0`, there doesn't even seem to be a system version test for it
 any longer -- all versions of Darwin are instructed to use the
 `-integrated-as` by default.

 So the simple fix, in the end, appears to be to use a newer version of
 `clang` to build `rust`.
 {{{
 sudo port -v install cctools
 sudo port -v install rust configure.compiler=macports-clang-5.0
 }}}
 and it's building away now, well past the previous errors, on 10.9.

 Rust takes hours to build -- I'll report back when it's all done, and
 hopefully that will be all it takes to make it work.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:17>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by kencu):

 OK - that did it:
 {{{
 $ port -v installed rust
 The following ports are currently installed:
   rust @1.26.0_0 (active) platform='darwin 13' archs='x86_64'
 date='2018-05-17T17:41:46-0700'
 }}}

 just blacklist clang and all the macports-clang versions below some
 critical cutoff.

 I don't know where it is that they started defaulting to `-integrated-as`
 -- clang-5.0 works, and I'd just go with that, unless somebody wants to
 spend the time to figure it out exactly.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:18>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by g5pw):

 Oh, wow, thank you Ken for testing that so thoroughly! 🙂 The "official"
 requirements state that clang 3.x or later is supported, but I think
 there's not much harm done if we require clang-5.0.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:19>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56322: rust @1.26.0: buid failed on OS X <= 10.9

MacPorts
In reply to this post by MacPorts
#56322: rust @1.26.0: buid failed on OS X <= 10.9
---------------------+----------------------
  Reporter:  l2dy    |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  rust    |
---------------------+----------------------

Comment (by nihilus):

 This bug kinda passed me off, and the solution is trivial when one knows
 the problem.
 Just set configure.compiler = macports-clang and viola, problem solved.

--
Ticket URL: <https://trac.macports.org/ticket/56322#comment:20>
MacPorts <https://www.macports.org/>
Ports system for macOS
12