Same change patrick made to llvm in base. With this aarch64-unknown-openbsd6.0 defines now include
#define __ELF__ 1 #define __OpenBSD__ 1 #define __unix 1 #define __unix__ 1 #define unix 1 Index: Makefile =================================================================== RCS file: /cvs/ports/devel/llvm/Makefile,v retrieving revision 1.125 diff -u -p -r1.125 Makefile --- Makefile 2 Nov 2016 07:46:33 -0000 1.125 +++ Makefile 19 Dec 2016 10:39:28 -0000 @@ -11,7 +11,7 @@ COMMENT = modular, fast C/C++/ObjC compi LLVM_V = 3.9.0 DISTNAME = llvm-${LLVM_V}.src PKGNAME = llvm-${LLVM_V} -REVISION = 2 +REVISION = 3 CATEGORIES = devel DISTFILES = llvm-${LLVM_V}.src${EXTRACT_SUFX} \ cfe-${LLVM_V}.src${EXTRACT_SUFX} \ Index: patches/patch-tools_clang_lib_Basic_Targets_cpp =================================================================== RCS file: /cvs/ports/devel/llvm/patches/patch-tools_clang_lib_Basic_Targets_cpp,v retrieving revision 1.17 diff -u -p -r1.17 patch-tools_clang_lib_Basic_Targets_cpp --- patches/patch-tools_clang_lib_Basic_Targets_cpp 7 Oct 2016 08:55:30 -0000 1.17 +++ patches/patch-tools_clang_lib_Basic_Targets_cpp 19 Dec 2016 10:50:39 -0000 @@ -3,9 +3,10 @@ $OpenBSD: patch-tools_clang_lib_Basic_Ta - Enable __float128 support on X86 - [OpenBSD] Add type sign information for OpenBSD - Set ABI for ARM +- [OpenBSD] set OpenBSD defines for aarch64 ---- tools/clang/lib/Basic/Targets.cpp.orig Mon Jul 25 12:21:28 2016 -+++ tools/clang/lib/Basic/Targets.cpp Sat Sep 24 12:02:09 2016 +--- tools/clang/lib/Basic/Targets.cpp.orig Tue Jul 26 02:21:28 2016 ++++ tools/clang/lib/Basic/Targets.cpp Mon Dec 19 21:48:14 2016 @@ -531,6 +531,8 @@ class OpenBSDTargetInfo : public OSTargetInfo<Target> Builder.defineMacro("__ELF__"); if (Opts.POSIXThreads) @@ -64,3 +65,12 @@ $OpenBSD: patch-tools_clang_lib_Basic_Ta else setABI("aapcs"); break; +@@ -8148,6 +8159,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple & + return new LinuxTargetInfo<AArch64leTargetInfo>(Triple, Opts); + case llvm::Triple::NetBSD: + return new NetBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); ++ case llvm::Triple::OpenBSD: ++ return new OpenBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); + default: + return new AArch64leTargetInfo(Triple, Opts); + }