diff options
Diffstat (limited to 'lang/mecrisp-stellaris/Makefile')
-rw-r--r-- | lang/mecrisp-stellaris/Makefile | 52 |
1 files changed, 23 insertions, 29 deletions
diff --git a/lang/mecrisp-stellaris/Makefile b/lang/mecrisp-stellaris/Makefile index 1ae184b920b8..401608597c08 100644 --- a/lang/mecrisp-stellaris/Makefile +++ b/lang/mecrisp-stellaris/Makefile @@ -1,6 +1,5 @@ PORTNAME= mecrisp-stellaris -DISTVERSION= 2.5.9 -PORTREVISION= 1 +PORTVERSION= 2.6.1 CATEGORIES= lang MASTER_SITES= SF/mecrisp @@ -10,49 +9,44 @@ COMMENT= Native code Forth system for ARM LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING +.if defined(QEMU_EMULATING) +IGNORE_aarch64= fails to build with qemu-user-static: \ + qemu-aarch64-static cannot execute armv7 binaries +.endif +IGNORE_FreeBSD_12_aarch64= OS too old to run armv7 binaries on arm64, upgrade to FreeBSD 13 +ONLY_FOR_ARCHS= aarch64 armv6 armv7 +ONLY_FOR_ARCHS_REASON= written in ARM assembly + BUILD_DEPENDS= arm-none-eabi-binutils>2.25:devel/binutils@arm_none_eabi +# stripping eats our hand-crafted ELF binaries, so don't do that +# the binaries are free of symbols or stuff like that anyway +STRIP= + +PKGMESSAGE= pkg-message-${ARCH} + 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.pre.mk> - -.if ${OSVERSION} < 1300000 -ONLY_FOR_ARCHS= armv6 armv7 -.else -ONLY_FOR_ARCHS= aarch64 armv6 armv7 -.endif -ONLY_FOR_ARCHS_REASON= written in ARM assembly - -.if ${ARCH} == "aarch64" && defined(QEMU_EMULATING) -IGNORE= fails to build with qemu-user-static: \ - qemu-aarch64-static cannot execute armv7 binaries -.endif - -PKGMESSAGE= pkg-message-${ARCH} - -AFLAGS.armv6= -march=armv6 --defsym m0core=1 -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= +BINSUFFIX_armv6= -armv6 +BINSUFFIX= ${BINSUFFIX_${ARCH}} # 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} -v assemble - ${CP} ${WRKSRC}/mecrisp-stellaris-source/freebsd-ra/mecrisp-stellaris-freebsd ${WRKSRC}/freebsd-ra/ - cd ${WRKSRC}/freebsd-ra && ${SETENV} ${MAKE_ENV} ${SH} -v buildcore-freebsd + cd ${WRKSRC}/mecrisp-stellaris-source/freebsd-ra && ${SH} -v assemble + ${CP} ${WRKSRC}/mecrisp-stellaris-source/freebsd-ra/mecrisp-stellaris-freebsd${BINSUFFIX} \ + ${WRKSRC}/freebsd-ra/mecrisp-stellaris-freebsd + cd ${WRKSRC}/freebsd-ra && ${SH} -v 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} + cd ${WRKSRC}/common && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/freebsd-ra/${PROGRAM} ${STAGEDIR}${PREFIX}/bin/mecrisp-stellaris -.include <bsd.port.post.mk> +.include <bsd.port.mk> |