svn commit: r393886 - in head/devel: llvm-devel llvm37
Rui Paulo
rpaulo at FreeBSD.org
Mon Aug 10 19:04:07 UTC 2015
Author: rpaulo
Date: Mon Aug 10 19:04:05 2015
New Revision: 393886
URL: https://svnweb.freebsd.org/changeset/ports/393886
Log:
llvm{37,devel}: build and enable LLVM's gold plugin.
This makes it possible to use Link Time Optimisations in with
-fuse-ld=gold.
Reviewed by: brooks
Approved by: brooks
Differential Revision: https://reviews.freebsd.org/D3335
Modified:
head/devel/llvm-devel/Makefile
head/devel/llvm-devel/pkg-plist
head/devel/llvm37/Makefile
head/devel/llvm37/pkg-plist
Modified: head/devel/llvm-devel/Makefile
==============================================================================
--- head/devel/llvm-devel/Makefile Mon Aug 10 19:04:04 2015 (r393885)
+++ head/devel/llvm-devel/Makefile Mon Aug 10 19:04:05 2015 (r393886)
@@ -34,9 +34,9 @@ LLD_COMMIT= 754e78c2a7593764867b8671fcd1
LLDB_COMMIT= f89c12e54d5d81c18f4d3f63826d568f6257cabc
OPENMP_COMMIT= d90b41fbdaa1036f7a36651449bdcb32813f8423
-OPTIONS_DEFINE= CLANG DOCS LIT LLD LLDB
+OPTIONS_DEFINE= CLANG DOCS GOLD LIT LLD LLDB
OPTIONS_DEFINE_amd64= OPENMP
-OPTIONS_DEFAULT= CLANG LIT LLD LLDB
+OPTIONS_DEFAULT= CLANG GOLD LIT LLD LLDB
OPTIONS_DEFAULT_amd64= OPENMP
OPTIONS_SUB= yes
@@ -64,6 +64,9 @@ OPENMP_DESC= Install libomp, the LLVM O
OPENMP_CONFLICTS_INSTALL= libiomp5-devel-*
OPENMP_GH_PROJECT= openmp:openmp
OPENMP_GH_TAGNAME= ${OPENMP_COMMIT}:openmp
+GOLD_DESC= Build the LLVM Gold plugin for LTO
+GOLD_CMAKE_ON= -DLLVM_BINUTILS_INCDIR=${LOCALBASE}/include
+GOLD_BUILD_DEPENDS= ld.gold:${PORTSDIR}/devel/binutils
OPTIONS_SUB= yes
@@ -258,7 +261,7 @@ build-plist:
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX} -type f | \
${SED} -e 's|${STAGEDIR}${PYTHON_SITELIBDIR}|%%LIT%%%%PYTHON_SITELIBDIR%%|' | \
${SORT} >> ${PLIST}.tmp
- awk '{if ($$0 ~ /clang/ && $$0 !~ /omp.h/) {printf "%%%%CLANG%%%%"} if ($$0 ~ /lld/ && $$0 !~ /lldb/) {printf "%%%%LLD%%%%"} if ($$0 ~ /(argdumper|lldb)/) {printf "%%%%LLDB%%%%"} if ($$0 ~ /lib.*omp/) {printf "%%%%OPENMP%%%%"} print}' ${PLIST}.tmp >> ${PLIST}
+ awk '{if ($$0 ~ /clang/ && $$0 !~ /omp.h/) {printf "%%%%CLANG%%%%"} if ($$0 ~ /lld/ && $$0 !~ /lldb/) {printf "%%%%LLD%%%%"} if ($$0 ~ /(argdumper|lldb)/) {printf "%%%%LLDB%%%%"} if ($$0 ~ /lib.*omp/) {printf "%%%%OPENMP%%%%"} if ($$0 ~ /LLVMgold/) {printf "%%%%GOLD%%%%"} print}' ${PLIST}.tmp >> ${PLIST}
${RM} -f ${PLIST}.tmp
check-commands:
Modified: head/devel/llvm-devel/pkg-plist
==============================================================================
--- head/devel/llvm-devel/pkg-plist Mon Aug 10 19:04:04 2015 (r393885)
+++ head/devel/llvm-devel/pkg-plist Mon Aug 10 19:04:05 2015 (r393886)
@@ -1773,6 +1773,7 @@ llvm-devel/include/llvm/Transforms/Utils
llvm-devel/include/llvm/Transforms/Vectorize.h
llvm-devel/lib/BugpointPasses.so
llvm-devel/lib/LLVMHello.so
+%%GOLD%%llvm-devel/lib/LLVMgold.so
%%CLANG%%llvm-devel/lib/clang/3.8.0/include/Intrin.h
%%CLANG%%llvm-devel/lib/clang/3.8.0/include/__stddef_max_align_t.h
%%CLANG%%llvm-devel/lib/clang/3.8.0/include/__wmmintrin_aes.h
Modified: head/devel/llvm37/Makefile
==============================================================================
--- head/devel/llvm37/Makefile Mon Aug 10 19:04:04 2015 (r393885)
+++ head/devel/llvm37/Makefile Mon Aug 10 19:04:05 2015 (r393886)
@@ -30,9 +30,9 @@ SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" L
CMAKE_INSTALL_PREFIX= ${LLVM_PREFIX}
CMAKE_ARGS= -DBUILD_SHARED_LIBS=ON
-OPTIONS_DEFINE= CLANG DOCS LIT LLD LLDB
+OPTIONS_DEFINE= CLANG DOCS GOLD LIT LLD LLDB
OPTIONS_DEFINE_amd64= OPENMP
-OPTIONS_DEFAULT= CLANG LIT LLD LLDB
+OPTIONS_DEFAULT= CLANG GOLD LIT LLD LLDB
OPTIONS_DEFAULT_amd64= OPENMP
OPTIONS_SUB= yes
@@ -55,6 +55,9 @@ LLDB_BUILD_DEPENDS= swig:${PORTSDIR}/dev
LLDB_DISTFILES= lldb-${DISTVERSION}.src${EXTRACT_SUFX}
OPENMP_DESC= Install libomp, the LLVM OpenMP runtime library
OPENMP_DISTFILES= openmp-${DISTVERSION}.src${EXTRACT_SUFX}
+GOLD_DESC= Build the LLVM Gold plugin for LTO
+GOLD_CMAKE_ON= -DLLVM_BINUTILS_INCDIR=${LOCALBASE}/include
+GOLD_BUILD_DEPENDS= ld.gold:${PORTSDIR}/devel/binutils
# Emulate USE_GITHUB's ${WRKSRC_tag} to reduce diffs to ../llvm-devel
.for option in CLANG LLD LLDB OPENMP
@@ -255,7 +258,7 @@ build-plist:
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX} -type f | \
${SED} -e 's|${STAGEDIR}${PYTHON_SITELIBDIR}|%%LIT%%%%PYTHON_SITELIBDIR%%|' | \
${SORT} >> ${PLIST}.tmp
- awk '{if ($$0 ~ /clang/ && $$0 !~ /omp.h/) {printf "%%%%CLANG%%%%"} if ($$0 ~ /lld/ && $$0 !~ /lldb/) {printf "%%%%LLD%%%%"} if ($$0 ~ /(argdumper|lldb)/) {printf "%%%%LLDB%%%%"} if ($$0 ~ /lib.*omp/) {printf "%%%%OPENMP%%%%"} print}' ${PLIST}.tmp >> ${PLIST}
+ awk '{if ($$0 ~ /clang/ && $$0 !~ /omp.h/) {printf "%%%%CLANG%%%%"} if ($$0 ~ /lld/ && $$0 !~ /lldb/) {printf "%%%%LLD%%%%"} if ($$0 ~ /(argdumper|lldb)/) {printf "%%%%LLDB%%%%"} if ($$0 ~ /lib.*omp/) {printf "%%%%OPENMP%%%%"} if ($$0 ~ /LLVMgold/) {printf "%%%%GOLD%%%%"} print}' ${PLIST}.tmp >> ${PLIST}
${RM} -f ${PLIST}.tmp
check-commands:
Modified: head/devel/llvm37/pkg-plist
==============================================================================
--- head/devel/llvm37/pkg-plist Mon Aug 10 19:04:04 2015 (r393885)
+++ head/devel/llvm37/pkg-plist Mon Aug 10 19:04:05 2015 (r393886)
@@ -1774,6 +1774,7 @@ llvm37/include/llvm/Transforms/Utils/Val
llvm37/include/llvm/Transforms/Vectorize.h
llvm37/lib/BugpointPasses.so
llvm37/lib/LLVMHello.so
+%%GOLD%%llvm37/lib/LLVMgold.so
%%CLANG%%llvm37/lib/clang/3.7.0/include/Intrin.h
%%CLANG%%llvm37/lib/clang/3.7.0/include/__stddef_max_align_t.h
%%CLANG%%llvm37/lib/clang/3.7.0/include/__wmmintrin_aes.h
More information about the svn-ports-head
mailing list