aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2015-10-16 03:06:33 +0800
committerbrooks <brooks@FreeBSD.org>2015-10-16 03:06:33 +0800
commite7afd0803f4061d03ac580c4dabeda4d97828135 (patch)
tree262e3dcdabbdf0a3a7cdfeae953e9f86508b1600 /devel
parente80727fbbab1aaed711ae0e65923230fe218e57d (diff)
downloadfreebsd-ports-gnome-e7afd0803f4061d03ac580c4dabeda4d97828135.tar.gz
freebsd-ports-gnome-e7afd0803f4061d03ac580c4dabeda4d97828135.tar.zst
freebsd-ports-gnome-e7afd0803f4061d03ac580c4dabeda4d97828135.zip
Let cloudabi-clang install a compiler for aarch64.
Now that CloudABI has been ported over to aarch64, let's extend the FreeBSD ports to install a functioning toolchain for it. This change extend the llvm37 port to backport a tiny change that is needed to make Clang support the CloudABI for aarch64 target (r250416). This change makes Clang use the right ELFOSABI number, but also makes it set the right #defines (e.g., __CloudABI__). It also extends the cloudabi-clang port to set up symlinks against Clang for aarch64. Submitted by: ed Differential Revision: https://reviews.freebsd.org/D3906
Diffstat (limited to 'devel')
-rw-r--r--devel/llvm37/Makefile9
-rw-r--r--devel/llvm37/files/clang-patch-svn-25041622
2 files changed, 27 insertions, 4 deletions
diff --git a/devel/llvm37/Makefile b/devel/llvm37/Makefile
index 938bbcb2e16a..4d7287478885 100644
--- a/devel/llvm37/Makefile
+++ b/devel/llvm37/Makefile
@@ -2,7 +2,7 @@
PORTNAME= llvm
DISTVERSION= 3.7.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel lang
MASTER_SITES= http://llvm.org/${PRE_}releases/${LLVM_RELEASE}/${RCDIR}
DISTNAME= ${PORTNAME}-${DISTVERSION}.src
@@ -39,9 +39,10 @@ OPTIONS_SUB= yes
CLANG_DESC= Build clang
CLANG_EXTRA_PATCHES= \
- ${PATCHDIR}/clang-patch-fformat_extensions.diff \
- ${PATCHDIR}/clang-patch-tools_clang_lib_Headers_CMakeLists.txt \
- ${PATCHDIR}/clang-patch-tools_clang_tools_clang-format_clang-format.py
+ ${PATCHDIR}/clang-patch-fformat_extensions.diff \
+ ${PATCHDIR}/clang-patch-tools_clang_lib_Headers_CMakeLists.txt \
+ ${PATCHDIR}/clang-patch-tools_clang_tools_clang-format_clang-format.py \
+ ${PATCHDIR}/clang-patch-svn-250416
CLANG_CONFLICTS_INSTALL= clang-devel-3.[1234567]*
CLANG_DISTFILES= cfe-${DISTVERSION}.src${EXTRACT_SUFX}
CLANG_CMAKE_ON= -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
diff --git a/devel/llvm37/files/clang-patch-svn-250416 b/devel/llvm37/files/clang-patch-svn-250416
new file mode 100644
index 000000000000..c57aeca3c741
--- /dev/null
+++ b/devel/llvm37/files/clang-patch-svn-250416
@@ -0,0 +1,22 @@
+------------------------------------------------------------------------
+r250416 | ed | 2015-10-15 15:07:07 +0000 (Thu, 15 Oct 2015) | 5 lines
+
+Add support for CloudABI/aarch64.
+
+The core C library has already been ported over to aarch64 successfully,
+meaning there is no reason to hold this change back.
+
+------------------------------------------------------------------------
+Index: lib/Basic/Targets.cpp
+===================================================================
+--- tools/clang/lib/Basic/Targets.cpp (revision 250415)
++++ tools/clang/lib/Basic/Targets.cpp (revision 250416)
+@@ -7364,6 +7364,8 @@
+ return new DarwinAArch64TargetInfo(Triple);
+
+ switch (os) {
++ case llvm::Triple::CloudABI:
++ return new CloudABITargetInfo<AArch64leTargetInfo>(Triple);
+ case llvm::Triple::FreeBSD:
+ return new FreeBSDTargetInfo<AArch64leTargetInfo>(Triple);
+ case llvm::Triple::Linux: