Erlang fails to build on arm when smp is enable. Remove --enable-smp

from configure and disable explicitly it on arm and hppa. The 4
versions build fine on amd64 with and without smp enabled. The port
will also add a symlink to the erlang interpreter on those
architectures to avoid the use of a PFRAG file.

Based on a patch from phessler@. OK phessler@.
This commit is contained in:
juanfra 2017-12-09 21:28:58 +00:00
parent 5fe274cf61
commit 4dff0eb3f1
5 changed files with 25 additions and 26 deletions

View File

@ -1,7 +1,6 @@
# $OpenBSD: Makefile,v 1.18 2017/07/26 22:45:25 sthen Exp $
# $OpenBSD: Makefile,v 1.19 2017/12/09 21:28:58 juanfra Exp $
BROKEN-alpha= beam/erl_process.c:6692: internal compiler error: in final_scan_insn, at final.c:2449
BROKEN-hppa = error: No native atomic implementation found.
COMMENT-main = ${COMMENT}
COMMENT-wx= WxWidgets bindings for Erlang
@ -13,19 +12,18 @@ DISTNAME= otp_src_${V}
PKGNAME-main= erlang-16b.03
PKGNAME-wx= erlang-wx-16b.03
REVISION-main= 12
REVISION-main= 13
REVISION-wx= 2
VERSION_SPEC= >=16v0,<17v0
PKGSPEC-main= erlang-${VERSION_SPEC}
PKGSPEC-wx= erlang-wx-${VERSION_SPEC}
CONFIGURE_ARGS= --without-jinterface \
CONFIGURE_ARGS+=--without-jinterface \
--without-odbc \
--enable-threads \
--enable-kernel-poll \
--disable-hipe \
--enable-smp-support
--disable-hipe
MULTI_PACKAGES = -main -wx

View File

@ -1,7 +1,6 @@
# $OpenBSD: Makefile,v 1.18 2017/07/26 22:45:25 sthen Exp $
# $OpenBSD: Makefile,v 1.19 2017/12/09 21:28:58 juanfra Exp $
BROKEN-alpha= beam/erl_process.c:6692: internal compiler error: in final_scan_insn, at final.c:2449
BROKEN-hppa = error: No native atomic implementation found.
COMMENT-main= ${COMMENT}
COMMENT-wx= WxWidgets bindings for Erlang
@ -13,7 +12,7 @@ DISTNAME= otp_src_$V
PKGNAME-main= erlang-$V
PKGNAME-wx= erlang-wx-$V
REVISION-main= 8
REVISION-main= 9
REVISION-wx= 2
VERSION_SPEC= >=17v0,<18v0
@ -22,12 +21,11 @@ PKGSPEC-wx= erlang-wx-${VERSION_SPEC}
BUILD_DEPENDS+= textproc/libxslt
CONFIGURE_ARGS= --without-jinterface \
CONFIGURE_ARGS+=--without-jinterface \
--without-odbc \
--enable-threads \
--enable-kernel-poll \
--disable-hipe \
--enable-smp-support
--disable-hipe
MULTI_PACKAGES = -main -wx

View File

@ -1,7 +1,6 @@
# $OpenBSD: Makefile,v 1.14 2017/07/26 22:45:25 sthen Exp $
# $OpenBSD: Makefile,v 1.15 2017/12/09 21:28:58 juanfra Exp $
BROKEN-alpha= beam/erl_process.c:6692: internal compiler error: in final_scan_insn, at final.c:2449
BROKEN-hppa = error: No native atomic implementation found.
COMMENT-main= ${COMMENT}
COMMENT-wx= WxWidgets bindings for Erlang
@ -13,7 +12,7 @@ DISTNAME= otp_src_$V
PKGNAME-main= erlang-$V
PKGNAME-wx= erlang-wx-$V
REVISION-main= 3
REVISION-main= 4
REVISION-wx= 2
VERSION_SPEC= >=18v0,<19v0
@ -22,12 +21,11 @@ PKGSPEC-wx= erlang-wx-${VERSION_SPEC}
BUILD_DEPENDS+= textproc/libxslt
CONFIGURE_ARGS= --without-jinterface \
CONFIGURE_ARGS+=--without-jinterface \
--without-odbc \
--enable-threads \
--enable-kernel-poll \
--disable-hipe \
--enable-smp-support
--disable-hipe
MULTI_PACKAGES = -main -wx

View File

@ -1,7 +1,6 @@
# $OpenBSD: Makefile,v 1.8 2017/07/26 22:45:25 sthen Exp $
# $OpenBSD: Makefile,v 1.9 2017/12/09 21:28:58 juanfra Exp $
BROKEN-alpha= beam/erl_process.c:6692: internal compiler error: in final_scan_insn, at final.c:2449
BROKEN-hppa = error: No native atomic implementation found.
COMMENT-main= ${COMMENT}
COMMENT-wx= WxWidgets bindings for Erlang
@ -14,7 +13,7 @@ PKGNAME-main= erlang-$V
PKGNAME-wx= erlang-wx-$V
REVISION-wx= 0
REVISION-main= 1
REVISION-main= 2
VERSION_SPEC= >=19v0,<20v0
PKGSPEC-main= erlang-${VERSION_SPEC}
@ -22,12 +21,11 @@ PKGSPEC-wx= erlang-wx-${VERSION_SPEC}
BUILD_DEPENDS+= textproc/libxslt
CONFIGURE_ARGS= --without-jinterface \
CONFIGURE_ARGS+=--without-jinterface \
--without-odbc \
--enable-threads \
--enable-kernel-poll \
--disable-hipe \
--enable-smp-support
--disable-hipe
MULTI_PACKAGES = -main -wx

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile.inc,v 1.14 2017/08/21 13:49:41 visa Exp $
# $OpenBSD: Makefile.inc,v 1.15 2017/12/09 21:28:58 juanfra Exp $
COMMENT ?= real-time, concurrent and distributed functional language
@ -27,7 +27,11 @@ MODGNU_CONFIG_GUESS_DIRS ?= ${WRKSRC}/erts/autoconf \
${WRKSRC}/lib/erl_interface/src/auxdir \
${WRKSRC}/lib/wx/autoconf
.if ${MACHINE_ARCH} == i386
# "error: No native atomic implementation found"
# Erlang 20 does not support enable/disable-smp-support
.if ${MACHINE_ARCH} == arm || ${MACHINE_ARCH} == hppa
CONFIGURE_ARGS += --disable-smp-support
.elif ${MACHINE_ARCH} == i386
CONFIGURE_ARGS += --enable-ethread-pre-pentium4-compatibility
.elif ${MACHINE_ARCH} == mips64 || ${MACHINE_ARCH} == mips64el
CFLAGS += -mxgot
@ -82,3 +86,6 @@ post-install:
tar zxf ${FULLDISTDIR}/otp_doc_man_${V}.tar.gz -C ${DOC_DIR}
rm -r ${DOC_DIR}/man/man7/*MIB.7
rm -r ${DOC_DIR}/man/man7/*TM.7
if [ ! -x ${PREFIX}/lib/erlang${MAJ_V}/${ERTS}/bin/beam.smp ]; then \
cp -v ${PREFIX}/lib/erlang${MAJ_V}/${ERTS}/bin/beam \
${PREFIX}/lib/erlang${MAJ_V}/${ERTS}/bin/beam.smp; fi