Date: Tue, 16 Mar 2021 18:26:32 +0000 (UTC) From: Neel Chauhan <nc@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r568598 - in head/lang: . mecrisp-stellaris Message-ID: <202103161826.12GIQWNd061444@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nc Date: Tue Mar 16 18:26:31 2021 New Revision: 568598 URL: https://svnweb.freebsd.org/changeset/ports/568598 Log: New port: lang/mecrisp-stellaris: native code Forth for ARM Mecrisp Stellaris is an implementation of a standalone native code Forth for ARM. It fits into 16 kb of flash and runs with at least 1 kb of RAM. You can choose to compile to flash or to RAM, and it generates native code with folding, inlining of short words and it opcodes common instructions. Note that it doesn't need to save any pointers, so it compiles directly into flash memory without the need for erase cycles. Although it is in spirit of ANS, there are a few differences: Be careful! PR: 253938 Submitted by: Robert Clausecker <fuz AT fuz DOT su> Added: head/lang/mecrisp-stellaris/ head/lang/mecrisp-stellaris/Makefile (contents, props changed) head/lang/mecrisp-stellaris/distinfo (contents, props changed) head/lang/mecrisp-stellaris/pkg-descr (contents, props changed) head/lang/mecrisp-stellaris/pkg-plist (contents, props changed) Modified: head/lang/Makefile Modified: head/lang/Makefile ============================================================================== --- head/lang/Makefile Tue Mar 16 18:16:43 2021 (r568597) +++ head/lang/Makefile Tue Mar 16 18:26:31 2021 (r568598) @@ -177,6 +177,7 @@ SUBDIR += maude SUBDIR += mawk SUBDIR += mdk + SUBDIR += mecrisp-stellaris SUBDIR += micropython SUBDIR += mit-scheme SUBDIR += mixal Added: head/lang/mecrisp-stellaris/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/mecrisp-stellaris/Makefile Tue Mar 16 18:26:31 2021 (r568598) @@ -0,0 +1,47 @@ +# $FreeBSD$ + +PORTNAME= mecrisp-stellaris +DISTVERSION= 2.5.6 +CATEGORIES= lang +MASTER_SITES= SF/mecrisp + +MAINTAINER= fuz@fuz.su +COMMENT= Native code Forth system for ARM + +LICENSE= GPLv3+ +LICENSE_FILE= ${WRKSRC}/COPYING + +ONLY_FOR_ARCHS= armv7 +ONLY_FOR_ARCHS_REASON= written in ARM Thumb2 assembly + +# 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=${AS} \ + arm-none-eabi-ld=${LD} \ + arm-none-eabi-objcopy=${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 <bsd.port.options.mk> + +# 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. +do-build: + cd ${WRKSRC}/mecrisp-stellaris-source/freebsd-ra && ${SETENV} ${MAKE_ENV} ${SH} assemble + ${CP} ${WRKSRC}/mecrisp-stellaris-source/freebsd-ra/mecrisp-stellaris-freebsd ${WRKSRC}/freebsd-ra/ + cd ${WRKSRC}/freebsd-ra && ${SETENV} ${MAKE_ENV} ${SH} buildcore-freebsd + +do-install: + ${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${WRKSRC}/KNOWN-ISSUES ${STAGEDIR}${DOCSDIR} + cd ${WRKSRC}/common; ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR} + ${INSTALL_PROGRAM} ${WRKSRC}/freebsd-ra/${PROGRAM} ${STAGEDIR}${PREFIX}/bin/mecrisp-stellaris + +.include <bsd.port.mk> Added: head/lang/mecrisp-stellaris/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/mecrisp-stellaris/distinfo Tue Mar 16 18:26:31 2021 (r568598) @@ -0,0 +1,3 @@ +TIMESTAMP = 1614603481 +SHA256 (mecrisp-stellaris-2.5.6.tar.gz) = 59459eb6d9b3a6bb02d6c9c09e48bafb6ba633938ff419c0bdc447315cae6e86 +SIZE (mecrisp-stellaris-2.5.6.tar.gz) = 5628263 Added: head/lang/mecrisp-stellaris/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/mecrisp-stellaris/pkg-descr Tue Mar 16 18:26:31 2021 (r568598) @@ -0,0 +1,10 @@ +Mecrisp Stellaris is an implementation of a standalone native code Forth +for ARM. It fits into 16 kb of flash and runs with at least 1 kb of +RAM. You can choose to compile to flash or to RAM, and it generates +native code with folding, inlining of short words and it opcodes common +instructions. Note that it doesn't need to save any pointers, so it +compiles directly into flash memory without the need for erase cycles. +Although it is in spirit of ANS, there are a few differences: Be +careful! + +WWW: http://mecrisp.sourceforge.net Added: head/lang/mecrisp-stellaris/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/mecrisp-stellaris/pkg-plist Tue Mar 16 18:26:31 2021 (r568598) @@ -0,0 +1,168 @@ +bin/mecrisp-stellaris +%%DOCSDIR%%/KNOWN-ISSUES +%%DOCSDIR%%/README +%%DATADIR%%/VIS/VIS-README +%%DATADIR%%/VIS/vis-0.8.4-disassembler-m3.fs +%%DATADIR%%/VIS/vis-0.8.4-mecrisp-stellaris.fs +%%DATADIR%%/VIS/vis-conditional-200x.txt +%%DATADIR%%/accept-replacement.txt +%%DATADIR%%/ansification-tester.txt +%%DATADIR%%/ansification.txt +%%DATADIR%%/assembler-m0-examples.txt +%%DATADIR%%/assembler-m0.txt +%%DATADIR%%/bitflip.txt +%%DATADIR%%/bitlog.txt +%%DATADIR%%/blocks.txt +%%DATADIR%%/calltrace.txt +%%DATADIR%%/catchthrow.txt +%%DATADIR%%/charcomma.txt +%%DATADIR%%/circles.txt +%%DATADIR%%/conditional-200x.txt +%%DATADIR%%/conditional.txt +%%DATADIR%%/cordic-tests.txt +%%DATADIR%%/cordic.txt +%%DATADIR%%/cycles.txt +%%DATADIR%%/date-time-tests.fs +%%DATADIR%%/date-time.fs +%%DATADIR%%/defcount.txt +%%DATADIR%%/disassembler-m0.txt +%%DATADIR%%/disassembler-m3.txt +%%DATADIR%%/dump.txt +%%DATADIR%%/editor.txt +%%DATADIR%%/examples.txt +%%DATADIR%%/experimental/bignum.txt +%%DATADIR%%/experimental/definitioncount.txt +%%DATADIR%%/experimental/float.txt +%%DATADIR%%/experimental/forget-stellaris.txt +%%DATADIR%%/experimental/vocs-0.7.0/README +%%DATADIR%%/experimental/vocs-0.7.0/VOC-HOWTO-Classes-1.log +%%DATADIR%%/experimental/vocs-0.7.0/VOC-HOWTO-Classes-2.log +%%DATADIR%%/experimental/vocs-0.7.0/VOC-HOWTO-DataTypes.log. +%%DATADIR%%/experimental/vocs-0.7.0/VOC-HOWTO-Registers.log +%%DATADIR%%/experimental/vocs-0.7.0/examples/lm4f120/GPIO.txt +%%DATADIR%%/experimental/vocs-0.7.0/examples/lm4f120/Pendulum +%%DATADIR%%/experimental/vocs-0.7.0/examples/lm4f120/RGB-LED.txt +%%DATADIR%%/experimental/vocs-0.7.0/examples/lm4f120/SysTick +%%DATADIR%%/experimental/vocs-0.7.0/examples/lm4f120/das.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/VOC-HOWTO-Classes-1.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/VOC-HOWTO-Classes-2.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/VOC-HOWTO-DataTypes.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/VOC-HOWTO-Registers.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/abort +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/classes.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/search-order.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/struct.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/vocs.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FR/wordlists.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FRV/classes.txt +%%DATADIR%%/experimental/vocs-0.7.0/vocs-0.7.0-FRV/vocs.txt +%%DATADIR%%/fixpt-math-lib-tests.fs +%%DATADIR%%/fixpt-math-lib.fs +%%DATADIR%%/floored-divide.txt +%%DATADIR%%/fonts/8859-1.TXT +%%DATADIR%%/fonts/8859-15.TXT +%%DATADIR%%/fonts/AWARD_ATARI_PC_BIOS_3.08.img +%%DATADIR%%/fonts/Atari-Font.txt +%%DATADIR%%/fonts/CP437.TXT +%%DATADIR%%/fonts/Commodore-C64-Chargen.img +%%DATADIR%%/fonts/Commodore-C64-Chargen.txt +%%DATADIR%%/fonts/Commodore-Font.txt +%%DATADIR%%/fonts/convertfonts +%%DATADIR%%/fonts/forthfont-8x16-drawing.pas +%%DATADIR%%/fonts/forthfont-8x16.pas +%%DATADIR%%/fonts/forthfont-8x8-drawing.pas +%%DATADIR%%/fonts/forthfont-8x8.pas +%%DATADIR%%/fonts/iso-8x16 +%%DATADIR%%/fonts/iso-8x16.fs +%%DATADIR%%/fonts/iso-8x16.txt +%%DATADIR%%/fonts/iso-8x8 +%%DATADIR%%/fonts/iso-8x8.fs +%%DATADIR%%/fonts/iso-8x8.txt +%%DATADIR%%/fonts/iso15-8x16 +%%DATADIR%%/fonts/iso15-8x16.fs +%%DATADIR%%/fonts/iso15-8x16.txt +%%DATADIR%%/fonts/iso15-8x8 +%%DATADIR%%/fonts/iso15-8x8.fs +%%DATADIR%%/fonts/iso15-8x8.txt +%%DATADIR%%/fonts/scanbinary.pas +%%DATADIR%%/fonts/tiny/bdf2forth.pas +%%DATADIR%%/fonts/tiny/tom-thumb-b.txt +%%DATADIR%%/fonts/tiny/tom-thumb.bdf +%%DATADIR%%/forget-stellaris.txt +%%DATADIR%%/graphics-unicode-3x3.txt +%%DATADIR%%/graphics-unicode-4x6.txt +%%DATADIR%%/graphics-unicode-8x16.txt +%%DATADIR%%/graphics-unicode-8x8.txt +%%DATADIR%%/graphics.txt +%%DATADIR%%/graycode.txt +%%DATADIR%%/longcomment.txt +%%DATADIR%%/multitask-debug.txt +%%DATADIR%%/multitask-examples.txt +%%DATADIR%%/multitask.txt +%%DATADIR%%/nvic.txt +%%DATADIR%%/profiler.txt +%%DATADIR%%/prompt.txt +%%DATADIR%%/pseudorandom.txt +%%DATADIR%%/quotations.txt +%%DATADIR%%/romans.txt +%%DATADIR%%/router.txt +%%DATADIR%%/sine.txt +%%DATADIR%%/sqrt.txt +%%DATADIR%%/sunrise-sunset.fs +%%DATADIR%%/svd2forth-v1/COPYING +%%DATADIR%%/svd2forth-v1/Makefile +%%DATADIR%%/svd2forth-v1/README.txt +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/COPYING +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/README.txt +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/mecrisp-stellaris-reg_make.sh +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/mecrisp-stellaris-reg_memmap.xsl +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/mecrisp-stellaris-reg_print.xsl +%%DATADIR%%/svd2forth-v1/ancient/mecrisp-registergenerator/mecrisp-stellaris-reg_set.xsl +%%DATADIR%%/svd2forth-v1/ancient/registergenerator/README +%%DATADIR%%/svd2forth-v1/ancient/registergenerator/convert-with-bitfields.sh +%%DATADIR%%/svd2forth-v1/ancient/registergenerator/convert.sh +%%DATADIR%%/svd2forth-v1/ancient/registergenerator/extract-mecrisp.xsl +%%DATADIR%%/svd2forth-v1/ancient/registergenerator/extract-with-bitfields.xsl +%%DATADIR%%/svd2forth-v1/mk.template.xsl +%%DATADIR%%/svd2forth-v1/process.sh +%%DATADIR%%/svd2forth-v1/register-reference.xsl +%%DATADIR%%/svd2forth-v1/svdcutter.xsl +%%DATADIR%%/svd2forth-v1/svduf.xsl +%%DATADIR%%/svd2forth-v2/Makefile +%%DATADIR%%/svd2forth-v2/README.txt +%%DATADIR%%/svd2forth-v2/ancient/Makefile +%%DATADIR%%/svd2forth-v2/ancient/README.txt +%%DATADIR%%/svd2forth-v2/ancient/STM32F0xx.svd +%%DATADIR%%/svd2forth-v2/ancient/mk.template.xsl +%%DATADIR%%/svd2forth-v2/ancient/registers.xsl +%%DATADIR%%/svd2forth-v2/ancient/svdcutter.xsl +%%DATADIR%%/svd2forth-v2/ancient/svduf.xsl +%%DATADIR%%/svd2forth-v2/e4thcom-ttyUSB0.sh +%%DATADIR%%/svd2forth-v2/e4thcom-ttyUSB1.sh +%%DATADIR%%/svd2forth-v2/e4thcom-ttyUSB2.sh +%%DATADIR%%/svd2forth-v2/e4thcom-ttyUSB3.sh +%%DATADIR%%/svd2forth-v2/mk.template.xsl +%%DATADIR%%/svd2forth-v2/registers.xsl +%%DATADIR%%/svd2forth-v2/svdcutter.xsl +%%DATADIR%%/svd2forth-v2/svduf.xsl +%%DATADIR%%/svd2forth-v3/1b.fs +%%DATADIR%%/svd2forth-v3/Makefile +%%DATADIR%%/svd2forth-v3/README.txt +%%DATADIR%%/svd2forth-v3/STM32L07x.svd +%%DATADIR%%/svd2forth-v3/bitfields-rcc-screenshot.txt +%%DATADIR%%/svd2forth-v3/bitfields.xsl +%%DATADIR%%/svd2forth-v3/equates-rcc-sample.txt +%%DATADIR%%/svd2forth-v3/mk.template.xsl +%%DATADIR%%/svd2forth-v3/raw-svd-clean.sh +%%DATADIR%%/svd2forth-v3/register-print-screenshot.txt +%%DATADIR%%/svd2forth-v3/svd2gas-equates.xsl +%%DATADIR%%/svd2forth-v3/svdcutter.xsl +%%DATADIR%%/svd2forth-v3/svduf.xsl +%%DATADIR%%/svd2gas/Makefile +%%DATADIR%%/svd2gas/README.txt +%%DATADIR%%/svd2gas/mk.template.xsl +%%DATADIR%%/svd2gas/svd2gas.xsl +%%DATADIR%%/svd2gas/svduf.xsl +%%DATADIR%%/trace.txt +%%DATADIR%%/value-classic.txt +%%DATADIR%%/value-ra.txt
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103161826.12GIQWNd061444>