aboutsummaryrefslogtreecommitdiff
path: root/lang/clang35
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2014-08-01 22:38:44 +0000
committerBrooks Davis <brooks@FreeBSD.org>2014-08-01 22:38:44 +0000
commite88f73c0a6943081626839f63878969f13ae7740 (patch)
treeb5ce750328b824a2f36d10be75e02169d0035ae2 /lang/clang35
parent9021e479e9ec58e3feff0829690a3cec7c50be59 (diff)
downloadports-e88f73c0a6943081626839f63878969f13ae7740.tar.gz
ports-e88f73c0a6943081626839f63878969f13ae7740.zip
Notes
Diffstat (limited to 'lang/clang35')
-rw-r--r--lang/clang35/Makefile205
-rw-r--r--lang/clang35/distinfo4
-rw-r--r--lang/clang35/files/llvm-wrapper.sh.in10
-rw-r--r--lang/clang35/files/patch-tools_clang_docs_Makefile13
-rw-r--r--lang/clang35/files/patch-tools_clang_include_clang_Analysis_Analyses_FormatString.h24
-rw-r--r--lang/clang35/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp48
-rw-r--r--lang/clang35/files/patch-tools_clang_lib_Frontend_InitHeaderSearch.cpp15
-rw-r--r--lang/clang35/files/patch-tools_clang_lib_Headers_Makefile14
-rw-r--r--lang/clang35/files/patch-tools_clang_lib_Sema_SemaChecking.cpp45
-rw-r--r--lang/clang35/files/patch-tools_clang_tools_scan-build_ccc-analyzer14
-rw-r--r--lang/clang35/files/patch-tools_clang_tools_scan-build_scan-build23
-rw-r--r--lang/clang35/files/patch-utils_llvm-build_llvmbuild_main.py20
-rw-r--r--lang/clang35/pkg-descr4
-rw-r--r--lang/clang35/pkg-plist550
14 files changed, 989 insertions, 0 deletions
diff --git a/lang/clang35/Makefile b/lang/clang35/Makefile
new file mode 100644
index 000000000000..933c1a864086
--- /dev/null
+++ b/lang/clang35/Makefile
@@ -0,0 +1,205 @@
+# $FreeBSD$
+
+PORTNAME= clang
+DISTVERSION= 3.5rc1
+CATEGORIES= lang devel
+MASTER_SITES= http://llvm.org/pre-releases/3.5/rc1/
+PKGNAMESUFFIX= ${LLVM_SUFFIX}
+DISTNAME= ${CLANG_NAME}
+DISTFILES= ${CLANG_SOURCE} \
+ ${LLVM_SOURCE}
+
+MAINTAINER= brooks@FreeBSD.org
+COMMENT= C, Objective-C, and C++ compiler
+
+CLANG_NAME= cfe.src-${DISTVERSION}.src
+CLANG_SOURCE= ${CLANG_NAME}${EXTRACT_SUFX}
+CLANG_EXTRACT= cfe.src
+LLVM_NAME= llvm.src-${DISTVERSION}.src
+LLVM_SOURCE= ${LLVM_NAME}${EXTRACT_SUFX}
+LLVM_EXTRACT= llvm.src
+LIBNAME= libLLVM-3.5svn.so
+
+WRKSRC= ${WRKDIR}/${LLVM_EXTRACT}
+BUILD_WRKSRC= ${WRKSRC}/tools/clang
+INSTALL_WRKSRC= ${WRKSRC}/tools/clang
+
+BUILD_DEPENDS+= llc${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm${LLVM_SUFFIX}
+RUN_DEPENDS+= llc${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm${LLVM_SUFFIX}
+
+LLVM_SUFFIX= ${PORTVERSION:S/.//g:C/r.*//}
+LLVM_PREFIX= ${PREFIX}/llvm${LLVM_SUFFIX}
+DATADIR= ${PREFIX}/share/${PORTNAME}${LLVM_SUFFIX}
+DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${LLVM_SUFFIX}
+
+GNU_CONFIGURE= yes
+GNU_CONFIGURE_PREFIX= ${LLVM_PREFIX}
+USES= compiler:c++11-lib gmake perl5
+USE_LDCONFIG= yes
+USE_PYTHON_BUILD= yes
+
+MAKE_ARGS= CLANG_TBLGEN=${WRKSRC}/${RELTYPE}/bin/clang-tblgen \
+ LLVMIncDir=${LLVM_PREFIX}/include \
+ LLVMToolDir=${LLVM_PREFIX}/bin \
+ LLVMLibDir=${LLVM_PREFIX}/lib
+
+SUB_FILES= llvm-wrapper.sh
+SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" LLVM_SUFFIX="${LLVM_SUFFIX}"
+
+OPTIONS_DEFINE= ASSERTS DOCS
+
+ASSERTS_DESC= Enable assertions (thread unsafe)
+
+CONFIGURE_ARGS+= --enable-optimized --enable-shared
+# Build some docs manually later
+CONFIGURE_ARGS+= --disable-docs
+
+PLIST_SUB+= LLVM_SUFFIX=${LLVM_SUFFIX} \
+ PORTVERSION=${PORTVERSION}
+COMMANDS= c++-analyzer \
+ c-index-test \
+ ccc-analyzer \
+ clang \
+ clang++ \
+ clang-check \
+ clang-cpp \
+ clang-format \
+ 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}
+CONFIGURE_ARGS+= --enable-assertions
+RELTYPE= Release+Asserts
+.else
+CONFIGURE_ARGS+= --disable-assertions
+RELTYPE= Release
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${COMPILER_TYPE} != clang
+BROKEN= link errors when build with gcc
+.endif
+
+.if ${PORT_OPTIONS:MASSERTS}
+pre-fetch:
+ @if [ "`llvm-config${LLVM_SUFFIX} --build-mode`" != ${RELTYPE} ]; then \
+ ${ECHO_MSG} ;\
+ ${ECHO_MSG} ASSERTS option enabled, but devel/llvm${LLVM_SUFFIX} was compiled without ASSERTS. ;\
+ ${ECHO_MSG} Correct options mismatch to proceed. ;\
+ ${ECHO_MSG} ;\
+ false ;\
+ fi
+.endif
+
+post-extract:
+ ${RM} -f ${BUILD_WRKSRC}
+ ${MV} ${WRKDIR}/${CLANG_EXTRACT} ${BUILD_WRKSRC}
+
+post-patch:
+ ${REINPLACE_CMD} -e 's|${PORTVERSION}svn|${PORTVERSION}|g' \
+ ${WRKSRC}/configure
+ ${REINPLACE_CMD} -e 's|\(PROJ_docsdir.*:=\).*$$|\1${DOCSDIR}|g' \
+ ${WRKSRC}/Makefile.config.in
+ ${REINPLACE_CMD} -e 's|\(PROJ_mandir.*:=\).*$$|\1${MANPREFIX}/man|g' \
+ ${WRKSRC}/Makefile.config.in
+ ${REINPLACE_CMD} -e 's|/usr/local/|${LOCALBASE}/|g' \
+ ${WRKSRC}/tools/clang/lib/Frontend/InitHeaderSearch.cpp
+ ${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}/|g' \
+ ${WRKSRC}/tools/clang/tools/scan-build/scan-build
+
+pre-build:
+ ${LN} -sf ${LLVM_PREFIX}/include/llvm/IR/Intrinsics.gen \
+ ${WRKSRC}/include/llvm/IR/
+ ${MKDIR} ${WRKSRC}/${RELTYPE}/lib
+ ${LN} -sf ${LLVM_PREFIX}/lib/${LIBNAME} ${WRKSRC}/${RELTYPE}/lib/
+ ${LN} -sf ${LLVM_PREFIX}/lib/libLLVMTableGen.a ${WRKSRC}/${RELTYPE}/lib/
+ ${LN} -sf ${LLVM_PREFIX}/lib/libLLVMSupport.a ${WRKSRC}/${RELTYPE}/lib/
+ cd ${WRKSRC}/utils/unittest && ${MAKE_CMD}
+
+post-build:
+ @cd ${WRKSRC}/tools/clang/docs/tools && ${MAKE_CMD} man
+.if ${PORT_OPTIONS:MDOCS}
+ @cd ${WRKSRC}/tools/clang/docs/tools && ${MAKE_CMD} html ps
+.endif
+
+post-install:
+ ${STRIP_CMD} ${STAGEDIR}${LLVM_PREFIX}/lib/libclang.so
+ ${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/clang \
+ ${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} \
+ ${STAGEDIR}${PREFIX}/bin/${command}${LLVM_SUFFIX}
+.endfor
+.if ${PORT_OPTIONS:MDOCS}
+ cd ${WRKSRC}/tools/clang/docs/tools && \
+ ${MAKE_CMD} DESTDIR=${STAGEDIR}/ install-html install-ps
+.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*
+PLIST_DIR_LIST= include/clang \
+ include/clang-c \
+ lib/clang
+
+build-plist:
+ ${RM} -f ${PLIST}
+.for command in ${COMMANDS}
+ ${ECHO_CMD} bin/${command}%%LLVM_SUFFIX%% >> ${PLIST}
+.endfor
+ (ls ${PLIST_FILE_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|}; \
+ ${FIND} ${PLIST_DIR_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|} -type f) \
+ | ${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}
+ ${FIND} ${PLIST_DIR_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|} -type d | \
+ ${SED} -e 's|${STAGEDIR}${PREFIX}/|@dirrm |' \
+ -e 's|${LLVM_SUFFIX}|%%LLVM_SUFFIX%%|' | \
+ ${SORT} -r >> ${PLIST}
+ ${FIND} ${STAGEDIR}${DOCSDIR} -type d | ${SORT} -r | \
+ ${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%@dirrm %%DOCSDIR%%|' \
+ >> ${PLIST}
+
+.if make(svn-patch)
+.if !defined(PATCH_REV)
+.error svn-patch requires that PATCH_REV be set
+.endif
+_PATCH_FILE=${FILESDIR}/patch-svn-${PATCH_REV}
+_LLVM_BASE=http://llvm.org/svn/llvm-project/cfe/trunk
+svn-patch:
+ ${PRINTF} "$$%s$$\n" FreeBSD > ${_PATCH_FILE}
+ svn log -c ${PATCH_REV} ${_LLVM_BASE} >> ${_PATCH_FILE}
+ svn diff -c ${PATCH_REV} ${_LLVM_BASE} | \
+ ${SED} -e 's;^--- ;--- tools/clang/;' | \
+ ${SED} -e 's;^+++ ;+++ tools/clang/;' >> \
+ ${_PATCH_FILE}
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/lang/clang35/distinfo b/lang/clang35/distinfo
new file mode 100644
index 000000000000..2f7db34587d3
--- /dev/null
+++ b/lang/clang35/distinfo
@@ -0,0 +1,4 @@
+SHA256 (cfe.src-3.5rc1.src.tar.gz) = 01d922b250f34df6c83beabbf07138178b3c7d04829a006cdf507c4040d79b9c
+SIZE (cfe.src-3.5rc1.src.tar.gz) = 11507469
+SHA256 (llvm.src-3.5rc1.src.tar.gz) = 841929809647700f7629f0d567af7a8b45fb82f11d25239c8602db0badf8adb8
+SIZE (llvm.src-3.5rc1.src.tar.gz) = 17623122
diff --git a/lang/clang35/files/llvm-wrapper.sh.in b/lang/clang35/files/llvm-wrapper.sh.in
new file mode 100644
index 000000000000..0a460f3156e5
--- /dev/null
+++ b/lang/clang35/files/llvm-wrapper.sh.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+# $FreeBSD$
+
+LLVM_PREFIX="%%LLVM_PREFIX%%"
+LLVM_SUFFIX="%%LLVM_SUFFIX%%"
+
+tool=$(basename $0)
+tool="${LLVM_PREFIX}/bin/${tool%${LLVM_SUFFIX}}"
+LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LLVM_PREFIX}/lib" \
+ "${tool}" "${@}"
diff --git a/lang/clang35/files/patch-tools_clang_docs_Makefile b/lang/clang35/files/patch-tools_clang_docs_Makefile
new file mode 100644
index 000000000000..e11bb5957797
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_docs_Makefile
@@ -0,0 +1,13 @@
+
+$FreeBSD$
+
+--- tools/clang/docs/Makefile.orig
++++ tools/clang/docs/Makefile
+@@ -8,7 +8,6 @@
+ ##===----------------------------------------------------------------------===##
+
+ CLANG_LEVEL := ..
+-DIRS := tools
+
+ ifdef BUILD_FOR_WEBSITE
+ PROJ_OBJ_DIR = .
diff --git a/lang/clang35/files/patch-tools_clang_include_clang_Analysis_Analyses_FormatString.h b/lang/clang35/files/patch-tools_clang_include_clang_Analysis_Analyses_FormatString.h
new file mode 100644
index 000000000000..3c4b574d3057
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_include_clang_Analysis_Analyses_FormatString.h
@@ -0,0 +1,24 @@
+
+$FreeBSD$
+
+--- tools/clang/include/clang/Analysis/Analyses/FormatString.h.orig
++++ tools/clang/include/clang/Analysis/Analyses/FormatString.h
+@@ -117,7 +117,7 @@
+ // C99 conversion specifiers.
+ cArg,
+ dArg,
+- DArg, // Apple extension
++ DArg, // Apple and FreeBSD extension
+ iArg,
+ IntArgBeg = dArg, IntArgEnd = iArg,
+
+@@ -148,6 +148,9 @@
+
+ // ** Printf-specific **
+
++ // FreeBSD specific specifiers
++ bArg,
++
+ // Objective-C specific specifiers.
+ ObjCObjArg, // '@'
+ ObjCBeg = ObjCObjArg, ObjCEnd = ObjCObjArg,
diff --git a/lang/clang35/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp b/lang/clang35/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp
new file mode 100644
index 000000000000..d4cfefbd9b59
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp
@@ -0,0 +1,48 @@
+
+$FreeBSD$
+
+--- tools/clang/lib/Analysis/PrintfFormatString.cpp.orig
++++ tools/clang/lib/Analysis/PrintfFormatString.cpp
+@@ -198,9 +198,10 @@
+ case '@': k = ConversionSpecifier::ObjCObjArg; break;
+ // Glibc specific.
+ case 'm': k = ConversionSpecifier::PrintErrno; break;
+- // Apple-specific
++
++ // Apple-specific (and one FreeBSD)
+ case 'D':
+- if (Target.getTriple().isOSDarwin())
++ if (Target.getTriple().isOSDarwin() || Target.getTriple().isOSFreeBSD())
+ k = ConversionSpecifier::DArg;
+ break;
+ case 'O':
+@@ -211,11 +212,29 @@
+ if (Target.getTriple().isOSDarwin())
+ k = ConversionSpecifier::UArg;
+ break;
++
++ // FreeBSD-specific
++ case 'b':
++ if (Target.getTriple().isOSFreeBSD())
++ k = ConversionSpecifier::bArg;
++ break;
++ case 'r':
++ if (Target.getTriple().isOSFreeBSD())
++ k = ConversionSpecifier::xArg;
++ break;
++ case 'y':
++ if (Target.getTriple().isOSFreeBSD())
++ k = ConversionSpecifier::iArg;
++ break;
+ }
+ PrintfConversionSpecifier CS(conversionPosition, k);
+ FS.setConversionSpecifier(CS);
+ if (CS.consumesDataArgument() && !FS.usesPositionalArg())
+ FS.setArgIndex(argIndex++);
++ // FreeBSD extension
++ if (Target.getTriple().isOSFreeBSD() && (k == ConversionSpecifier::bArg ||
++ k == ConversionSpecifier::DArg))
++ argIndex++;
+
+ if (k == ConversionSpecifier::InvalidSpecifier) {
+ // Assume the conversion takes one argument.
diff --git a/lang/clang35/files/patch-tools_clang_lib_Frontend_InitHeaderSearch.cpp b/lang/clang35/files/patch-tools_clang_lib_Frontend_InitHeaderSearch.cpp
new file mode 100644
index 000000000000..283a4aa5be75
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_lib_Frontend_InitHeaderSearch.cpp
@@ -0,0 +1,15 @@
+Look for the libc++ headers in base, and afterwards look if they might
+have been installed in ports. This is only usefull on FreeBSD <= 9.x since
+libc++ is shipped in 10 by default. No path to the library of libc++ is
+provided. The port wanting to use libc++ need to provide its own LDFLAGS.
+
+--- tools/clang/lib/Frontend/InitHeaderSearch.cpp.orig 2013-06-21 20:35:23.000000000 +0200
++++ tools/clang/lib/Frontend/InitHeaderSearch.cpp 2013-06-21 20:41:38.000000000 +0200
+@@ -486,6 +486,7 @@ void InitHeaderSearch::AddDefaultInclude
+ AddPath("/usr/include/c++/v1/support/solaris", CXXSystem, false);
+
+ AddPath("/usr/include/c++/v1", CXXSystem, false);
++ AddPath("/usr/local/include/c++/v1", CXXSystem, false);
+ } else {
+ AddDefaultCPlusPlusIncludePaths(triple, HSOpts);
+ }
diff --git a/lang/clang35/files/patch-tools_clang_lib_Headers_Makefile b/lang/clang35/files/patch-tools_clang_lib_Headers_Makefile
new file mode 100644
index 000000000000..0c0b3783043d
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_lib_Headers_Makefile
@@ -0,0 +1,14 @@
+
+$FreeBSD$
+
+--- tools/clang/lib/Headers/Makefile.orig
++++ tools/clang/lib/Headers/Makefile
+@@ -19,7 +19,7 @@
+
+ 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 unwind.h)
+
+ OBJHEADERS := $(addprefix $(HeaderDir)/, $(HEADERS))
+
diff --git a/lang/clang35/files/patch-tools_clang_lib_Sema_SemaChecking.cpp b/lang/clang35/files/patch-tools_clang_lib_Sema_SemaChecking.cpp
new file mode 100644
index 000000000000..139b7df86124
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_lib_Sema_SemaChecking.cpp
@@ -0,0 +1,45 @@
+
+$FreeBSD$
+
+--- tools/clang/lib/Sema/SemaChecking.cpp.orig
++++ tools/clang/lib/Sema/SemaChecking.cpp
+@@ -1511,6 +1511,39 @@
+ CoveredArgs.set(argIndex);
+ }
+
++ // FreeBSD extensions
++ if (CS.getKind() == ConversionSpecifier::bArg || CS.getKind() == ConversionSpecifier::DArg) {
++ // claim the second argument
++ CoveredArgs.set(argIndex + 1);
++
++ // Now type check the data expression that matches the
++ // format specifier.
++ const Expr *Ex = getDataArg(argIndex);
++ QualType type = (CS.getKind() == ConversionSpecifier::bArg) ? S.Context.IntTy : S.Context.getPointerType(S.Context.UnsignedCharTy);
++ //const analyze_printf::ArgType &ATR = S.Context.IntTy;
++ const analyze_printf::ArgType &ATR = type;
++ if (ATR.isValid() && !ATR.matchesType(S.Context, Ex->getType()))
++ S.Diag(getLocationOfByte(CS.getStart()),
++ diag::warn_format_conversion_argument_type_mismatch)
++ << ATR.getRepresentativeType(S.Context) << Ex->getType()
++ << getSpecifierRange(startSpecifier, specifierLen)
++ << Ex->getSourceRange();
++
++ // Now type check the data expression that matches the
++ // format specifier.
++ Ex = getDataArg(argIndex + 1);
++ const analyze_printf::ArgType &ATR2 = ArgType::CStrTy;
++ if (ATR2.isValid() && !ATR2.matchesType(S.Context, Ex->getType()))
++ S.Diag(getLocationOfByte(CS.getStart()),
++ diag::warn_format_conversion_argument_type_mismatch)
++ << ATR2.getRepresentativeType(S.Context) << Ex->getType()
++ << getSpecifierRange(startSpecifier, specifierLen)
++ << Ex->getSourceRange();
++
++ return true;
++ }
++ // END OF FREEBSD EXTENSIONS
++
+ // Check for using an Objective-C specific conversion specifier
+ // in a non-ObjC literal.
+ if (!IsObjCLiteral && CS.isObjCArg()) {
diff --git a/lang/clang35/files/patch-tools_clang_tools_scan-build_ccc-analyzer b/lang/clang35/files/patch-tools_clang_tools_scan-build_ccc-analyzer
new file mode 100644
index 000000000000..d09c0e043b18
--- /dev/null
+++ b/lang/clang35/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
+@@ -31,7 +31,7 @@
+ my $DefaultCXXCompiler;
+ my $IsCXX;
+
+-if (`uname -a` =~ m/Darwin/) {
++if (`uname -a` =~ m/(Darwin|FreeBSD)/) {
+ $DefaultCCompiler = 'clang';
+ $DefaultCXXCompiler = 'clang++';
+ } else {
diff --git a/lang/clang35/files/patch-tools_clang_tools_scan-build_scan-build b/lang/clang35/files/patch-tools_clang_tools_scan-build_scan-build
new file mode 100644
index 000000000000..10d54895e5c6
--- /dev/null
+++ b/lang/clang35/files/patch-tools_clang_tools_scan-build_scan-build
@@ -0,0 +1,23 @@
+
+$FreeBSD$
+
+--- tools/clang/tools/scan-build/scan-build.orig
++++ tools/clang/tools/scan-build/scan-build
+@@ -437,7 +437,7 @@
+
+ my $Dir = shift;
+
+- my $JS = Cwd::realpath("$RealBin/sorttable.js");
++ my $JS = Cwd::realpath("%%DATADIR%%/sorttable.js");
+
+ DieDiag("Cannot find 'sorttable.js'.\n")
+ if (! -r $JS);
+@@ -447,7 +447,7 @@
+ DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n")
+ if (! -r "$Dir/sorttable.js");
+
+- my $CSS = Cwd::realpath("$RealBin/scanview.css");
++ my $CSS = Cwd::realpath("%%DATADIR%%/scanview.css");
+
+ DieDiag("Cannot find 'scanview.css'.\n")
+ if (! -r $CSS);
diff --git a/lang/clang35/files/patch-utils_llvm-build_llvmbuild_main.py b/lang/clang35/files/patch-utils_llvm-build_llvmbuild_main.py
new file mode 100644
index 000000000000..1e2de0273d55
--- /dev/null
+++ b/lang/clang35/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/lang/clang35/pkg-descr b/lang/clang35/pkg-descr
new file mode 100644
index 000000000000..37b1d8e486d6
--- /dev/null
+++ b/lang/clang35/pkg-descr
@@ -0,0 +1,4 @@
+The goal of the Clang project is to create a new C, C++, Objective C and
+Objective C++ front-end for the LLVM compiler.
+
+WWW: http://clang.llvm.org/
diff --git a/lang/clang35/pkg-plist b/lang/clang35/pkg-plist
new file mode 100644
index 000000000000..e42758c6c2e2
--- /dev/null
+++ b/lang/clang35/pkg-plist
@@ -0,0 +1,550 @@
+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/BuildSystem.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/CXCompilationDatabase.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/CXErrorCode.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/CXString.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/Documentation.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/Index.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/Platform.h
+llvm%%LLVM_SUFFIX%%/include/clang-c/module.modulemap
+llvm%%LLVM_SUFFIX%%/include/clang/ARCMigrate/ARCMT.h
+llvm%%LLVM_SUFFIX%%/include/clang/ARCMigrate/ARCMTActions.h
+llvm%%LLVM_SUFFIX%%/include/clang/ARCMigrate/FileRemapper.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/APValue.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/AST.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTContext.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTFwd.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTImporter.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTLambda.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTMutationListener.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTTypeTraits.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTUnresolvedSet.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ASTVector.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Attr.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/AttrDump.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/AttrImpl.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/AttrIterator.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/AttrVisitor.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Attrs.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/BaseSubobject.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/BuiltinTypes.def
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CXXInheritance.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CanonicalType.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CharUnits.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Comment.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentBriefParser.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentCommandInfo.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentCommandList.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentCommandTraits.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentHTMLNamedCharacterReferences.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentHTMLTags.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentHTMLTagsProperties.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentLexer.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentNodes.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentParser.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentSema.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/CommentVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DataRecursiveASTVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Decl.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclAccessPair.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclBase.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclCXX.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclContextInternals.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclFriend.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclGroup.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclLookups.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclNodes.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclObjC.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclOpenMP.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclTemplate.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DeclarationName.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/DependentDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/EvaluatedExprVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Expr.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ExprCXX.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ExprObjC.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ExternalASTSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/GlobalDecl.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/LambdaCapture.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Mangle.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/MangleNumberingContext.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/NSAPI.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/NestedNameSpecifier.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/OpenMPClause.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/OperationKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/ParentMap.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/PrettyPrinter.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/RawCommentList.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/RecordLayout.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/RecursiveASTVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Redeclarable.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/SelectorLocationsKind.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Stmt.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtCXX.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtGraphTraits.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtIterator.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtNodes.inc
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtObjC.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtOpenMP.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/StmtVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TemplateBase.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TemplateName.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/Type.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeLoc.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeLocNodes.def
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeLocVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeNodes.def
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeOrdering.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/TypeVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/UnresolvedSet.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/VTTBuilder.h
+llvm%%LLVM_SUFFIX%%/include/clang/AST/VTableBuilder.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/ASTMatchFinder.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/ASTMatchers.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/ASTMatchersInternal.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/ASTMatchersMacros.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/Dynamic/Diagnostics.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/Dynamic/Parser.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/Dynamic/Registry.h
+llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/Dynamic/VariantValue.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/Consumed.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/Dominators.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/FormatString.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/LiveVariables.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/PostOrderCFGView.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/PseudoConstantAnalysis.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ReachableCode.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafety.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyLogical.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyOps.def
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/ThreadSafetyUtil.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses/UninitializedValues.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/AnalysisContext.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/AnalysisDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/CFG.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/CFGStmtMap.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/CallGraph.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/DomainSpecific/CocoaConventions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/FlowSensitive/DataflowValues.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/ProgramPoint.h
+llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Support/BumpVector.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/ABI.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/AddressSpaces.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/AllDiagnostics.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/AttrHasAttributeImpl.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/AttrKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/AttrList.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Attributes.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Builtins.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Builtins.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsAArch64.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsARM.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsHexagon.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsMips.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsNEON.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsNVPTX.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsPPC.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsR600.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsX86.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/BuiltinsXCore.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/CapturedStmt.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/CharInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/CommentOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Diagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticASTKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticAnalysisKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticCategories.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticCommentKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticCommonKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticDriverKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticFrontendKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticGroups.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticIDs.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticIndexName.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticLexKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticOptions.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticParseKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticSemaKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/DiagnosticSerializationKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/ExceptionSpecificationType.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/ExpressionTraits.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/FileManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/FileSystemOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/FileSystemStatCache.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/IdentifierTable.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/LLVM.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Lambda.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/LangOptions.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/LangOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Linkage.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/MacroBuilder.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Module.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/ObjCRuntime.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OpenCLExtensions.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OpenMPKinds.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OpenMPKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OperatorKinds.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OperatorKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/OperatorPrecedence.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/PartialDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/PlistSupport.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/PrettyStackTrace.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Sanitizers.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/SourceLocation.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/SourceManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/SourceManagerInternals.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Specifiers.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TargetBuiltins.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TargetCXXABI.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TargetInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TargetOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TemplateKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TokenKinds.def
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TokenKinds.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/TypeTraits.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Version.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Version.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/VersionTuple.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/VirtualFileSystem.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/Visibility.h
+llvm%%LLVM_SUFFIX%%/include/clang/Basic/arm_neon.inc
+llvm%%LLVM_SUFFIX%%/include/clang/CodeGen/BackendUtil.h
+llvm%%LLVM_SUFFIX%%/include/clang/CodeGen/CGFunctionInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/CodeGen/CodeGenABITypes.h
+llvm%%LLVM_SUFFIX%%/include/clang/CodeGen/CodeGenAction.h
+llvm%%LLVM_SUFFIX%%/include/clang/CodeGen/ModuleBuilder.h
+llvm%%LLVM_SUFFIX%%/include/clang/Config/config.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Action.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Compilation.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Driver.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/DriverDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Job.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Multilib.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Options.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Options.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Phases.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/SanitizerArgs.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Tool.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/ToolChain.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Types.def
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Types.h
+llvm%%LLVM_SUFFIX%%/include/clang/Driver/Util.h
+llvm%%LLVM_SUFFIX%%/include/clang/Edit/Commit.h
+llvm%%LLVM_SUFFIX%%/include/clang/Edit/EditedSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/Edit/EditsReceiver.h
+llvm%%LLVM_SUFFIX%%/include/clang/Edit/FileOffset.h
+llvm%%LLVM_SUFFIX%%/include/clang/Edit/Rewriters.h
+llvm%%LLVM_SUFFIX%%/include/clang/Format/Format.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/ASTConsumers.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/ASTUnit.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/ChainedDiagnosticConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/CodeGenOptions.def
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/CodeGenOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/CommandLineSourceLoc.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/CompilerInstance.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/CompilerInvocation.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/DependencyOutputOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/DiagnosticRenderer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/FrontendAction.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/FrontendActions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/FrontendDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/FrontendOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/FrontendPluginRegistry.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/LangStandard.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/LangStandards.def
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/LayoutOverrideSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/LogDiagnosticPrinter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/MigratorOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/MultiplexConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/PreprocessorOutputOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/SerializedDiagnosticPrinter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/TextDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/TextDiagnosticBuffer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/TextDiagnosticPrinter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/Utils.h
+llvm%%LLVM_SUFFIX%%/include/clang/Frontend/VerifyDiagnosticConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/FrontendTool/Utils.h
+llvm%%LLVM_SUFFIX%%/include/clang/Index/CommentToXML.h
+llvm%%LLVM_SUFFIX%%/include/clang/Index/USRGeneration.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/CodeCompletionHandler.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/DirectoryLookup.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/ExternalPreprocessorSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/HeaderMap.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/HeaderSearch.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/HeaderSearchOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/LexDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/Lexer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/LiteralSupport.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/MacroArgs.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/MacroInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/ModuleLoader.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/ModuleMap.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/MultipleIncludeOpt.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PPCallbacks.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PPConditionalDirectiveRecord.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PTHLexer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PTHManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/Pragma.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PreprocessingRecord.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/Preprocessor.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PreprocessorLexer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/PreprocessorOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/ScratchBuffer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/Token.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/TokenConcatenation.h
+llvm%%LLVM_SUFFIX%%/include/clang/Lex/TokenLexer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Parse/AttrParserStringSwitches.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Parse/ParseAST.h
+llvm%%LLVM_SUFFIX%%/include/clang/Parse/ParseDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Parse/Parser.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core/DeltaTree.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core/HTMLRewrite.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core/RewriteRope.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core/Rewriter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core/TokenRewriter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Frontend/ASTConsumers.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Frontend/FixItRewriter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Frontend/FrontendActions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Frontend/Rewriters.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AnalysisBasedWarnings.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttrParsedAttrImpl.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttrParsedAttrKinds.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttrParsedAttrList.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttrSpellingListIndex.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttrTemplateInstantiate.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/AttributeList.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/CXXFieldCollector.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/CodeCompleteConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/CodeCompleteOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/DeclSpec.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/DelayedDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Designator.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/ExternalSemaSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/IdentifierResolver.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Initialization.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/LocInfoType.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Lookup.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/LoopHint.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/MultiplexExternalSemaSource.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/ObjCMethodList.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Overload.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Ownership.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/ParsedTemplate.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/PrettyDeclStackTrace.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Scope.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/ScopeInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Sema.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/SemaConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/SemaDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/SemaFixItUtils.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/SemaInternal.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/SemaLambda.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Template.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/TemplateDeduction.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/TypoCorrection.h
+llvm%%LLVM_SUFFIX%%/include/clang/Sema/Weak.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ASTBitCodes.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ASTDeserializationListener.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ASTReader.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ASTWriter.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/AttrPCHRead.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/AttrPCHWrite.inc
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ContinuousRangeMap.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/GlobalModuleIndex.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/Module.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/ModuleManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/Serialization/SerializationDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Checkers/ClangCheckers.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Checkers/LocalCheckers.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/Analyses.def
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/Checker.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/CheckerManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/CheckerRegistry.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState_Fwd.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/StoreRef.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/SummaryManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/TaintTag.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h
+llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Frontend/FrontendActions.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/ArgumentsAdjusters.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/CommonOptionsParser.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/CompilationDatabase.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/CompilationDatabasePluginRegistry.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/FileMatchTrie.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/JSONCompilationDatabase.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/Refactoring.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/RefactoringCallbacks.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/ReplacementsYaml.h
+llvm%%LLVM_SUFFIX%%/include/clang/Tooling/Tooling.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/__wmmintrin_aes.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/__wmmintrin_pclmul.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/altivec.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/ammintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/arm_neon.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/avx2intrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/avxintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/bmi2intrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/bmiintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/cpuid.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/emmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/f16cintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/fma4intrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/fmaintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/ia32intrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/immintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/lzcntintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/mm3dnow.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/mm_malloc.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/mmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/module.modulemap
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/nmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/pmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/popcntintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/prfchwintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/rdseedintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/rtmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/shaintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/smmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/tbmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/tmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/unwind.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/wmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/x86intrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/xmmintrin.h
+llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include/xopintrin.h
+llvm%%LLVM_SUFFIX%%/lib/libclang.a
+llvm%%LLVM_SUFFIX%%/lib/libclang.so
+llvm%%LLVM_SUFFIX%%/lib/libclangARCMigrate.a
+llvm%%LLVM_SUFFIX%%/lib/libclangAST.a
+llvm%%LLVM_SUFFIX%%/lib/libclangASTMatchers.a
+llvm%%LLVM_SUFFIX%%/lib/libclangAnalysis.a
+llvm%%LLVM_SUFFIX%%/lib/libclangBasic.a
+llvm%%LLVM_SUFFIX%%/lib/libclangCodeGen.a
+llvm%%LLVM_SUFFIX%%/lib/libclangDriver.a
+llvm%%LLVM_SUFFIX%%/lib/libclangDynamicASTMatchers.a
+llvm%%LLVM_SUFFIX%%/lib/libclangEdit.a
+llvm%%LLVM_SUFFIX%%/lib/libclangFormat.a
+llvm%%LLVM_SUFFIX%%/lib/libclangFrontend.a
+llvm%%LLVM_SUFFIX%%/lib/libclangFrontendTool.a
+llvm%%LLVM_SUFFIX%%/lib/libclangIndex.a
+llvm%%LLVM_SUFFIX%%/lib/libclangLex.a
+llvm%%LLVM_SUFFIX%%/lib/libclangParse.a
+llvm%%LLVM_SUFFIX%%/lib/libclangRewrite.a
+llvm%%LLVM_SUFFIX%%/lib/libclangRewriteFrontend.a
+llvm%%LLVM_SUFFIX%%/lib/libclangSema.a
+llvm%%LLVM_SUFFIX%%/lib/libclangSerialization.a
+llvm%%LLVM_SUFFIX%%/lib/libclangStaticAnalyzerCheckers.a
+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
+@dirrm llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0/include
+@dirrm llvm%%LLVM_SUFFIX%%/lib/clang/3.5.0
+@dirrm llvm%%LLVM_SUFFIX%%/lib/clang
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Tooling
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Frontend
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/PathSensitive
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core/BugReporter
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Core
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer/Checkers
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/StaticAnalyzer
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Serialization
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Sema
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Frontend
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Rewrite/Core
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Rewrite
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Parse
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Lex
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Index
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/FrontendTool
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Frontend
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Format
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Edit
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Driver
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Config
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/CodeGen
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Basic
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Support
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Analysis/FlowSensitive
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Analysis/DomainSpecific
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Analysis/Analyses
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/Analysis
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers/Dynamic
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/ASTMatchers
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/AST
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang/ARCMigrate
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang-c
+@dirrm llvm%%LLVM_SUFFIX%%/include/clang
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/ps
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/html/clang
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/html
+%%PORTDOCS%%@dirrm %%DOCSDIR%%