clang can't link with gcc, so add the missing define in the clang case.

and it can't optimize malloc too much, or the undump magic fails.
(thanks to kettenis@ for the second part)
This commit is contained in:
espie 2017-05-12 21:26:32 +00:00
parent 2aaec32fa8
commit 3422da1f1e
2 changed files with 15 additions and 5 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.91 2016/11/20 15:14:19 jca Exp $
# $OpenBSD: Makefile,v 1.92 2017/05/12 21:26:32 espie Exp $
BROKEN-powerpc= dumped executable fails with SIGABRT
@ -86,3 +86,8 @@ post-install:
chmod -t ${PREFIX}/bin/emacs
.include <bsd.port.mk>
.if ${PROPERTIES:Mclang}
CFLAGS += -fno-builtin-malloc
.endif

View File

@ -1,7 +1,8 @@
$OpenBSD: patch-src_s_openbsd_h,v 1.2 2004/09/15 17:55:25 espie Exp $
--- src/s/openbsd.h.orig Wed Mar 22 13:08:40 2000
+++ src/s/openbsd.h Mon Aug 30 12:04:49 2004
@@ -9,3 +9,16 @@
$OpenBSD: patch-src_s_openbsd_h,v 1.3 2017/05/12 21:26:32 espie Exp $
Index: src/s/openbsd.h
--- src/s/openbsd.h.orig
+++ src/s/openbsd.h
@@ -9,3 +9,20 @@
/* David Mazieres <dm@reeducation-labor.lcs.mit.edu> says this
is necessary. Otherwise Emacs dumps core when run -nw. */
#undef LIBS_TERMCAP
@ -18,3 +19,7 @@ $OpenBSD: patch-src_s_openbsd_h,v 1.2 2004/09/15 17:55:25 espie Exp $
+#undef C_SWITCH_SYSTEM
+#define C_SWITCH_SYSTEM -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib
+#endif
+#ifdef __clang__
+#undef LIB_STANDARD
+#define LIB_STANDARD -lcompiler_rt -lc -lcompiler_rt /usr/lib/crtend.o
+#endif