From owner-dev-commits-ports-all@freebsd.org Fri Apr 23 16:39:31 2021 Return-Path: Delivered-To: dev-commits-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E0F2C5F89AF; Fri, 23 Apr 2021 16:39:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4FRg43620fz4qcG; Fri, 23 Apr 2021 16:39:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C1C5810AA8; Fri, 23 Apr 2021 16:39:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 13NGdVC5043509; Fri, 23 Apr 2021 16:39:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 13NGdVBu043508; Fri, 23 Apr 2021 16:39:31 GMT (envelope-from git) Date: Fri, 23 Apr 2021 16:39:31 GMT Message-Id: <202104231639.13NGdVBu043508@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org From: Neel Chauhan Subject: git: 56268cfe681d - 2021Q2 - lang/mecrisp-stellaris: fix build problems MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: nc X-Git-Repository: ports X-Git-Refname: refs/heads/2021Q2 X-Git-Reftype: branch X-Git-Commit: 56268cfe681dca6bd3163229f9cf8fa3995752d7 Auto-Submitted: auto-generated X-BeenThere: dev-commits-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the ports repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Apr 2021 16:39:31 -0000 The branch 2021Q2 has been updated by nc: URL: https://cgit.FreeBSD.org/ports/commit/?id=56268cfe681dca6bd3163229f9cf8fa3995752d7 commit 56268cfe681dca6bd3163229f9cf8fa3995752d7 Author: Neel Chauhan AuthorDate: 2021-04-23 16:34:45 +0000 Commit: Neel Chauhan CommitDate: 2021-04-23 16:38:07 +0000 lang/mecrisp-stellaris: fix build problems PR: 254945 Submitted by: Robert Clausecker (maintainer) MFH: 2021Q2 (cherry picked from commit 4a19295b952c805bea86aea01125d6180eccb7a2) --- lang/mecrisp-stellaris/Makefile | 29 +++++++++++----------- ...-mecrisp-stellaris-source_freebsd-ra_terminal.s | 25 +++++++++++++++++++ lang/mecrisp-stellaris/pkg-message | 8 ++++++ 3 files changed, 48 insertions(+), 14 deletions(-) diff --git a/lang/mecrisp-stellaris/Makefile b/lang/mecrisp-stellaris/Makefile index dc8c019dc5d2..5af2312a35b1 100644 --- a/lang/mecrisp-stellaris/Makefile +++ b/lang/mecrisp-stellaris/Makefile @@ -1,6 +1,7 @@ PORTNAME= mecrisp-stellaris DISTVERSION= 2.5.8 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= SF/mecrisp @@ -10,10 +11,22 @@ COMMENT= Native code Forth system for ARM LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING +OPTIONS_DEFINE= EXTRAS +OPTIONS_DEFAULT= EXTRAS +EXTRAS_DESC= Add disassembler and math library to Forth core +EXTRAS_VARS= PROGRAM=mecrisp-stellaris-freebsd-with-disassembler-and-math +EXTRAS_VARS_OFF= PROGRAM=mecrisp-stellaris-freebsd + +.include + +.if ${OSVERSION} < 1300000 ONLY_FOR_ARCHS= armv6 armv7 +.else +ONLY_FOR_ARCHS= armv6 armv7 aarch64 +.endif ONLY_FOR_ARCHS_REASON= written in ARM assembly -BUILD_DEPENDS= binutils>2.33:devel/binutils +BUILD_DEPENDS= arm-none-eabi-binutils>2.25:devel/binutils@arm_none_eabi AFLAGS.armv6= -march=armv6 --defsym m0core=1 MAKE_ENV+= AFLAGS="${AFLAGS.${ARCH}}" @@ -21,18 +34,6 @@ MAKE_ENV+= AFLAGS="${AFLAGS.${ARCH}}" # stripping eats our hand-crafted ELF binaries, so don't do that # the binaries are free of symbols or stuff like that anyway STRIP= -# definitions assuming we build on ARM -BINARY_ALIAS= arm-none-eabi-as=${LOCALBASE}/bin/${AS} \ - arm-none-eabi-ld=${LOCALBASE}/bin/${LD} \ - arm-none-eabi-objcopy=${LOCALBASE}/bin/${OBJCOPY} - -OPTIONS_DEFINE= EXTRAS -OPTIONS_DEFAULT= EXTRAS -EXTRAS_DESC= Add disassembler and math library to Forth core -EXTRAS_VARS= PROGRAM=mecrisp-stellaris-freebsd-with-disassembler-and-math -EXTRAS_VARS_OFF= PROGRAM=mecrisp-stellaris-freebsd - -.include # Can't use the release script as it tries to build a bunch of stuff # that won't build correctly. This does the relevant parts manually. @@ -48,4 +49,4 @@ do-install: cd ${WRKSRC}/common; ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/freebsd-ra/${PROGRAM} ${STAGEDIR}${PREFIX}/bin/mecrisp-stellaris -.include +.include diff --git a/lang/mecrisp-stellaris/files/patch-mecrisp-stellaris-source_freebsd-ra_terminal.s b/lang/mecrisp-stellaris/files/patch-mecrisp-stellaris-source_freebsd-ra_terminal.s new file mode 100644 index 000000000000..9aecba07f8bb --- /dev/null +++ b/lang/mecrisp-stellaris/files/patch-mecrisp-stellaris-source_freebsd-ra_terminal.s @@ -0,0 +1,25 @@ +--- mecrisp-stellaris-source/freebsd-ra/terminal.s.orig 2021-04-10 12:49:15 UTC ++++ mecrisp-stellaris-source/freebsd-ra/terminal.s +@@ -167,7 +167,6 @@ serial_key: @ ( -- c ) Receive one character + cacheflush: + @ ----------------------------------------------------------------------------- + +-.ifdef m0core + @ ARMv6 hat keine Speicherbarrieren. Das muss über einen syscall realisiert werden + push {r4-r7, lr} + movs r0, #0 @ ARM_SYNC_ICACHE +@@ -180,14 +179,6 @@ cacheflush: + @ Datenstruktur arm_sync_icache_args für den sysarch-Aufruf + 0:.word incipit + .word totalsize +- +-.else +- @ auf ARMv7 und später nehmen wir einfach die Barrien-Befehle +- dmb +- dsb +- isb +- bx lr +-.endif + + @ ----------------------------------------------------------------------------- + Wortbirne Flag_foldable_0, "arguments" @ ( -- a-addr ) diff --git a/lang/mecrisp-stellaris/pkg-message b/lang/mecrisp-stellaris/pkg-message new file mode 100644 index 000000000000..bbf2f9f716c8 --- /dev/null +++ b/lang/mecrisp-stellaris/pkg-message @@ -0,0 +1,8 @@ +This port is written in ARM32 assembly. On ARM64 systems, it only runs +on those that support the AArch32 execution state in EL0. If the port +does not run, check dmesg for a line like + + Processor Features 0 = + +If the feature string "EL0 32" does not occur, your processor cannot +run ARM32 binaries and thus will not be able to run this port either.