Build shared libraries.

PR:		214549
Submitted by:	kwm
This commit is contained in:
Brooks Davis 2016-11-15 23:28:23 +00:00
parent 94e039f354
commit 80f64d30bf
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=426189
3 changed files with 18 additions and 2 deletions

View file

@ -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

View file

@ -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")

View file

@ -2180,6 +2180,9 @@ llvm39/lib/cmake/llvm/LLVMInstallSymlink.cmake
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