aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authored <ed@FreeBSD.org>2015-06-23 16:38:00 +0800
committered <ed@FreeBSD.org>2015-06-23 16:38:00 +0800
commit804a2c432394f9f2d1444bbdf6fbcca4909c7d5a (patch)
tree9306ee15e1a2a73ba8a1b215f01341e51037d696
parented7c3bb6e21ad507db350c9c92d93b9d88f8973e (diff)
downloadfreebsd-ports-gnome-804a2c432394f9f2d1444bbdf6fbcca4909c7d5a.tar.gz
freebsd-ports-gnome-804a2c432394f9f2d1444bbdf6fbcca4909c7d5a.tar.zst
freebsd-ports-gnome-804a2c432394f9f2d1444bbdf6fbcca4909c7d5a.zip
Add cloudabi-clang.
This port adds the necessary symbolic links to make Clang work as a cross compiler for CloudABI. Clang can automatically derive its target from argv[0]. We don't need to install another copy of Clang. It is sufficient to invoke it the right way. CloudABI support is not yet part of a released version of Clang. This is why we still need to depend on llvm-devel. My intent is to stick to a fixed compiler version at one point in time. PR: 200954 Differential Revision: https://reviews.freebsd.org/D2885 Approved by: bapt
-rw-r--r--lang/Makefile1
-rw-r--r--lang/cloudabi-clang/Makefile33
-rw-r--r--lang/cloudabi-clang/pkg-descr5
3 files changed, 39 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index 07dd3cbe936b..d3fb1ec1ce23 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -40,6 +40,7 @@
SUBDIR += clang36
SUBDIR += clojure
SUBDIR += clojure-mode.el
+ SUBDIR += cloudabi-clang
SUBDIR += cmucl
SUBDIR += cmucl-extra
SUBDIR += cocor
diff --git a/lang/cloudabi-clang/Makefile b/lang/cloudabi-clang/Makefile
new file mode 100644
index 000000000000..d3de3a54f142
--- /dev/null
+++ b/lang/cloudabi-clang/Makefile
@@ -0,0 +1,33 @@
+# Created by: Ed Schouten <ed@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= cloudabi-clang
+PORTVERSION= 1.0
+CATEGORIES= devel
+MASTER_SITES= # None
+DISTFILES= # None
+
+MAINTAINER= ed@FreeBSD.org
+COMMENT= Clang for CloudABI
+
+LICENSE= MIT
+
+RUN_DEPENDS= clang-devel:${PORTSDIR}/lang/clang-devel \
+ x86_64-unknown-cloudabi-ld:${PORTSDIR}/devel/cloudabi-binutils
+
+NO_BUILD= yes
+
+PLIST_FILES= bin/x86_64-unknown-cloudabi-cc \
+ bin/x86_64-unknown-cloudabi-c++ \
+ llvm-devel/x86_64-unknown-cloudabi
+
+do-install:
+ @${LN} -s ../llvm-devel/bin/clang \
+ ${STAGEDIR}${PREFIX}/bin/x86_64-unknown-cloudabi-cc
+ @${LN} -s ../llvm-devel/bin/clang++ \
+ ${STAGEDIR}${PREFIX}/bin/x86_64-unknown-cloudabi-c++
+ @${MKDIR} ${STAGEDIR}${PREFIX}/llvm-devel
+ @${LN} -s ../x86_64-unknown-cloudabi \
+ ${STAGEDIR}${PREFIX}/llvm-devel/x86_64-unknown-cloudabi
+
+.include <bsd.port.mk>
diff --git a/lang/cloudabi-clang/pkg-descr b/lang/cloudabi-clang/pkg-descr
new file mode 100644
index 000000000000..c2d91f1a876a
--- /dev/null
+++ b/lang/cloudabi-clang/pkg-descr
@@ -0,0 +1,5 @@
+The CloudABI environment uses Clang as its C/C++ compiler. This meta
+port installs Clang and sets up symbolic links, so that Clang can be
+used as a cross compiler for CloudABI.
+
+WWW: https://github.com/NuxiNL/cloudlibc