Bug 205103 - devel/llvm37: 'llvm-config37 --libfiles' shows files that don't exist
Summary: devel/llvm37: 'llvm-config37 --libfiles' shows files that don't exist
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Brooks Davis
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-07 22:28 UTC by Ting-Wei Lan
Modified: 2015-12-23 01:09 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (brooks)


Attachments
change .a libraries to .so in llvm-config37 (3.37 KB, patch)
2015-12-21 14:46 UTC, Koop Mast
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ting-Wei Lan 2015-12-07 22:28:37 UTC
'llvm-config37 --libfiles' command shows a lot of .a files, but none of them exist, which causes build failure for WebKitGTK+ 2.11.2.

gmake[2]: *** No rule to make target '/usr/local/llvm37/lib/libLLVMSupport.a', needed by 'DerivedSources/JavaScriptCore/WebKitLLVMLibraryToken.h'.  Stop.
CMakeFiles/Makefile2:485: recipe for target 'Source/JavaScriptCore/CMakeFiles/llvmForJSC.dir/all' failed

Can we get these .a files in llvm37 package?
Comment 1 Brooks Davis freebsd_committer freebsd_triage 2015-12-08 12:37:38 UTC
I looked into this.  It's possible to do so by disabling BUILD_SHARED_LIBS, but it makes the package really big (on disk >900MB vs < 200MB).  It also gets rid of the shared libraries so I'm disinclined to enable this.  We could potentially add an llvm36-staticlibs that only installs the static libraries, but that seems a bit hawkish and hard to maintain.
Comment 2 Brooks Davis freebsd_committer freebsd_triage 2015-12-08 12:38:06 UTC
s/36/37/ in my previous comment.
Comment 3 Koop Mast freebsd_committer freebsd_triage 2015-12-21 14:46:01 UTC
Created attachment 164457 [details]
change .a libraries to .so in llvm-config37

Copy bits from https://bugs.gentoo.org/show_bug.cgi?id=565358 to make llvm-config37 --system-libs .so files instead of .a.

I think upstream should fix this propperly.

I don't think it a good idea to wipe system-libs like the above bug mentions, since is might break other ports. I should note that no released beignet version supports llvm 3.7 yet.
http://lists.freedesktop.org/archives/beignet/2015-December/006918.html
Comment 4 commit-hook freebsd_committer freebsd_triage 2015-12-22 21:35:55 UTC
A commit references this bug:

Author: brooks
Date: Tue Dec 22 21:35:30 UTC 2015
New revision: 404268
URL: https://svnweb.freebsd.org/changeset/ports/404268

Log:
  change .a libraries to .so in llvm-config37

  PR:		205103
  Submitted by:	kwm
  Obtained from:	https://bugs.gentoo.org/show_bug.cgi?id=565358

Changes:
  head/devel/llvm37/Makefile
  head/devel/llvm37/files/patch-tools_llvm-config_llvm-config.cpp
  head/devel/llvm37/files/patch-utils_llvm-build_llvmbuild_main.py