Date: Fri, 30 Sep 2016 10:26:35 +0000 (UTC) From: Brooks Davis <brooks@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r422979 - in head/devel/llvm39: . files Message-ID: <201609301026.u8UAQZAm090712@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: brooks Date: Fri Sep 30 10:26:35 2016 New Revision: 422979 URL: https://svnweb.freebsd.org/changeset/ports/422979 Log: Import Clang's r280672 into our devel/llvm39 port This revision is what's needed to make Clang work for CloudABI on ARMv6. By pulling in this change, the ARMv6 cross compiler set up by the cloudabi-toolchain port seems functional. In the process, I did have to replace some ${RMDIR}s by ${RM} -rf, as it tried to delete nonexistent directories. Brooks, do you know what's up with that? Submitted by: ed Differential Revision: https://reviews.freebsd.org/D8078 Added: head/devel/llvm39/files/clang-patch-svn-r280672 (contents, props changed) Modified: head/devel/llvm39/Makefile Modified: head/devel/llvm39/Makefile ============================================================================== --- head/devel/llvm39/Makefile Fri Sep 30 10:03:36 2016 (r422978) +++ head/devel/llvm39/Makefile Fri Sep 30 10:26:35 2016 (r422979) @@ -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 @@ PLIST_FILES= 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 @@ post-build-COMPILER_RT-on: ${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-DOCS-off: 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 \ Added: head/devel/llvm39/files/clang-patch-svn-r280672 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/llvm39/files/clang-patch-svn-r280672 Fri Sep 30 10:26:35 2016 (r422979) @@ -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<ARMleTargetInfo>(Triple, Opts); + case llvm::Triple::Linux: + return new LinuxTargetInfo<ARMleTargetInfo>(Triple, Opts); + case llvm::Triple::FreeBSD:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201609301026.u8UAQZAm090712>