aboutsummaryrefslogtreecommitdiffstats
path: root/lang/modula3
diff options
context:
space:
mode:
authormarino <marino@FreeBSD.org>2014-01-07 20:01:16 +0800
committermarino <marino@FreeBSD.org>2014-01-07 20:01:16 +0800
commit704ef71dfa4f0af924a69844d24c64915d1ac442 (patch)
tree599b51b14815c511c3c83da8fe29997b83ada847 /lang/modula3
parent105547b97ea8ab1fedd32934be1fcdd6b375d36d (diff)
downloadfreebsd-ports-gnome-704ef71dfa4f0af924a69844d24c64915d1ac442.tar.gz
freebsd-ports-gnome-704ef71dfa4f0af924a69844d24c64915d1ac442.tar.zst
freebsd-ports-gnome-704ef71dfa4f0af924a69844d24c64915d1ac442.zip
lang/modula3: Support FreeBSD 10+
It appears that modula3 will segfault if debug information is not generated in stabs format. Clang doesn't recognize -gstabs+ options, but removing it results in lots of segfaults early during the build. By setting USE_GCC=any, FreeBSD 9 and below will use the base gcc 4.2.1 and FreeBSD10 and later will need lang/gcc. Verified on Redports. While here, make sure .bak files do not get installed into stage by using 'sed -i ""' rather than ${REINPLACE_CMD} which equals 'sed -i.bak'.
Diffstat (limited to 'lang/modula3')
-rw-r--r--lang/modula3/Makefile11
1 files changed, 9 insertions, 2 deletions
diff --git a/lang/modula3/Makefile b/lang/modula3/Makefile
index 2f9784a18cb8..964b7b6f569c 100644
--- a/lang/modula3/Makefile
+++ b/lang/modula3/Makefile
@@ -3,6 +3,7 @@
PORTNAME= modula3
PORTVERSION= 5.8.6
+PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= https://modula3.elegosoft.com/cm3/releng/ \
http://downloads.dragonlace.net/m3/ \
@@ -26,6 +27,7 @@ USES= gmake
USE_PGSQL= yes
USE_XORG= xaw xmu xext xt sm ice x11
USE_GL= gl glu
+USE_GCC= any
NO_MTREE= yes
MAKE_ENV+= CM3_INSTALL="${STAGEDIR}${PREFIX}" \
@@ -70,11 +72,16 @@ do-extract:
@(cd ${WRKDIR} && tar -xf ${DISTDIR}/${BOOTDIST:C/:[^:]+$//})
post-patch:
- @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' \
+# Use sed -i instead of ${REINPLACE_CMD} because we don't want .bak files
+# installed in the final product which comes from config-no-install dir.
+ @${SED} -i "" -e 's|/usr/local|${PREFIX}|g' \
-e 's|\\\\$$ORIGIN"|${PREFIX}/lib"|' \
${WRKSRC}/m3-sys/cminstall/src/config-no-install/FreeBSD.common
- @${REINPLACE_CMD} -e 's|/usr/X11R6|${PREFIX}|g' \
+ @${SED} -i "" -e 's|/usr/X11R6|${PREFIX}|g' \
${WRKSRC}/m3-sys/cminstall/src/config-no-install/Unix.common
+ @${SED} -i "" -e 's/^SYSTEM_CC = ".* -gs/SYSTEM_CC = "${CC} -gs/' \
+ ${WRKDIR}/bootstrap/etc/modula3/AMD64_FREEBSD \
+ ${WRKSRC}/m3-sys/cminstall/src/config-no-install/AMD64_FREEBSD
do-bootstrap:
@(cd ${WRKSRC}; ${SETENV} ${M3MAKE_ENV} ${BOOTCM3} SHIP=${TRUE} \