svn commit: r426189 - in head/devel/llvm39: . files
Brooks Davis
brooks at FreeBSD.org
Tue Nov 15 23:28:24 UTC 2016
Author: brooks
Date: Tue Nov 15 23:28:23 2016
New Revision: 426189
URL: https://svnweb.freebsd.org/changeset/ports/426189
Log:
Build shared libraries.
PR: 214549
Submitted by: kwm
Added:
head/devel/llvm39/files/patch-tools_llvm-shlib_CMakeLists.txt (contents, props changed)
Modified:
head/devel/llvm39/Makefile
head/devel/llvm39/pkg-plist
Modified: head/devel/llvm39/Makefile
==============================================================================
--- head/devel/llvm39/Makefile Tue Nov 15 23:25:04 2016 (r426188)
+++ head/devel/llvm39/Makefile Tue Nov 15 23:28:23 2016 (r426189)
@@ -2,7 +2,7 @@
PORTNAME= llvm
DISTVERSION= 3.9.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= devel lang
MASTER_SITES= http://llvm.org/${PRE_}releases/${LLVM_RELEASE}/${RCDIR}
DISTNAME= ${PORTNAME}-${DISTVERSION}.src
@@ -38,7 +38,7 @@ SUB_FILES= llvm-wrapper.sh
SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" LLVM_SUFFIX="${LLVM_SUFFIX}"
CMAKE_INSTALL_PREFIX= ${LLVM_PREFIX}
-CMAKE_ARGS=
+CMAKE_ARGS= -DLLVM_BUILD_LLVM_DYLIB=ON
OPTIONS_DEFINE= CLANG DOCS EXTRAS LIT LLD LLDB
OPTIONS_DEFINE_amd64= COMPILER_RT GOLD OPENMP
Added: head/devel/llvm39/files/patch-tools_llvm-shlib_CMakeLists.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/llvm39/files/patch-tools_llvm-shlib_CMakeLists.txt Tue Nov 15 23:28:23 2016 (r426189)
@@ -0,0 +1,13 @@
+Otherwise we end up with a 4k library without any symbols.
+
+--- tools/llvm-shlib/CMakeLists.txt.orig 2016-05-26 06:35:35.000000000 +0200
++++ tools/llvm-shlib/CMakeLists.txt 2016-11-15 17:07:29.937965000 +0100
+@@ -39,7 +39,7 @@
+ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
+
+ list(REMOVE_DUPLICATES LIB_NAMES)
+-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
++if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly")) # FIXME: It should be "GNU ld for elf"
+ # GNU ld doesn't resolve symbols in the version script.
+ set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+ elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
Modified: head/devel/llvm39/pkg-plist
==============================================================================
--- head/devel/llvm39/pkg-plist Tue Nov 15 23:25:04 2016 (r426188)
+++ head/devel/llvm39/pkg-plist Tue Nov 15 23:28:23 2016 (r426189)
@@ -2180,6 +2180,9 @@ llvm39/lib/cmake/llvm/LLVMInstallSymlink
llvm39/lib/cmake/llvm/LLVMProcessSources.cmake
llvm39/lib/cmake/llvm/TableGen.cmake
llvm39/lib/cmake/llvm/VersionFromVCS.cmake
+llvm39/lib/libLLVM-%%LLVM_MAJOR%%.so
+llvm39/lib/libLLVM-%%LLVM_RELEASE%%.so
+llvm39/lib/libLLVM.so
llvm39/lib/libLLVMAArch64AsmParser.a
llvm39/lib/libLLVMAArch64AsmPrinter.a
llvm39/lib/libLLVMAArch64CodeGen.a
More information about the svn-ports-all
mailing list