aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2012-02-23 07:19:27 +0800
committerBrooks Davis <brooks@FreeBSD.org>2012-02-23 07:19:27 +0800
commitff45cfe8338f0dcc0e76c37f0347aa6546d92a72 (patch)
tree47caf2f364b05c5a9b639ddabdce4158224c93e7 /devel
parent6fb1b93dc03982a7f2eb263fff4040549487162c (diff)
downloadfreebsd-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/Makefile27
-rw-r--r--devel/llvm-devel/Makefile.svn_rev2
-rw-r--r--devel/llvm-devel/distinfo4
-rw-r--r--devel/llvm-devel/files/patch-utils_llvm-build_llvmbuild_main.py20
-rw-r--r--devel/llvm-devel/pkg-plist45
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