[GHC] #10234: Validate fails on armhf

#10234: Validate fails on armhf -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build | Version: 7.11 System | Operating System: Unknown/Multiple Keywords: llvm | Type of failure: Other Architecture: | Blocked By: Unknown/Multiple | Related Tickets: Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- The failure is: {{{ /usr/bin/install -c -m 644 libraries/prologue.txt "/home/erikd/ghc- git/bindisttest/install dir/share/doc/ghc/html/libraries/" /usr/bin/install -c -m 755 libraries/gen_contents_index "/home/erikd/ghc- git/bindisttest/install dir/share/doc/ghc/html/libraries/" bindisttest/"install dir"/bin/runghc bindisttest/HelloWorld > bindisttest/output diff -U 1 bindisttest/output bindisttest/expected_output bindisttest/"install dir"/bin/ghc --make bindisttest/HelloWorld [1 of 1] Compiling Main ( bindisttest/HelloWorld.lhs, bindisttest/HelloWorld.o ) <no location info>: Warning: Couldn't figure out LLVM version! Make sure you have installed LLVM ghc: could not execute: opt }}} Since this is armhf, this was built with llvm, and the configure process found the correct versions of the llvm tools; ie `/usr/bin/llc-3.6` and `/usr/bin/opt-3.6`. Furthermore, file `inplace/lib/settings` file specifies the correct versions. However, file `bindisttest/install dir/lib/ghc-7.11.20150402/settings` file just uses `llc` and `opt` which don't actually exist. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: Validate fails on armhf -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by erikd): The `configure` script in `bindistprep/ghc-7.11.20150402` contains: {{{ if test -z "$LlcCmd" then SettingsLlcCommand="llc" else SettingsLlcCommand="$LlcCmd" fi if test -z "$OptCmd" then SettingsOptCommand="opt" else SettingsOptCommand="$OptCmd" fi }}} and niether `LlcCmd` not `OptCmd` variables are set anywhere. Obviously, that is no longer sufficient. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: Validate fails on armhf -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by erikd): It seems the distribution tarball has its own configure script (generated from `distrib/configure.ac.in`) which needs to be updated to include some of the configure magic in the top level `configure.ac`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: Validate fails on armhf -------------------------------------+------------------------------------- Reporter: erikd | Owner: erikd Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Changes (by erikd): * owner: => erikd Comment: Currently testing a patch for this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: erikd Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: erikd Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Changes (by erikd): * differential: => Phab:D828 Comment: The patch in Phab:828 validates fine (ie successfully builds the binary- dist) on both amd64-linux and armhf-linux. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure
-------------------------------------+-------------------------------------
Reporter: erikd | Owner: erikd
Type: bug | Status: new
Priority: normal | Milestone: 7.12.1
Component: Build System | Version: 7.11
Resolution: | Keywords: llvm
Operating System: Unknown/Multiple | Architecture:
Type of failure: Other | Unknown/Multiple
Blocked By: | Test Case:
Related Tickets: | Blocking:
| Differential Revisions: Phab:D828
-------------------------------------+-------------------------------------
Comment (by Erik de Castro Lopo

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: erikd Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Comment (by erikd): This exact patch should not be pulled into the 7.10 branch, but it might make sense to pull in a 7.10 specific version of this patch. Specifically, a version of this patch that requires the llvm-3.4 versions of `llc` and `opt`. @rwbarton, is this a good idea? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: erikd Type: bug | Status: merge Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Changes (by rwbarton): * status: new => merge Comment: I think you mean 3.5, not 3.4. But yes, then the bindist will automatically do the right thing on systems like mine (llc-3.4 and llc-3.5 both installed, with llc being a symlink to llc-3.4). -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Changes (by erikd): * owner: erikd => * status: merge => new Comment: @rwbarton Are you sure about 3.5 working? I seem to remember an issue about `def$...` symbols. On the other hand, I know 3.4 works with 7.10. Also this patch alone is insufficient (it also needs 42448e3757f257) and a change to chose a version of llvm other than 3.6. Working on modified versions of these two patches. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Comment (by erikd): On amd64-linux building from the ghc-7.10 git branch, there are two llvm backend related validation errors with llvm 3.4 and none with llvm-3.5. The build on armhf-linux is still in progress. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure
-------------------------------------+-------------------------------------
Reporter: erikd | Owner:
Type: bug | Status: patch
Priority: normal | Milestone: 7.12.1
Component: Build System | Version: 7.11
Resolution: | Keywords: llvm
Operating System: Unknown/Multiple | Architecture:
Type of failure: Other | Unknown/Multiple
Blocked By: | Test Case:
Related Tickets: | Blocking:
| Differential Revisions: Phab:D828
-------------------------------------+-------------------------------------
Changes (by erikd):
* status: new => patch
Comment:
The attached patch:
{{{
commit 8a11eec3a6c8d82f4f12a00e6a64f0916cf3575f
Author: Erik de Castro Lopo

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: merge Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Changes (by erikd): * status: patch => merge Comment: Since commit 42448e3757f257 has already been cherry-picked into the ghc-7.10 branch, commit 485dba86d2519cc from git HEAD should also go in. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure -------------------------------------+------------------------------------- Reporter: erikd | Owner: Type: bug | Status: merge Priority: normal | Milestone: 7.12.1 Component: Build System | Version: 7.11 Resolution: | Keywords: llvm Operating System: Unknown/Multiple | Architecture: Type of failure: Other | Unknown/Multiple Blocked By: | Test Case: Related Tickets: | Blocking: | Differential Revisions: Phab:D828 -------------------------------------+------------------------------------- Comment (by erikd): Unfortunately, the patch referenced in comment 11 no longer applies. Currently working on a updated version of that patch. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10234#comment:13 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10234: armhf : Validate fails during bindisttest configure
-------------------------------------+-------------------------------------
Reporter: erikd | Owner:
Type: bug | Status: closed
Priority: normal | Milestone: 7.12.1
Component: Build System | Version: 7.11
Resolution: fixed | Keywords: llvm
Operating System: Unknown/Multiple | Architecture:
Type of failure: Other | Unknown/Multiple
Blocked By: | Test Case:
Related Tickets: | Blocking:
| Differential Revisions: Phab:D828
-------------------------------------+-------------------------------------
Changes (by erikd):
* status: merge => closed
* resolution: => fixed
Comment:
This was fixed for the `ghc-7.10` branch in commit:
{{{
commit 99e4e26a2672f7697cf1f76306c3dfb63125e035
Author: Erik de Castro Lopo
participants (1)
-
GHC