On Tue, Dec 20, 2016 at 03:11:09AM +1100, Jonathan Gray wrote: > 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); > + } >
looks good to me