Bug 127718 - [patch] devel/llvm: use PIC on amd64 and add optional dependancy on Ocaml
Summary: [patch] devel/llvm: use PIC on amd64 and add optional dependancy on Ocaml
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Brooks Davis
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-29 14:40 UTC by Scot Hetzel
Modified: 2009-12-08 16:15 UTC (History)
0 users

See Also:


Attachments
file.diff (10.00 KB, patch)
2008-09-29 14:40 UTC, Scot Hetzel
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Scot Hetzel 2008-09-29 14:40:00 UTC
Problem 1:

If the lang/ocaml port is installed, devel/llvm will build and install additional files for Ocaml support.

Problem 2:

On the www.opengtl.org download page, they show that llvm 2.3 needs to be patched and then compiled with "--enable-pic --with-pic" options on x86-64 systems.  To verify their finding, I installed and unpatched devel/llvm, and then built OpenGTL.  It failed to link due to requiring the libraries being built with these options.

Fix: The attached patch contains these fixes

- add missing optional dependency on lang/ocaml
- use PIC code on FreeBSD/amd64
- add files/patch-lib_Target_X86_X86JITInfo.cpp 
  (obtained from the www.opengtl.org site)

Patch attached with submission follows:
How-To-Repeat: Problem 1:

Install lang/ocaml, then  build and install devel/llvm. Upon uninstall of these ports there will be extra files in PREFIX/lib/ocaml and PREFIX/share/doc/llvm.

Problem 2:

Install devel/llvm and then build OpenGTL (www.opengtl.org).  It will fail on FreeBSD/amd64 due to requiring PIC.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2008-09-29 14:40:16 UTC
Responsible Changed
From-To: freebsd-ports-bugs->brooks

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 dfilter service freebsd_committer freebsd_triage 2009-12-07 19:03:55 UTC
brooks      2009-12-07 19:03:42 UTC

  FreeBSD ports repository

  Modified files:
    devel/llvm           Makefile 
  Log:
  Compile with -fPIC on amd64 and ia64.
  
  Add an option to disable assertions which is required for a future
  opengtl port.
  
  PR:             ports/127718, ports/139207
  
  Revision  Changes    Path
  1.32      +13 -1     ports/devel/llvm/Makefile
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 3 dfilter service freebsd_committer freebsd_triage 2009-12-08 16:08:22 UTC
brooks      2009-12-08 16:08:09 UTC

  FreeBSD ports repository

  Modified files:
    devel/llvm-devel     Makefile Makefile.svn_rev distinfo 
                         pkg-plist 
  Added files:
    devel/llvm-devel/files 
                           patch-tools_clang_tools_scan-build_scan-build 
  Removed files:
    devel/llvm-devel/files patch-tools_clang_utils_scan-build 
  Log:
  Update to r90769.
  Build with -fPIC on amd64 and ia64.
  Allow the user to disable asserts.
  
  PR:             ports/127718, ports/139207
  
  Revision  Changes    Path
  1.32      +19 -7     ports/devel/llvm-devel/Makefile
  1.8       +1 -1      ports/devel/llvm-devel/Makefile.svn_rev
  1.22      +3 -3      ports/devel/llvm-devel/distinfo
  1.1       +23 -0     ports/devel/llvm-devel/files/patch-tools_clang_tools_scan-build_scan-build (new)
  1.4       +0 -23     ports/devel/llvm-devel/files/patch-tools_clang_utils_scan-build (dead)
  1.24      +35 -15    ports/devel/llvm-devel/pkg-plist
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 4 Brooks Davis freebsd_committer freebsd_triage 2009-12-08 16:11:26 UTC
State Changed
From-To: open->closed

I've finally applied the patch to build with -fPIC. 

I fixed the nondeterministic plist issues by supressing the ocaml 
binding all the time.  I could probably be persuaded to add a fully 
optional ocaml option, but am concerned it would complicate 
maintaining llvm-devel.