On Thu, Jun 20, 2013 at 03:30:17PM +0100, Stuart Henderson wrote:
> On 2013/06/20 23:16, Jonathan Gray wrote:
> > On Wed, Jun 19, 2013 at 11:05:30AM -0400, Brad Smith wrote:
> > > On Tue, Jun 18, 2013 at 10:03:20PM -0400, Brad Smith wrote:
> > > > Here is an update to LLVM 3.3.
> > > >
> > > > Comments? OK?
> > >
> > > Here is an updated diff with the r600 backend enabled.
> >
> > Mesa seems to require llvm to be built as series of
> > shared libraries, are we trying to avoid that on purpose?
> >
>
> When I changed it to use cmake I just went with the default value,
> upstream says this about it (http://llvm.org/docs/CMake.html)
>
> "BUILD_SHARED_LIBS:BOOL
>
> Flag indicating is (sic) shared libraries will be built. Its default value
> is OFF. Shared libraries are not supported on Windows and not recommended
> in the other OSes."
>
> There's no further information about the "not recommended" though..
>
Well this is what I need to compile mesa git with llvm support:
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/llvm/Makefile,v
retrieving revision 1.64
diff -u -p -r1.64 Makefile
--- Makefile 28 Jun 2013 11:14:38 -0000 1.64
+++ Makefile 18 Jul 2013 12:36:39 -0000
@@ -9,6 +9,7 @@ DPB_PROPERTIES = parallel
COMMENT = modular, fast C/C++/ObjC compiler, static analyzer and tools
LLVM_V = 3.3
+REVISION= 0
DISTNAME = llvm-${LLVM_V}.src
PKGNAME = llvm-${LLVM_V}
CATEGORIES = devel
@@ -46,7 +47,9 @@ SEPARATE_BUILD = Yes
CONFIGURE_ARGS = -DLLVM_ENABLE_FFI:Bool=False \
-DLLVM_REQUIRES_RTTI:Bool=True \
-DCMAKE_BUILD_TYPE:String=Release \
- -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2:Bool=True
+ -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2:Bool=True \
+ -DBUILD_SHARED_LIBS:Bool=True \
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD:String=R600
# Workaround relocation overflow
.if ${MACHINE_ARCH} == "powerpc"
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/llvm/pkg/PLIST,v
retrieving revision 1.18
diff -u -p -r1.18 PLIST
--- pkg/PLIST 21 Jun 2013 22:09:12 -0000 1.18
+++ pkg/PLIST 18 Jul 2013 12:36:39 -0000
@@ -1089,131 +1089,134 @@ ${CLANG_INCLUDE_PATH}/wmmintrin.h
${CLANG_INCLUDE_PATH}/x86intrin.h
${CLANG_INCLUDE_PATH}/xmmintrin.h
${CLANG_INCLUDE_PATH}/xopintrin.h
-lib/libLLVMAArch64AsmParser.a
-lib/libLLVMAArch64AsmPrinter.a
-lib/libLLVMAArch64CodeGen.a
-lib/libLLVMAArch64Desc.a
-lib/libLLVMAArch64Disassembler.a
-lib/libLLVMAArch64Info.a
-lib/libLLVMAArch64Utils.a
-lib/libLLVMARMAsmParser.a
-lib/libLLVMARMAsmPrinter.a
-lib/libLLVMARMCodeGen.a
-lib/libLLVMARMDesc.a
-lib/libLLVMARMDisassembler.a
-lib/libLLVMARMInfo.a
-lib/libLLVMAnalysis.a
-lib/libLLVMArchive.a
-lib/libLLVMAsmParser.a
-lib/libLLVMAsmPrinter.a
-lib/libLLVMBitReader.a
-lib/libLLVMBitWriter.a
-lib/libLLVMCodeGen.a
-lib/libLLVMCore.a
-lib/libLLVMCppBackendCodeGen.a
-lib/libLLVMCppBackendInfo.a
-lib/libLLVMDebugInfo.a
-lib/libLLVMExecutionEngine.a
-lib/libLLVMHexagonAsmPrinter.a
-lib/libLLVMHexagonCodeGen.a
-lib/libLLVMHexagonDesc.a
-lib/libLLVMHexagonInfo.a
-lib/libLLVMIRReader.a
-lib/libLLVMInstCombine.a
-lib/libLLVMInstrumentation.a
-lib/libLLVMInterpreter.a
-lib/libLLVMJIT.a
-lib/libLLVMLinker.a
-lib/libLLVMMBlazeAsmParser.a
-lib/libLLVMMBlazeAsmPrinter.a
-lib/libLLVMMBlazeCodeGen.a
-lib/libLLVMMBlazeDesc.a
-lib/libLLVMMBlazeDisassembler.a
-lib/libLLVMMBlazeInfo.a
-lib/libLLVMMC.a
-lib/libLLVMMCDisassembler.a
-lib/libLLVMMCJIT.a
-lib/libLLVMMCParser.a
-lib/libLLVMMSP430AsmPrinter.a
-lib/libLLVMMSP430CodeGen.a
-lib/libLLVMMSP430Desc.a
-lib/libLLVMMSP430Info.a
-lib/libLLVMMipsAsmParser.a
-lib/libLLVMMipsAsmPrinter.a
-lib/libLLVMMipsCodeGen.a
-lib/libLLVMMipsDesc.a
-lib/libLLVMMipsDisassembler.a
-lib/libLLVMMipsInfo.a
-lib/libLLVMNVPTXAsmPrinter.a
-lib/libLLVMNVPTXCodeGen.a
-lib/libLLVMNVPTXDesc.a
-lib/libLLVMNVPTXInfo.a
-lib/libLLVMObjCARCOpts.a
-lib/libLLVMObject.a
-lib/libLLVMOption.a
-lib/libLLVMPowerPCAsmParser.a
-lib/libLLVMPowerPCAsmPrinter.a
-lib/libLLVMPowerPCCodeGen.a
-lib/libLLVMPowerPCDesc.a
-lib/libLLVMPowerPCInfo.a
-lib/libLLVMRuntimeDyld.a
-lib/libLLVMScalarOpts.a
-lib/libLLVMSelectionDAG.a
-lib/libLLVMSparcCodeGen.a
-lib/libLLVMSparcDesc.a
-lib/libLLVMSparcInfo.a
-lib/libLLVMSupport.a
-lib/libLLVMSystemZAsmParser.a
-lib/libLLVMSystemZAsmPrinter.a
-lib/libLLVMSystemZCodeGen.a
-lib/libLLVMSystemZDesc.a
-lib/libLLVMSystemZInfo.a
-lib/libLLVMTableGen.a
-lib/libLLVMTarget.a
-lib/libLLVMTransformUtils.a
-lib/libLLVMVectorize.a
-lib/libLLVMX86AsmParser.a
-lib/libLLVMX86AsmPrinter.a
-lib/libLLVMX86CodeGen.a
-lib/libLLVMX86Desc.a
-lib/libLLVMX86Disassembler.a
-lib/libLLVMX86Info.a
-lib/libLLVMX86Utils.a
-lib/libLLVMXCoreAsmPrinter.a
-lib/libLLVMXCoreCodeGen.a
-lib/libLLVMXCoreDesc.a
-lib/libLLVMXCoreDisassembler.a
-lib/libLLVMXCoreInfo.a
-lib/libLLVMipa.a
-lib/libLLVMipo.a
-lib/libLTO.a
+lib/libLLVMAArch64AsmParser.so
+lib/libLLVMAArch64AsmPrinter.so
+lib/libLLVMAArch64CodeGen.so
+lib/libLLVMAArch64Desc.so
+lib/libLLVMAArch64Disassembler.so
+lib/libLLVMAArch64Info.so
+lib/libLLVMAArch64Utils.so
+lib/libLLVMARMAsmParser.so
+lib/libLLVMARMAsmPrinter.so
+lib/libLLVMARMCodeGen.so
+lib/libLLVMARMDesc.so
+lib/libLLVMARMDisassembler.so
+lib/libLLVMARMInfo.so
+lib/libLLVMAnalysis.so
+lib/libLLVMArchive.so
+lib/libLLVMAsmParser.so
+lib/libLLVMAsmPrinter.so
+lib/libLLVMBitReader.so
+lib/libLLVMBitWriter.so
+lib/libLLVMCodeGen.so
+lib/libLLVMCore.so
+lib/libLLVMCppBackendCodeGen.so
+lib/libLLVMCppBackendInfo.so
+lib/libLLVMDebugInfo.so
+lib/libLLVMExecutionEngine.so
+lib/libLLVMHexagonAsmPrinter.so
+lib/libLLVMHexagonCodeGen.so
+lib/libLLVMHexagonDesc.so
+lib/libLLVMHexagonInfo.so
+lib/libLLVMIRReader.so
+lib/libLLVMInstCombine.so
+lib/libLLVMInstrumentation.so
+lib/libLLVMInterpreter.so
+lib/libLLVMJIT.so
+lib/libLLVMLinker.so
+lib/libLLVMMBlazeAsmParser.so
+lib/libLLVMMBlazeAsmPrinter.so
+lib/libLLVMMBlazeCodeGen.so
+lib/libLLVMMBlazeDesc.so
+lib/libLLVMMBlazeDisassembler.so
+lib/libLLVMMBlazeInfo.so
+lib/libLLVMMC.so
+lib/libLLVMMCDisassembler.so
+lib/libLLVMMCJIT.so
+lib/libLLVMMCParser.so
+lib/libLLVMMSP430AsmPrinter.so
+lib/libLLVMMSP430CodeGen.so
+lib/libLLVMMSP430Desc.so
+lib/libLLVMMSP430Info.so
+lib/libLLVMMipsAsmParser.so
+lib/libLLVMMipsAsmPrinter.so
+lib/libLLVMMipsCodeGen.so
+lib/libLLVMMipsDesc.so
+lib/libLLVMMipsDisassembler.so
+lib/libLLVMMipsInfo.so
+lib/libLLVMNVPTXAsmPrinter.so
+lib/libLLVMNVPTXCodeGen.so
+lib/libLLVMNVPTXDesc.so
+lib/libLLVMNVPTXInfo.so
+lib/libLLVMObjCARCOpts.so
+lib/libLLVMObject.so
+lib/libLLVMOption.so
+lib/libLLVMPowerPCAsmParser.so
+lib/libLLVMPowerPCAsmPrinter.so
+lib/libLLVMPowerPCCodeGen.so
+lib/libLLVMPowerPCDesc.so
+lib/libLLVMPowerPCInfo.so
+lib/libLLVMR600AsmPrinter.so
+lib/libLLVMR600CodeGen.so
+lib/libLLVMR600Desc.so
+lib/libLLVMR600Info.so
+lib/libLLVMRuntimeDyld.so
+lib/libLLVMScalarOpts.so
+lib/libLLVMSelectionDAG.so
+lib/libLLVMSparcCodeGen.so
+lib/libLLVMSparcDesc.so
+lib/libLLVMSparcInfo.so
+lib/libLLVMSupport.so
+lib/libLLVMSystemZAsmParser.so
+lib/libLLVMSystemZAsmPrinter.so
+lib/libLLVMSystemZCodeGen.so
+lib/libLLVMSystemZDesc.so
+lib/libLLVMSystemZInfo.so
+lib/libLLVMTableGen.so
+lib/libLLVMTarget.so
+lib/libLLVMTransformUtils.so
+lib/libLLVMVectorize.so
+lib/libLLVMX86AsmParser.so
+lib/libLLVMX86AsmPrinter.so
+lib/libLLVMX86CodeGen.so
+lib/libLLVMX86Desc.so
+lib/libLLVMX86Disassembler.so
+lib/libLLVMX86Info.so
+lib/libLLVMX86Utils.so
+lib/libLLVMXCoreAsmPrinter.so
+lib/libLLVMXCoreCodeGen.so
+lib/libLLVMXCoreDesc.so
+lib/libLLVMXCoreDisassembler.so
+lib/libLLVMXCoreInfo.so
+lib/libLLVMipa.so
+lib/libLLVMipo.so
lib/libLTO.so
-lib/libclang.a
-@lib lib/libclang.so.${LIBclang_VERSION}
-lib/libclangARCMigrate.a
-lib/libclangAST.a
-lib/libclangASTMatchers.a
-lib/libclangAnalysis.a
-lib/libclangBasic.a
-lib/libclangCodeGen.a
-lib/libclangDriver.a
-lib/libclangEdit.a
-lib/libclangFormat.a
-lib/libclangFrontend.a
-lib/libclangFrontendTool.a
-lib/libclangLex.a
-lib/libclangParse.a
-lib/libclangRewriteCore.a
-lib/libclangRewriteFrontend.a
-lib/libclangSema.a
-lib/libclangSerialization.a
-lib/libclangStaticAnalyzerCheckers.a
-lib/libclangStaticAnalyzerCore.a
-lib/libclangStaticAnalyzerFrontend.a
-lib/libclangTooling.a
@comment lib/libgtest.a
@comment lib/libgtest_main.a
-lib/libprofile_rt.a
+@lib lib/libclang.so.${LIBclang_VERSION}
+lib/libclangARCMigrate.so
+lib/libclangAST.so
+lib/libclangASTMatchers.so
+lib/libclangAnalysis.so
+lib/libclangBasic.so
+lib/libclangCodeGen.so
+lib/libclangDriver.so
+lib/libclangEdit.so
+lib/libclangFormat.so
+lib/libclangFrontend.so
+lib/libclangFrontendTool.so
+lib/libclangLex.so
+lib/libclangParse.so
+lib/libclangRewriteCore.so
+lib/libclangRewriteFrontend.so
+lib/libclangSema.so
+lib/libclangSerialization.so
+lib/libclangStaticAnalyzerCheckers.so
+lib/libclangStaticAnalyzerCore.so
+lib/libclangStaticAnalyzerFrontend.so
+lib/libclangTooling.so
+lib/libgtest.so
+lib/libgtest_main.so
lib/libprofile_rt.so
@man man/man1/FileCheck.1
@man man/man1/bugpoint.1