diff options
-rw-r--r-- | CHANGES | 9 | ||||
-rw-r--r-- | Mk/Uses/fmake.mk | 39 |
2 files changed, 47 insertions, 1 deletions
@@ -10,8 +10,15 @@ in the release notes and/or placed into UPDATING. All ports committers are allowed to commit to this file. +20130620: +AUTHOR: + * New USES: fmake + + This uses will allow to build ports using the legacy FreeBSD make, for ports + not compatible with bmake + 20130614: -AUTHOR: bapt@FreeBSD.org +AUTHOR: bapt@FreeBSD.org * New macros to help dealing with ports that have options: diff --git a/Mk/Uses/fmake.mk b/Mk/Uses/fmake.mk new file mode 100644 index 000000000000..3eb07038b017 --- /dev/null +++ b/Mk/Uses/fmake.mk @@ -0,0 +1,39 @@ +# $FreeBSD$ +# +# Provide support to use the legacy FreeBSD make +# +# MAINTAINER: portmgr@FreeBSD.org +# +# Feature: fmake +# Usage: USES=fmake +# + +.if !defined(_INCLUDE_USES_FMAKE_MK) +_INCLUDE_USES_FMAKE_MK= yes + +.if defined(fmake_ARGS) +IGNORE= Incorrect 'USES+= fmake:${fmake_ARGS}' fmake takes no arguments +.endif + +.if defined(.PARSEDIR) +FMAKE= ${LOCALBASE}/bin/fmake +BUILD_DEPENDS+= ${FMAKE}:${PORTSDIR}/devel/fmake +CONFIGURE_ENV+= MAKE=${FMAKE} + +.if !target(do-build) +do-build: + @set -e ; (cd ${BUILD_WRKSRC}; if ! ${SETENV} ${MAKE_ENV} ${FMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} ${MAKE_ARGS} ${ALL_TARGET}; then \ + if [ -n "${BUILD_FAIL_MESSAGE}" ] ; then \ + ${ECHO_MSG} "===> Compilation failed unexpectedly."; \ + (${ECHO_CMD} ${BUILD_FAIL_MESSAGE}) | ${FMT} 75 79 ; \ + fi; \ + ${FALSE}; \ + fi) +.endif + +.if !target(do-install) +do-install: + @set -e ; (cd ${INSTALL_WRKSRC} && ${SETENV} ${MAKE_ENV} ${FMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}) +.endif +.endif +.endif |