Index: head/devel/llvm39/Makefile =================================================================== --- head/devel/llvm39/Makefile +++ head/devel/llvm39/Makefile @@ -2,6 +2,7 @@ PORTNAME= llvm DISTVERSION= 3.9.0 +PORTREVISION= 1 CATEGORIES= devel lang MASTER_SITES= http://llvm.org/${PRE_}releases/${LLVM_RELEASE}/${RCDIR} DISTNAME= ${PORTNAME}-${DISTVERSION}.src @@ -51,6 +52,7 @@ CLANG_DESC= Build clang CLANG_EXTRA_PATCHES= \ + ${PATCHDIR}/clang-patch-svn-r280672 \ ${PATCHDIR}/clang-patch-fformat_extensions.diff \ ${PATCHDIR}/clang-patch-fopenmp.diff \ ${PATCHDIR}/clang-patch-tools_clang_lib_Headers_CMakeLists.txt \ @@ -320,7 +322,7 @@ ${MAKE_ENV} ${MAKE_CMD} post-install: - ${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/include/llvm/MC/MCAnalysis + ${RM} -r ${STAGEDIR}${LLVM_PREFIX}/include/llvm/MC/MCAnalysis ${INSTALL_SCRIPT} ${WRKDIR}/llvm-wrapper.sh \ ${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} .for command in ${COMMANDS:C/^/XXXX/1:NXXXX*} @@ -350,7 +352,7 @@ post-install-LLDB-on: ${RM} ${STAGEDIR}${LLVM_PREFIX}/lib/python*/site-packages/lib - ${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/include/lldb/Host/windows/getopt + ${RM} -r ${STAGEDIR}${LLVM_PREFIX}/include/lldb/Host/windows/getopt post-install-CLANG-on: ${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/clang \ Index: head/devel/llvm39/files/clang-patch-svn-r280672 =================================================================== --- head/devel/llvm39/files/clang-patch-svn-r280672 +++ head/devel/llvm39/files/clang-patch-svn-r280672 @@ -0,0 +1,39 @@ +------------------------------------------------------------------------ +r280672 | ed | 2016-09-05 18:38:34 +0000 (Mon, 05 Sep 2016) | 6 lines + +Add support for targeting armv6-unknown-cloudabi-eabihf. + +I'm in the progress of adding ARMv6 support to CloudABI. On the compiler +side, everything seems to work properly with this tiny change applied. + + +------------------------------------------------------------------------ +Index: test/Preprocessor/init.c +=================================================================== +--- tools/clang/test/Preprocessor/init.c (revision 280671) ++++ tools/clang/test/Preprocessor/init.c (revision 280672) +@@ -1975,6 +1975,11 @@ + // ARMEABIHARDFP:#define __arm 1 + // ARMEABIHARDFP:#define __arm__ 1 + ++// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s ++// ++// ARMV6-CLOUDABI:#define __CloudABI__ 1 ++// ARMV6-CLOUDABI:#define __arm__ 1 ++ + // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-netbsd-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s + // + // ARM-NETBSD-NOT:#define _LP64 +Index: lib/Basic/Targets.cpp +=================================================================== +--- tools/clang/lib/Basic/Targets.cpp (revision 280671) ++++ tools/clang/lib/Basic/Targets.cpp (revision 280672) +@@ -8261,6 +8261,8 @@ + return new DarwinARMTargetInfo(Triple, Opts); + + switch (os) { ++ case llvm::Triple::CloudABI: ++ return new CloudABITargetInfo(Triple, Opts); + case llvm::Triple::Linux: + return new LinuxTargetInfo(Triple, Opts); + case llvm::Triple::FreeBSD: