aboutsummaryrefslogtreecommitdiffstats
path: root/lang/clang34
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2014-01-28 08:04:46 +0800
committerbrooks <brooks@FreeBSD.org>2014-01-28 08:04:46 +0800
commit0907d362daf370c1b751b8b8f188f3ffca4983d9 (patch)
tree631295497f65ac81deb84fcbceed1b54c279ef8c /lang/clang34
parent955b7e2dc7776011f54c3818f86338f6452cca8e (diff)
downloadfreebsd-ports-gnome-0907d362daf370c1b751b8b8f188f3ffca4983d9.tar.gz
freebsd-ports-gnome-0907d362daf370c1b751b8b8f188f3ffca4983d9.tar.zst
freebsd-ports-gnome-0907d362daf370c1b751b8b8f188f3ffca4983d9.zip
Attempt to add back support for scan-build.[1]
Change ccc-analyzer's default compiler to clang.[2] Install unwind.h.[3] PR: ports/185733 [1], ports/183802 [2], ports/186173 [3]
Diffstat (limited to 'lang/clang34')
-rw-r--r--lang/clang34/Makefile25
-rw-r--r--lang/clang34/files/patch-tools_clang_lib_Headers_Makefile2
-rw-r--r--lang/clang34/files/patch-tools_clang_tools_scan-build_ccc-analyzer14
-rw-r--r--lang/clang34/pkg-plist10
4 files changed, 47 insertions, 4 deletions
diff --git a/lang/clang34/Makefile b/lang/clang34/Makefile
index e9eddef92159..6e1607a2b6e2 100644
--- a/lang/clang34/Makefile
+++ b/lang/clang34/Makefile
@@ -2,6 +2,7 @@
PORTNAME= clang
DISTVERSION= 3.4
+PORTREVISION= 1
CATEGORIES= lang devel
MASTER_SITES= http://llvm.org/releases/${PORTVERSION}/
PKGNAMESUFFIX= ${LLVM_SUFFIX}
@@ -56,16 +57,22 @@ CONFIGURE_ARGS+= --disable-docs
PLIST_SUB+= LLVM_SUFFIX=${LLVM_SUFFIX} \
PORTVERSION=${PORTVERSION}
-
-COMMANDS= c-index-test \
+COMMANDS= c++-analyzer \
+ c-index-test \
+ ccc-analyzer \
clang \
clang++ \
clang-check \
clang-cpp \
clang-format \
- clang-tblgen
+ clang-tblgen \
+ scan-build \
+ scan-view
FIRST_COMMAND= ${COMMANDS:C/^/XXXX/1:MXXXX*:C/^XXXX//}
+PORTDATA= scanview.css \
+ sorttable.js
+
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MASSERTS}
@@ -128,6 +135,15 @@ post-install:
${STAGEDIR}${LLVM_PREFIX}/bin/clang-cpp
${INSTALL_SCRIPT} ${WRKDIR}/llvm-wrapper.sh \
${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX}
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-build/ccc-analyzer \
+ ${WRKSRC}/tools/clang/tools/scan-build/c++-analyzer \
+ ${WRKSRC}/tools/clang/tools/scan-build/scan-build \
+ ${WRKSRC}/tools/clang/tools/scan-view/scan-view \
+ ${STAGEDIR}${LLVM_PREFIX}/bin/
+ ${MKDIR} ${STAGEDIR}${DATADIR}
+ ${INSTALL_DATA} ${WRKSRC}/tools/clang/tools/scan-build/scanview.css \
+ ${WRKSRC}/tools/clang/tools/scan-build/sorttable.js \
+ ${STAGEDIR}${DATADIR}
.for command in ${COMMANDS:C/^/XXXX/1:NXXXX*}
test -e ${STAGEDIR}${LLVM_PREFIX}/bin/${command}
${LN} -f ${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} \
@@ -139,6 +155,8 @@ post-install:
.endif
${INSTALL_MAN} ${WRKSRC}/tools/clang/docs/tools/clang.1 \
${STAGEDIR}${MANPREFIX}/man/man1/clang${LLVM_SUFFIX}.1
+ ${INSTALL_MAN} ${WRKSRC}/tools/clang/tools/scan-build/scan-build.1 \
+ ${STAGEDIR}${MANPREFIX}/man/man1/scan-build${LLVM_SUFFIX}.1
PLIST_FILE_LIST= ${COMMANDS:S|^|bin/|} \
lib/libclang*
@@ -156,6 +174,7 @@ build-plist:
| ${SED} -e 's|${STAGEDIR}${PREFIX}/||' \
-e 's|${LLVM_SUFFIX}|%%LLVM_SUFFIX%%|' | ${SORT} >> ${PLIST}
echo man/man1/clang%%LLVM_SUFFIX%%.1.gz >> ${PLIST}
+ echo man/man1/scan-build%%LLVM_SUFFIX%%.1.gz >> ${PLIST}
${FIND} ${STAGEDIR}${DOCSDIR} -type f | \
${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | \
${SORT} >> ${PLIST}
diff --git a/lang/clang34/files/patch-tools_clang_lib_Headers_Makefile b/lang/clang34/files/patch-tools_clang_lib_Headers_Makefile
index 9142dcd9b162..0c0b3783043d 100644
--- a/lang/clang34/files/patch-tools_clang_lib_Headers_Makefile
+++ b/lang/clang34/files/patch-tools_clang_lib_Headers_Makefile
@@ -8,7 +8,7 @@ $FreeBSD$
HeaderDir := $(PROJ_OBJ_ROOT)/$(BuildMode)/lib/clang/$(CLANG_VERSION)/include
-HEADERS := $(notdir $(wildcard $(PROJ_SRC_DIR)/*.h))
-+HEADERS := $(notdir $(wildcard $(PROJ_SRC_DIR)/*intrin*.h) altivec.h cpuid.h mm3dnow.h mm_malloc.h)
++HEADERS := $(notdir $(wildcard $(PROJ_SRC_DIR)/*intrin*.h) altivec.h cpuid.h mm3dnow.h mm_malloc.h unwind.h)
OBJHEADERS := $(addprefix $(HeaderDir)/, $(HEADERS))
diff --git a/lang/clang34/files/patch-tools_clang_tools_scan-build_ccc-analyzer b/lang/clang34/files/patch-tools_clang_tools_scan-build_ccc-analyzer
new file mode 100644
index 000000000000..c48f1b12081d
--- /dev/null
+++ b/lang/clang34/files/patch-tools_clang_tools_scan-build_ccc-analyzer
@@ -0,0 +1,14 @@
+
+$FreeBSD$
+
+--- tools/clang/tools/scan-build/ccc-analyzer.orig
++++ tools/clang/tools/scan-build/ccc-analyzer
+@@ -30,7 +30,7 @@
+ my $DefaultCCompiler;
+ my $DefaultCXXCompiler;
+
+-if (`uname -a` =~ m/Darwin/) {
++if (`uname -a` =~ m/(Darwin|FreeBSD)/) {
+ $DefaultCCompiler = 'clang';
+ $DefaultCXXCompiler = 'clang++';
+ } else {
diff --git a/lang/clang34/pkg-plist b/lang/clang34/pkg-plist
index 911ad6b5807a..ce16629fbe8c 100644
--- a/lang/clang34/pkg-plist
+++ b/lang/clang34/pkg-plist
@@ -1,17 +1,25 @@
+bin/c++-analyzer%%LLVM_SUFFIX%%
bin/c-index-test%%LLVM_SUFFIX%%
+bin/ccc-analyzer%%LLVM_SUFFIX%%
bin/clang%%LLVM_SUFFIX%%
bin/clang++%%LLVM_SUFFIX%%
bin/clang-check%%LLVM_SUFFIX%%
bin/clang-cpp%%LLVM_SUFFIX%%
bin/clang-format%%LLVM_SUFFIX%%
bin/clang-tblgen%%LLVM_SUFFIX%%
+bin/scan-build%%LLVM_SUFFIX%%
+bin/scan-view%%LLVM_SUFFIX%%
+llvm%%LLVM_SUFFIX%%/bin/c++-analyzer
llvm%%LLVM_SUFFIX%%/bin/c-index-test
+llvm%%LLVM_SUFFIX%%/bin/ccc-analyzer
llvm%%LLVM_SUFFIX%%/bin/clang
llvm%%LLVM_SUFFIX%%/bin/clang++
llvm%%LLVM_SUFFIX%%/bin/clang-check
llvm%%LLVM_SUFFIX%%/bin/clang-cpp
llvm%%LLVM_SUFFIX%%/bin/clang-format
llvm%%LLVM_SUFFIX%%/bin/clang-tblgen
+llvm%%LLVM_SUFFIX%%/bin/scan-build
+llvm%%LLVM_SUFFIX%%/bin/scan-view
llvm%%LLVM_SUFFIX%%/include/clang-c/CXCompilationDatabase.h
llvm%%LLVM_SUFFIX%%/include/clang-c/CXString.h
llvm%%LLVM_SUFFIX%%/include/clang-c/Index.h
@@ -450,6 +458,7 @@ llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/shaintrin.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/smmintrin.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/tbmintrin.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/tmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/unwind.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/wmmintrin.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/x86intrin.h
llvm%%LLVM_SUFFIX%%/lib/clang/3.4/include/xmmintrin.h
@@ -480,6 +489,7 @@ llvm%%LLVM_SUFFIX%%/lib/libclangStaticAnalyzerCore.a
llvm%%LLVM_SUFFIX%%/lib/libclangStaticAnalyzerFrontend.a
llvm%%LLVM_SUFFIX%%/lib/libclangTooling.a
man/man1/clang%%LLVM_SUFFIX%%.1.gz
+man/man1/scan-build%%LLVM_SUFFIX%%.1.gz
%%PORTDOCS%%%%DOCSDIR%%/html/clang/clang.html
%%PORTDOCS%%%%DOCSDIR%%/html/clang/manpage.css
%%PORTDOCS%%%%DOCSDIR%%/ps/clang.ps