diff options
author | Brooks Davis <brooks@FreeBSD.org> | 2012-02-23 07:19:27 +0800 |
---|---|---|
committer | Brooks Davis <brooks@FreeBSD.org> | 2012-02-23 07:19:27 +0800 |
commit | ff45cfe8338f0dcc0e76c37f0347aa6546d92a72 (patch) | |
tree | 47caf2f364b05c5a9b639ddabdce4158224c93e7 /devel | |
parent | 6fb1b93dc03982a7f2eb263fff4040549487162c (diff) | |
download | freebsd-ports-gnome-ff45cfe8338f0dcc0e76c37f0347aa6546d92a72.tar.gz freebsd-ports-gnome-ff45cfe8338f0dcc0e76c37f0347aa6546d92a72.tar.zst freebsd-ports-gnome-ff45cfe8338f0dcc0e76c37f0347aa6546d92a72.zip |
Upgrade to llvm/clang r150242.
Enable installation of the shared libaray in LLVM.
Add preliminary support for building and installing the gold linker
plugin. No option is avaiable to turn it on (use -DWITH_LTOPLUGIN)
because devel/binutils does not yet build the gold linker.
Diffstat (limited to 'devel')
-rw-r--r-- | devel/llvm-devel/Makefile | 27 | ||||
-rw-r--r-- | devel/llvm-devel/Makefile.svn_rev | 2 | ||||
-rw-r--r-- | devel/llvm-devel/distinfo | 4 | ||||
-rw-r--r-- | devel/llvm-devel/files/patch-utils_llvm-build_llvmbuild_main.py | 20 | ||||
-rw-r--r-- | devel/llvm-devel/pkg-plist | 45 |
5 files changed, 72 insertions, 26 deletions
diff --git a/devel/llvm-devel/Makefile b/devel/llvm-devel/Makefile index fdde03fbcfaa..5ee6b6806933 100644 --- a/devel/llvm-devel/Makefile +++ b/devel/llvm-devel/Makefile @@ -6,7 +6,7 @@ # PORTNAME= llvm -DISTVERSION= 3.0.r${SVN_REV} +DISTVERSION= 3.1.r${SVN_REV} CATEGORIES= devel lang MASTER_SITES= ${MASTER_SITE_LOCAL} MASTER_SITE_SUBDIR= brooks @@ -30,12 +30,15 @@ USE_GMAKE= yes USE_BZIP2= yes USE_LDCONFIG= yes USE_PERL5= yes +USE_PYTHON_BUILD= yes MAKE_JOBS_SAFE= yes # Suggested tweaks from http://llvm.org/docs/Packaging.html # Commented out ones are currently broken. MAKE_ARGS+= REQUIRES_RTTI=1 -#CONFIGURE_ARGS+= --enable-shared +CONFIGURE_ARGS+= --enable-shared +LIBNAME= libLLVM-${DISTVERSION:C/\.r[0-9]*//}svn.so +PLIST_FILES+= lib/${LIBNAME} lib/${LIBNAME}.0 .if defined(MAINTAINER_MODE) CONFIGURE_ARGS+= --with-f2c=${LOCALBASE} @@ -46,13 +49,14 @@ CONFIGURE_ARGS+= --enable-optimized CONFIGURE_ARGS+= --enable-bindings=none OPTIONS= ASSERTS "Enable assertions (thread unsafe)" off +# LTOPLUGIN "Build LTO plugin (requires gold)" off .if defined(NOPORTDOCS) CONFIGURE_ARGS+= --disable-docs .endif -MAN1= bugpoint.1 lit.1 llc.1 lli.1 llvm-ar.1 \ - llvm-as.1 llvm-bcanalyzer.1 llvm-config.1 llvm-diff.1 \ +MAN1= bugpoint.1 lit.1 llc.1 lli.1 llvm-ar.1 llvm-as.1 \ + llvm-bcanalyzer.1 llvm-cov.1 llvm-config.1 llvm-diff.1 \ llvm-dis.1 llvm-extract.1 llvm-ld.1 llvm-link.1 llvm-nm.1 \ llvm-prof.1 llvm-ranlib.1 opt.1 tblgen.1 @@ -85,6 +89,13 @@ CONFIGURE_ARGS+= --enable-assertions CONFIGURE_ARGS+= --disable-assertions .endif +.ifdef(WITH_LTOPLUGIN) +BUILD_DEPENDS+= ld.gold:${PORTSDIR}/devel/binutils +RUN_DEPENDS+= ld.gold:${PORTSDIR}/devel/binutils +CONFIGURE_ARGS+= --with-binutils-include=${LOCALBASE}/include +PLIST_FILES+= lib/LLVMgold.so +.endif + .if defined(BOOTSTRAP) || defined(SVN_FETCH) FETCH_DEPENDS+= svn:${PORTSDIR}/devel/subversion @@ -109,15 +120,19 @@ post-patch: .if defined(NOPORTDOCS) post-build: @cd ${WRKSRC}/docs/CommandGuide && ${GMAKE} ${MAN1} +.endif post-install: + mv ${PREFIX}/lib/${LIBNAME} ${PREFIX}/lib/${LIBNAME}.0 + ln -s ${LIBNAME}.0 ${PREFIX}/lib/${LIBNAME} +.if defined(NOPORTDOCS) .for man in ${MAN1} @${INSTALL_MAN} ${WRKSRC}/docs/CommandGuide/${man} \ ${MANPREFIX}/man/man1/ .endfor .endif -TEST_CMD= '(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} ${GMAKE} check-local-lit)' +TEST_CMD= '(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} LD_LIBRARY_PATH=${WRKSRC}/Release/lib ${GMAKE} check-local-lit)' regression-test: ${BUILD_COOKIE} if [ `${ID} -u` = 0 ]; then \ ${CHOWN} -R nobody ${WRKSRC}/test; \ @@ -134,7 +149,6 @@ PLIST_FILE_LIST= bin/bugpoint \ bin/opt \ lib/LLVMHello.so \ lib/BugpointPasses.so \ - lib/libEnhancedDisassembly.a \ lib/libLTO.* \ lib/libLLVM* \ lib/libprofile_rt.so \ @@ -145,6 +159,7 @@ build-plist: ${RM} -f ${PLIST} cd ${PREFIX} && \ (ls ${PLIST_FILE_LIST}; ${FIND} ${PLIST_DIR_LIST} -type f) | \ + ${SED} -e 's|${PORTVERSION}|%%PORTVERSION%%|' | \ ${SORT} >> ${PLIST} ${FIND} ${DOCSDIR} -type f | \ ${SED} -e 's|${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | \ diff --git a/devel/llvm-devel/Makefile.svn_rev b/devel/llvm-devel/Makefile.svn_rev index d897ff961869..1a3df964de13 100644 --- a/devel/llvm-devel/Makefile.svn_rev +++ b/devel/llvm-devel/Makefile.svn_rev @@ -1 +1 @@ -SVN_REV= 141985 +SVN_REV= 150242 diff --git a/devel/llvm-devel/distinfo b/devel/llvm-devel/distinfo index 84decc68bccc..100aff2bbd70 100644 --- a/devel/llvm-devel/distinfo +++ b/devel/llvm-devel/distinfo @@ -1,2 +1,2 @@ -SHA256 (llvm-3.0.r141985.tar.bz2) = 4171bef5590c3bb54110cb92d3e6a7c1a145a4b209c9c0cd3376444d08930afa -SIZE (llvm-3.0.r141985.tar.bz2) = 8022095 +SHA256 (llvm-3.1.r150242.tar.bz2) = 58df5cf4cbe97bd5f7007540b03e45abbc203190436e63b9535f9ef2c695e2ae +SIZE (llvm-3.1.r150242.tar.bz2) = 8439654 diff --git a/devel/llvm-devel/files/patch-utils_llvm-build_llvmbuild_main.py b/devel/llvm-devel/files/patch-utils_llvm-build_llvmbuild_main.py new file mode 100644 index 000000000000..1e2de0273d55 --- /dev/null +++ b/devel/llvm-devel/files/patch-utils_llvm-build_llvmbuild_main.py @@ -0,0 +1,20 @@ + +$FreeBSD$ + +--- utils/llvm-build/llvmbuild/main.py.orig ++++ utils/llvm-build/llvmbuild/main.py +@@ -633,7 +633,13 @@ + + # We handle a few special cases of target names here for historical + # reasons, as these are the names configure currently comes up with. +- native_target_name = { 'x86' : 'X86', ++ native_target_name = { 'amd64' : 'X86', ++ 'arm' : 'ARM', ++ 'i386' : 'X86', ++ 'mips' : 'Mips', ++ 'powerpc' : 'PowerPC', ++ 'sparc64' : 'Sparc', ++ 'x86' : 'X86', + 'x86_64' : 'X86', + 'Unknown' : None }.get(opts.native_target, + opts.native_target) diff --git a/devel/llvm-devel/pkg-plist b/devel/llvm-devel/pkg-plist index 148d4e9ff41d..ae5e9319a9f6 100644 --- a/devel/llvm-devel/pkg-plist +++ b/devel/llvm-devel/pkg-plist @@ -37,6 +37,7 @@ include/llvm-c/Target.h include/llvm-c/Transforms/IPO.h include/llvm-c/Transforms/PassManagerBuilder.h include/llvm-c/Transforms/Scalar.h +include/llvm-c/Transforms/Vectorize.h include/llvm-c/lto.h include/llvm/ADT/APFloat.h include/llvm/ADT/APInt.h @@ -92,7 +93,7 @@ include/llvm/ADT/Triple.h include/llvm/ADT/Twine.h include/llvm/ADT/UniqueVector.h include/llvm/ADT/ValueMap.h -include/llvm/ADT/VectorExtras.h +include/llvm/ADT/VariadicFunction.h include/llvm/ADT/ilist.h include/llvm/ADT/ilist_node.h include/llvm/Analysis/AliasAnalysis.h @@ -169,9 +170,9 @@ include/llvm/CallGraphSCCPass.h include/llvm/CallingConv.h include/llvm/CodeGen/Analysis.h include/llvm/CodeGen/AsmPrinter.h -include/llvm/CodeGen/BinaryObject.h include/llvm/CodeGen/CalcSpillWeights.h include/llvm/CodeGen/CallingConvLower.h +include/llvm/CodeGen/DFAPacketizer.h include/llvm/CodeGen/EdgeBundles.h include/llvm/CodeGen/FastISel.h include/llvm/CodeGen/FunctionLoweringInfo.h @@ -204,6 +205,7 @@ include/llvm/CodeGen/MachineFunctionAnalysis.h include/llvm/CodeGen/MachineFunctionPass.h include/llvm/CodeGen/MachineInstr.h include/llvm/CodeGen/MachineInstrBuilder.h +include/llvm/CodeGen/MachineInstrBundle.h include/llvm/CodeGen/MachineJumpTableInfo.h include/llvm/CodeGen/MachineLoopInfo.h include/llvm/CodeGen/MachineLoopRanges.h @@ -215,7 +217,6 @@ include/llvm/CodeGen/MachinePassRegistry.h include/llvm/CodeGen/MachineRegisterInfo.h include/llvm/CodeGen/MachineRelocation.h include/llvm/CodeGen/MachineSSAUpdater.h -include/llvm/CodeGen/ObjectCodeEmitter.h include/llvm/CodeGen/PBQP/Graph.h include/llvm/CodeGen/PBQP/HeuristicBase.h include/llvm/CodeGen/PBQP/HeuristicSolver.h @@ -228,6 +229,7 @@ include/llvm/CodeGen/PseudoSourceValue.h include/llvm/CodeGen/RegAllocPBQP.h include/llvm/CodeGen/RegAllocRegistry.h include/llvm/CodeGen/RegisterScavenging.h +include/llvm/CodeGen/ResourcePriorityQueue.h include/llvm/CodeGen/RuntimeLibcalls.h include/llvm/CodeGen/ScheduleDAG.h include/llvm/CodeGen/ScheduleHazardRecognizer.h @@ -276,8 +278,8 @@ include/llvm/Intrinsics.gen include/llvm/Intrinsics.h include/llvm/Intrinsics.td include/llvm/IntrinsicsARM.td -include/llvm/IntrinsicsAlpha.td include/llvm/IntrinsicsCellSPU.td +include/llvm/IntrinsicsHexagon.td include/llvm/IntrinsicsPTX.td include/llvm/IntrinsicsPowerPC.td include/llvm/IntrinsicsX86.td @@ -336,6 +338,7 @@ include/llvm/MC/MCTargetAsmLexer.h include/llvm/MC/MCTargetAsmParser.h include/llvm/MC/MCValue.h include/llvm/MC/MCWin64EH.h +include/llvm/MC/MCWinCOFFObjectWriter.h include/llvm/MC/MachineLocation.h include/llvm/MC/SectionKind.h include/llvm/MC/SubtargetFeature.h @@ -377,6 +380,7 @@ include/llvm/Support/CrashRecoveryContext.h include/llvm/Support/DOTGraphTraits.h include/llvm/Support/DataExtractor.h include/llvm/Support/DataFlow.h +include/llvm/Support/DataStream.h include/llvm/Support/DataTypes.h include/llvm/Support/Debug.h include/llvm/Support/DebugLoc.h @@ -401,8 +405,10 @@ include/llvm/Support/IRReader.h include/llvm/Support/IncludeFile.h include/llvm/Support/InstIterator.h include/llvm/Support/InstVisitor.h +include/llvm/Support/JSONParser.h include/llvm/Support/LICENSE.TXT include/llvm/Support/LeakDetector.h +include/llvm/Support/LockFileManager.h include/llvm/Support/MachO.h include/llvm/Support/ManagedStatic.h include/llvm/Support/MathExtras.h @@ -434,6 +440,7 @@ include/llvm/Support/SMLoc.h include/llvm/Support/Signals.h include/llvm/Support/Solaris.h include/llvm/Support/SourceMgr.h +include/llvm/Support/StreamableMemoryObject.h include/llvm/Support/StringPool.h include/llvm/Support/SwapByteOrder.h include/llvm/Support/SystemUtils.h @@ -491,8 +498,10 @@ include/llvm/Transforms/Utils/BasicBlockUtils.h include/llvm/Transforms/Utils/BasicInliner.h include/llvm/Transforms/Utils/BuildLibCalls.h include/llvm/Transforms/Utils/Cloning.h +include/llvm/Transforms/Utils/CmpInstAnalysis.h include/llvm/Transforms/Utils/FunctionUtils.h include/llvm/Transforms/Utils/Local.h +include/llvm/Transforms/Utils/ModuleUtils.h include/llvm/Transforms/Utils/PromoteMemToReg.h include/llvm/Transforms/Utils/SSAUpdater.h include/llvm/Transforms/Utils/SSAUpdaterImpl.h @@ -500,6 +509,7 @@ include/llvm/Transforms/Utils/SimplifyIndVar.h include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h include/llvm/Transforms/Utils/UnrollLoop.h include/llvm/Transforms/Utils/ValueMapper.h +include/llvm/Transforms/Vectorize.h include/llvm/Type.h include/llvm/Use.h include/llvm/User.h @@ -507,36 +517,32 @@ include/llvm/Value.h include/llvm/ValueSymbolTable.h lib/BugpointPasses.so lib/LLVMHello.so -lib/libEnhancedDisassembly.a lib/libLLVMARMAsmParser.a lib/libLLVMARMAsmPrinter.a lib/libLLVMARMCodeGen.a lib/libLLVMARMDesc.a lib/libLLVMARMDisassembler.a lib/libLLVMARMInfo.a -lib/libLLVMAlphaCodeGen.a -lib/libLLVMAlphaDesc.a -lib/libLLVMAlphaInfo.a lib/libLLVMAnalysis.a lib/libLLVMArchive.a lib/libLLVMAsmParser.a lib/libLLVMAsmPrinter.a lib/libLLVMBitReader.a lib/libLLVMBitWriter.a -lib/libLLVMBlackfinCodeGen.a -lib/libLLVMBlackfinDesc.a -lib/libLLVMBlackfinInfo.a -lib/libLLVMCBackend.a +lib/libLLVMCBackendCodeGen.a lib/libLLVMCBackendInfo.a lib/libLLVMCellSPUCodeGen.a lib/libLLVMCellSPUDesc.a lib/libLLVMCellSPUInfo.a lib/libLLVMCodeGen.a lib/libLLVMCore.a -lib/libLLVMCppBackend.a +lib/libLLVMCppBackendCodeGen.a lib/libLLVMCppBackendInfo.a lib/libLLVMDebugInfo.a lib/libLLVMExecutionEngine.a +lib/libLLVMHexagonCodeGen.a +lib/libLLVMHexagonDesc.a +lib/libLLVMHexagonInfo.a lib/libLLVMInstCombine.a lib/libLLVMInstrumentation.a lib/libLLVMInterpreter.a @@ -556,6 +562,7 @@ lib/libLLVMMSP430AsmPrinter.a lib/libLLVMMSP430CodeGen.a lib/libLLVMMSP430Desc.a lib/libLLVMMSP430Info.a +lib/libLLVMMipsAsmParser.a lib/libLLVMMipsAsmPrinter.a lib/libLLVMMipsCodeGen.a lib/libLLVMMipsDesc.a @@ -576,12 +583,10 @@ lib/libLLVMSparcCodeGen.a lib/libLLVMSparcDesc.a lib/libLLVMSparcInfo.a lib/libLLVMSupport.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 @@ -617,7 +622,9 @@ lib/libprofile_rt.so %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-ar.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-as.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-bcanalyzer.html +%%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-build.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-config.html +%%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-cov.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-diff.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-dis.html %%PORTDOCS%%%%DOCSDIR%%/html/CommandGuide/llvm-extract.html @@ -642,8 +649,10 @@ lib/libprofile_rt.so %%PORTDOCS%%%%DOCSDIR%%/html/GettingStarted.html %%PORTDOCS%%%%DOCSDIR%%/html/GettingStartedVS.html %%PORTDOCS%%%%DOCSDIR%%/html/GoldPlugin.html +%%PORTDOCS%%%%DOCSDIR%%/html/HowToAddABuilder.html %%PORTDOCS%%%%DOCSDIR%%/html/HowToReleaseLLVM.html %%PORTDOCS%%%%DOCSDIR%%/html/HowToSubmitABug.html +%%PORTDOCS%%%%DOCSDIR%%/html/LLVMBuild.html %%PORTDOCS%%%%DOCSDIR%%/html/LangRef.html %%PORTDOCS%%%%DOCSDIR%%/html/Lexicon.html %%PORTDOCS%%%%DOCSDIR%%/html/LinkTimeOptimization.html @@ -658,7 +667,6 @@ lib/libprofile_rt.so %%PORTDOCS%%%%DOCSDIR%%/html/SystemLibrary.html %%PORTDOCS%%%%DOCSDIR%%/html/TableGenFundamentals.html %%PORTDOCS%%%%DOCSDIR%%/html/TestingGuide.html -%%PORTDOCS%%%%DOCSDIR%%/html/UsingLibraries.html %%PORTDOCS%%%%DOCSDIR%%/html/WritingAnLLVMBackend.html %%PORTDOCS%%%%DOCSDIR%%/html/WritingAnLLVMPass.html %%PORTDOCS%%%%DOCSDIR%%/html/doxygen.css @@ -673,6 +681,7 @@ lib/libprofile_rt.so %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl2.html %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl3.html %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl4.html +%%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl5-cfg.png %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl5.html %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl6.html %%PORTDOCS%%%%DOCSDIR%%/html/tutorial/LangImpl7.html @@ -694,7 +703,9 @@ lib/libprofile_rt.so %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-ar.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-as.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-bcanalyzer.ps +%%PORTDOCS%%%%DOCSDIR%%/ps/llvm-build.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-config.ps +%%PORTDOCS%%%%DOCSDIR%%/ps/llvm-cov.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-diff.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-dis.ps %%PORTDOCS%%%%DOCSDIR%%/ps/llvm-extract.ps |