ports/152944: [NEW PORT] devel/bmake: Portable version of bsd make and .mk files (from NetBSD)

John Hein jhein at symmetricom.com
Thu Dec 9 00:20:07 UTC 2010


>Number:         152944
>Category:       ports
>Synopsis:       [NEW PORT] devel/bmake: Portable version of bsd make and .mk files (from NetBSD)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Dec 09 00:20:06 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     John Hein
>Release:        
>Organization:
>Environment:
>Description:

I use bmake on other systems where the only other choice is
gmake.  It's close enough to FreeBSD make(1) that it makes
a good alternative option.  Here's a port of it for FreeBSD.

pkg-descr:
Bmake is derived from NetBSD's make(1), its goal is to be a portable
version of same, so new features are added via imports of NetBSD's
make.  Thus bmake is kept in sync with NetBSD's make.  It uses the
autoconf for portability.

The bmake port includes the .mk files that are normally installed
in /usr/share/mk on a native BSD system.  It knows to look in
${PREFIX}/share/mk instead.

WWW:	http://www.crufty.net/help/sjg/bmake.html

Generated with FreeBSD Port Tools 0.99
>How-To-Repeat:
>Fix:

--- bmake-20101126.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	bmake
#	bmake/files
#	bmake/files/patch-boot-strap
#	bmake/pkg-descr
#	bmake/Makefile
#	bmake/pkg-plist
#	bmake/distinfo
#
echo c - bmake
mkdir -p bmake > /dev/null 2>&1
echo c - bmake/files
mkdir -p bmake/files > /dev/null 2>&1
echo x - bmake/files/patch-boot-strap
sed 's/^X//' >bmake/files/patch-boot-strap << '8bc2e1ee9b4f68adb77e2c86a0f0fc82'
X$FreeBSD$
X
X- fix a bug in evaluation of *=* args to boot-strap
X- let boot-strap run in a configure phase or a build phase
X  using SKIP_CONFIGURE and CONFIGURE_ONLY
X
X--- boot-strap.orig	2010-09-13 12:28:54.000000000 -0600
X+++ boot-strap	2010-12-08 15:18:54.000000000 -0700
X@@ -150,7 +150,7 @@
X 	-q) quiet=;;
X 	-c) source_rc "$2"; shift;;
X 	--*) CONFIGURE_ARGS="$CONFIGURE_ARGS $1";;
X-	*=*) eval "$1"; export `expr "x$1" : "x\\(.[^=]\\)=.*"`;;
X+	*=*) eval "$1"; export `expr "x$1" : "x\\([^=]*\\)=.*"`;;
X 	*) break;;
X 	esac
X         shift
X@@ -287,8 +287,9 @@
X         export CFLAGS_MF CFLAGS_MD
X fi
X 
X-$srcdir/configure $CONFIGURE_ARGS || exit 1
X+[ "${SKIP_CONFIGURE}" != "" ] || $srcdir/configure $CONFIGURE_ARGS || exit 1
X chmod 755 make-bootstrap.sh || exit 1
X+[ "${CONFIGURE_ONLY}" = "" ] || exit 0
X ./make-bootstrap.sh || exit 1
X if [ -z "$MAKESYSPATH" ]; then
X        add_path "${share_dir:-...}/mk" MAKESYSPATH
8bc2e1ee9b4f68adb77e2c86a0f0fc82
echo x - bmake/pkg-descr
sed 's/^X//' >bmake/pkg-descr << '4e60de1a48e2150ede62b243299ab4c5'
XBmake is derived from NetBSD's make(1), its goal is to be a portable
Xversion of same, so new features are added via imports of NetBSD's
Xmake.  Thus bmake is kept in sync with NetBSD's make.  It uses the
Xautoconf for portability.
X
XThe bmake port includes the .mk files that are normally installed
Xin /usr/share/mk on a native BSD system, but knows to look in
X${PREFIX}/share/mk.
X
XWWW:	http://www.crufty.net/help/sjg/bmake.html
4e60de1a48e2150ede62b243299ab4c5
echo x - bmake/Makefile
sed 's/^X//' >bmake/Makefile << '1d26109cac40028aa98bbc1a6ca35ec7'
X# New ports collection makefile for:	bmake
X# Date created:		2010-12-08
X# Whom:			John E. Hein,,x4931 or x131,3039260511 or 3038183924 <jhein at bugs.timing.com>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	bmake
XPORTVERSION=	20101126
XCATEGORIES=	devel
XMASTER_SITES=	http://www.crufty.net/ftp/pub/sjg/
XDISTFILES=	${DISTNAME}${EXTRACT_SUFX} mk-20100612${EXTRACT_SUFX}
X
XMAINTAINER=	jhein at symmetricom.com
XCOMMENT=	Portable version of bsd make and .mk files (from NetBSD)
X
XCONFIGURE_ARGS+=	--prefix=${PREFIX} CONFIGURE_ONLY=1
XCONFIGURE_LOG=	FreeBSD/config.log
XCONFIGURE_SCRIPT=	boot-strap
XHAS_CONFIGURE=	yes
XPLIST_SUB+=	PORTVERSION=${PORTVERSION}
XWRKSRC=		${WRKDIR}/bmake
X
XMAN1=		bmake.1
X
Xpost-patch:
X	${REINPLACE_CMD} -i .postpatch 's|^\(Mydir\)|set -x;\1|' ${WRKSRC}/boot-strap
X
Xdo-build:
X	cd ${WRKSRC} && ${CONFIGURE_SCRIPT}	SKIP_CONFIGURE=1
X
X# copied (more or less) from suggestion at the end of boot-strap
Xdo-install:
X	${CP} ${WRKSRC}/FreeBSD/bmake ${PREFIX}/bin/bmake-${PORTVERSION}
X	${RM} -f ${PREFIX}/bin/bmake
X	${LN} -s bmake-${PORTVERSION} ${PREFIX}/bin/bmake
X	${CP} ${WRKSRC}/bmake.1 ${PREFIX}/man/man1/bmake.1
X	${SH} ${WRKDIR}/mk/install-mk ${PREFIX}/share/mk
X
X.include <bsd.port.mk>
1d26109cac40028aa98bbc1a6ca35ec7
echo x - bmake/pkg-plist
sed 's/^X//' >bmake/pkg-plist << 'f27d66de320125823aef03187582c189'
X at comment $FreeBSD$
Xbin/bmake
Xbin/bmake-%%PORTVERSION%%
Xshare/mk/auto.dep.mk
Xshare/mk/auto.obj.mk
Xshare/mk/autoconf.mk
Xshare/mk/autodep.mk
Xshare/mk/bsd.dep.mk
Xshare/mk/bsd.doc.mk
Xshare/mk/bsd.init.mk
Xshare/mk/bsd.lib.mk
Xshare/mk/bsd.links.mk
Xshare/mk/bsd.man.mk
Xshare/mk/bsd.nls.mk
Xshare/mk/bsd.obj.mk
Xshare/mk/bsd.own.mk
Xshare/mk/bsd.prog.mk
Xshare/mk/bsd.subdir.mk
Xshare/mk/dep.mk
Xshare/mk/doc.mk
Xshare/mk/dpadd.mk
Xshare/mk/final.mk
Xshare/mk/host-target.mk
Xshare/mk/host.libnames.mk
Xshare/mk/inc.mk
Xshare/mk/init.mk
Xshare/mk/java.mk
Xshare/mk/lib.mk
Xshare/mk/libnames.mk
Xshare/mk/libs.mk
Xshare/mk/links.mk
Xshare/mk/man.mk
Xshare/mk/nls.mk
Xshare/mk/obj.mk
Xshare/mk/own.mk
Xshare/mk/prlist.mk
Xshare/mk/prog.mk
Xshare/mk/progs.mk
Xshare/mk/rst2htm.mk
Xshare/mk/scripts.mk
Xshare/mk/subdir.mk
Xshare/mk/sys.mk
Xshare/mk/sys/AIX.mk
Xshare/mk/sys/Darwin.mk
Xshare/mk/sys/Generic.mk
Xshare/mk/sys/HP-UX.mk
Xshare/mk/sys/IRIX.mk
Xshare/mk/sys/Linux.mk
Xshare/mk/sys/NetBSD.mk
Xshare/mk/sys/OSF1.mk
Xshare/mk/sys/OpenBSD.mk
Xshare/mk/sys/SunOS.mk
Xshare/mk/sys/UnixWare.mk
Xshare/mk/target-flags.mk
Xshare/mk/warnings.mk
Xshare/mk/yacc.mk
X at dirrm share/mk
f27d66de320125823aef03187582c189
echo x - bmake/distinfo
sed 's/^X//' >bmake/distinfo << 'ecbceabb57917e73d62b38c9e3114148'
XSHA256 (bmake-20101126.tar.gz) = 5ccfbacc52e1701c4bb928c5d4a129ee01eda0e339c3453b3ac1ec13d7c5ec38
XSIZE (bmake-20101126.tar.gz) = 404193
XSHA256 (mk-20100612.tar.gz) = 37abd0c420f9caec56af27909b8cdda7e81fd4c4eac6a15e4583511693050e7b
XSIZE (mk-20100612.tar.gz) = 46000
ecbceabb57917e73d62b38c9e3114148
exit
--- bmake-20101126.shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list