NetBSD Problem Report #45045

From www@NetBSD.org  Fri Jun 10 15:38:03 2011
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 1775F63B99B
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 10 Jun 2011 15:38:03 +0000 (UTC)
Message-Id: <20110610153759.1668563B970@www.NetBSD.org>
Date: Fri, 10 Jun 2011 15:37:59 +0000 (UTC)
From: tcort@minix3.org
Reply-To: tcort@minix3.org
To: gnats-bugs@NetBSD.org
Subject: pkgtools/bootstrap-mk-files minix support
X-Send-Pr-Version: www-1.0

>Number:         45045
>Category:       pkg
>Synopsis:       pkgtools/bootstrap-mk-files minix support
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          closed
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 10 15:40:00 +0000 2011
>Closed-Date:    Sun Nov 06 21:07:32 +0000 2011
>Last-Modified:  Sun Nov 06 21:07:32 +0000 2011
>Originator:     Thomas Cort
>Release:        N/A
>Organization:
Minix3
>Environment:
Minix 192.168.122.210 3.2.0 i686
>Description:
bootstrap-mk-files doesn't have support for Minix.
>How-To-Repeat:
Try to use pkgsrc on Minix without the changes below.
>Fix:
diff --git a/pkgtools/bootstrap-mk-files/Makefile b/pkgtools/bootstrap-mk-files/Makefile
index f14ace7..9d90101 100644
--- a/pkgtools/bootstrap-mk-files/Makefile
+++ b/pkgtools/bootstrap-mk-files/Makefile
@@ -1,7 +1,7 @@
 # $NetBSD: Makefile,v 1.24 2010/01/15 22:00:36 abs Exp $

 DISTNAME=	bootstrap-mk-files-20090807
-PKGREVISION=	2
+PKGREVISION=	3
 CATEGORIES=	pkgtools
 MASTER_SITES=	# empty
 DISTFILES=	# empty
diff --git a/pkgtools/bootstrap-mk-files/files/bootstrap.sh b/pkgtools/bootstrap-mk-files/files/bootstrap.sh
index 1084f656..b27bacf 100755
--- a/pkgtools/bootstrap-mk-files/files/bootstrap.sh
+++ b/pkgtools/bootstrap-mk-files/files/bootstrap.sh
@@ -25,8 +25,8 @@ done

 subst_pattern='s|@ROOT_GROUP@|'${ROOT_GROUP}'|g;s|@ROOT_USER@|'${ROOT_USER}'|g;s|@SYSCONFDIR@|'${SYSCONFDIR}'|g'

-if [ -f mods/${OPSYS}.own.mk.in ]; then
-	${SED} -e "${subst_pattern}" mods/${OPSYS}.own.mk.in > ${MK_DST}/bsd.own.mk
+if [ -f mods/${OPSYS}.bsd.own.mk.in ]; then
+	${SED} -e "${subst_pattern}" mods/${OPSYS}.bsd.own.mk.in > ${MK_DST}/bsd.own.mk
 else
 	${SED} -e "${subst_pattern}" mods/bsd.own.mk.in > ${MK_DST}/bsd.own.mk
 fi
diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk
new file mode 100644
index 0000000..5316bf5
--- /dev/null
+++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk
@@ -0,0 +1,525 @@
+#	$NetBSD: Linux.bsd.lib.mk,v 1.3 2008/03/13 17:28:23 joerg Exp $
+#	@(#)bsd.lib.mk	8.3 (Berkeley) 4/22/94
+
+.if !target(__initialized__)
+__initialized__:
+.if exists(${.CURDIR}/../Makefile.inc)
+.include "${.CURDIR}/../Makefile.inc"
+.endif
+.include <bsd.own.mk>
+.include <bsd.obj.mk>
+.include <bsd.depall.mk>
+.MAIN:		all
+.endif
+
+.PHONY:		checkver cleanlib libinstall
+realinstall:	checkver libinstall
+clean cleandir: cleanlib
+
+.if exists(${SHLIB_VERSION_FILE})
+SHLIB_MAJOR != . ${SHLIB_VERSION_FILE} ; echo $$major
+SHLIB_MINOR != . ${SHLIB_VERSION_FILE} ; echo $$minor
+SHLIB_TEENY != . ${SHLIB_VERSION_FILE} ; echo $$teeny
+
+# Check for higher installed library versions.
+.if !defined(NOCHECKVER) && !defined(NOCHECKVER_${LIB}) && \
+	exists(${BSDSRCDIR}/lib/checkver)
+checkver:
+	@(cd ${.CURDIR} && \
+		sh ${BSDSRCDIR}/lib/checkver -v ${SHLIB_VERSION_FILE} \
+		    -d ${DESTDIR}${LIBDIR} ${LIB})
+.endif
+.endif
+
+.if !target(checkver)
+checkver:
+.endif
+
+print-shlib-major:
+.if defined(SHLIB_MAJOR)
+	@echo ${SHLIB_MAJOR}
+.else
+	@false
+.endif
+
+print-shlib-minor:
+.if defined(SHLIB_MINOR)
+	@echo ${SHLIB_MINOR}
+.else
+	@false
+.endif
+
+print-shlib-teeny:
+.if defined(SHLIB_TEENY)
+	@echo ${SHLIB_TEENY}
+.else
+	@false
+.endif
+
+.if defined(SHLIB_MAJOR) && !empty(SHLIB_MAJOR)
+.if defined(SHLIB_MINOR) && !empty(SHLIB_MINOR)
+.if defined(SHLIB_TEENY) && !empty(SHLIB_TEENY)
+SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}.${SHLIB_TEENY}
+.else
+SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}
+.endif
+.else
+SHLIB_FULLVERSION=${SHLIB_MAJOR}
+.endif
+.endif
+
+# add additional suffixes not exported.
+# .po is used for profiling object files.
+# .so is used for PIC object files.
+.SUFFIXES: .out .a .ln .so .po .o .s .S .c .cc .C .m .F .f .r .y .l .cl .p .h
+.SUFFIXES: .sh .m4 .m
+
+
+# Set PICFLAGS to cc flags for producing position-independent code,
+# if not already set.  Includes -DPIC, if required.
+
+# Data-driven table using make variables to control how shared libraries
+# are built for different platforms and object formats.
+# OBJECT_FMT:		currently either "ELF" or "a.out", from <bsd.own.mk>
+# SHLIB_SOVERSION:	version number to be compiled into a shared library
+#			via -soname. Usualy ${SHLIB_MAJOR} on ELF.
+#			NetBSD/pmax used to use ${SHLIB_MAJOR}[.${SHLIB_MINOR}
+#			[.${SHLIB_TEENY}]]
+# SHLIB_SHFLAGS:	Flags to tell ${LD} to emit shared library.
+#			with ELF, also set shared-lib version for ld.so.
+# SHLIB_LDSTARTFILE:	support .o file, call C++ file-level constructors
+# SHLIB_LDENDFILE:	support .o file, call C++ file-level destructors
+# FPICFLAGS:		flags for ${FC} to compile .[fF] files to .so objects.
+# CPPICFLAGS:		flags for ${CPP} to preprocess .[sS] files for ${AS}
+# CPICFLAGS:		flags for ${CC} to compile .[cC] files to .so objects.
+# CAPICFLAGS		flags for {$CC} to compiling .[Ss] files
+#		 	(usually just ${CPPPICFLAGS} ${CPICFLAGS})
+# APICFLAGS:		flags for ${AS} to assemble .[sS] to .so objects.
+
+.if ${MACHINE_ARCH} == "alpha"
+		# Alpha-specific shared library flags
+FPICFLAGS ?= -fPIC
+CPICFLAGS ?= -fPIC -DPIC
+CPPPICFLAGS?= -DPIC 
+CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
+APICFLAGS ?=
+.elif ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb"
+		# mips-specific shared library flags
+
+# On mips, all libs are compiled with ABIcalls, not just sharedlibs.
+MKPICLIB= no
+
+# so turn shlib PIC flags on for ${AS}.
+AINC+=-DABICALLS
+AFLAGS+= -fPIC
+AS+=	-KPIC
+
+.elif ${MACHINE_ARCH} == "vax" && ${OBJECT_FMT} == "ELF"
+# On the VAX, all object are PIC by default, not just sharedlibs.
+MKPICLIB= no
+
+.elif (${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64") && \
+       ${OBJECT_FMT} == "ELF"
+
+FPICFLAGS ?= -fPIC
+CPICFLAGS ?= -fPIC -DPIC
+CPPPICFLAGS?= -DPIC 
+CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
+APICFLAGS ?= -KPIC
+
+.else
+
+# Platform-independent flags for NetBSD a.out shared libraries (and PowerPC)
+SHLIB_LDSTARTFILE=
+SHLIB_LDENDFILE=
+SHLIB_SOVERSION=${SHLIB_FULLVERSION}
+SHLIB_SHFLAGS=
+FPICFLAGS ?= -fPIC
+CPICFLAGS?= -fPIC -DPIC
+CPPPICFLAGS?= -DPIC 
+CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
+APICFLAGS?= -k
+
+.endif
+
+# Minix does not support shared libraries yet
+MKPICLIB?= no
+
+# Platform-independent linker flags for ELF shared libraries
+.if ${OBJECT_FMT} == "ELF"
+SHLIB_SOVERSION=	${SHLIB_MAJOR}
+SHLIB_SHFLAGS=		-soname lib${LIB}.so.${SHLIB_SOVERSION}
+SHLIB_LDSTARTFILE?=	${DESTDIR}/usr/lib/crtbeginS.o
+SHLIB_LDENDFILE?=	${DESTDIR}/usr/lib/crtendS.o
+.endif
+
+CFLAGS+=	${COPTS}
+FFLAGS+=	${FOPTS}
+
+.c.o:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.c} ${.IMPSRC}
+.else
+	@echo ${COMPILE.c:Q} ${.IMPSRC}
+	@${COMPILE.c} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.c.po:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.c:Q} -pg ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.c.so:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.c:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.c.ln:
+	${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
+
+.cc.o .C.o:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.cc} ${.IMPSRC}
+.else
+	@echo ${COMPILE.cc:Q} ${.IMPSRC}
+	@${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.cc.po .C.po:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.cc:Q} -pg ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.cc.so .C.so:
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+	${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.cc:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.f.o:
+.if defined(FOPTS) && !empty(FOPTS:M*-g*)
+	${COMPILE.f} ${.IMPSRC}
+.else
+	@echo ${COMPILE.f:Q} ${.IMPSRC}
+	@${COMPILE.f} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.f.po:
+.if defined(FOPTS) && !empty(FOPTS:M*-g*)
+	${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.f:Q} -pg ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.f.so:
+.if defined(FOPTS) && !empty(FOPTS:M*-g*)
+	${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.f:Q} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.f.ln:
+	${ECHO} Skipping lint for Fortran libraries.
+
+.m.o:
+.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
+	${COMPILE.m} ${.IMPSRC}
+.else
+	@echo ${COMPILE.m:Q} ${.IMPSRC}
+	@${COMPILE.m} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.m.po:
+.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
+	${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.m:Q} -pg ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.m.so:
+.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
+	${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+.else
+	@echo ${COMPILE.m:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+.endif
+
+.S.o .s.o:
+	@echo ${COMPILE.S:Q} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC}
+	@${COMPILE.S} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+
+.S.po .s.po:
+	@echo ${COMPILE.S:Q} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.S} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+
+.S.so .s.so:
+	@echo ${COMPILE.S:Q} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
+	@${COMPILE.S} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
+	@${LD} -r ${.TARGET}.o -o ${.TARGET}
+	@rm -f ${.TARGET}.o
+
+.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
+	|| ${MKLINKLIB} != "no"
+_LIBS=lib${LIB}.a
+.else
+_LIBS=
+.endif
+
+OBJS+=${SRCS:N*.h:N*.sh:R:S/$/.o/g}
+
+.if ${MKPROFILE} != "no"
+_LIBS+=lib${LIB}_p.a
+POBJS+=${OBJS:.o=.po}
+.endif
+
+.if ${MKPIC} != "no"
+.if ${MKPICLIB} == "no"
+SOLIB=lib${LIB}.a
+.else
+SOLIB=lib${LIB}_pic.a
+_LIBS+=${SOLIB}
+SOBJS+=${OBJS:.o=.so}
+.endif
+.if defined(SHLIB_FULLVERSION)
+_LIBS+=lib${LIB}.so.${SHLIB_FULLVERSION}
+.endif
+.endif
+
+LOBJS+=${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
+.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
+_LIBS+=llib-l${LIB}.ln
+.endif
+
+.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
+	|| ${MKLINKLIB} != "no"
+ALLOBJS=${OBJS} ${POBJS} ${SOBJS}
+.else
+ALLOBJS=${POBJS} ${SOBJS} 
+.endif
+.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
+ALLOBJS+=${LOBJS}
+.endif
+.NOPATH: ${ALLOBJS} ${_LIBS}
+
+realall: ${SRCS} ${ALLOBJS:O} ${_LIBS}
+
+__archivebuild: .USE
+	@rm -f ${.TARGET}
+	${AR} cq ${.TARGET} ${.ALLSRC:M*o}
+	${RANLIB} ${.TARGET}
+
+__archiveinstall: .USE
+	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
+	    -g ${LIBGRP} -m 600 ${.ALLSRC} ${.TARGET}
+	${RANLIB} -t ${.TARGET}
+	chmod ${LIBMODE} ${.TARGET}
+
+DPSRCS+=	${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c}
+CLEANFILES+=	${DPSRCS}
+.if defined(YHEADER)
+CLEANFILES+=	${SRCS:M*.y:.y=.h}
+.endif
+
+lib${LIB}.a:: ${OBJS} __archivebuild
+	@echo building standard ${LIB} library
+
+lib${LIB}_p.a:: ${POBJS} __archivebuild
+	@echo building profiled ${LIB} library
+
+lib${LIB}_pic.a:: ${SOBJS} __archivebuild
+	@echo building shared object ${LIB} library
+
+lib${LIB}.so.${SHLIB_FULLVERSION}: ${SOLIB} ${DPADD} \
+    ${SHLIB_LDSTARTFILE} ${SHLIB_LDENDFILE}
+	@echo building shared ${LIB} library \(version ${SHLIB_FULLVERSION}\)
+	@rm -f lib${LIB}.so.${SHLIB_FULLVERSION}
+.if defined(DESTDIR)
+	$(LD) -nostdlib -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
+	    ${SHLIB_LDSTARTFILE} \
+	    --whole-archive ${SOLIB} \
+	    --no-whole-archive ${LDADD} \
+	    -L${DESTDIR}${LIBDIR} -R${LIBDIR} \
+	    ${SHLIB_LDENDFILE}
+.else
+	$(LD) -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
+	    ${SHLIB_LDSTARTFILE} \
+	    --whole-archive ${SOLIB} --no-whole-archive ${LDADD} \
+	    ${SHLIB_LDENDFILE}
+.endif
+.if ${OBJECT_FMT} == "ELF"
+	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.${SHLIB_MAJOR}.tmp
+	mv -f lib${LIB}.so.${SHLIB_MAJOR}.tmp lib${LIB}.so.${SHLIB_MAJOR}
+	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.tmp
+	mv -f lib${LIB}.so.tmp lib${LIB}.so
+.endif
+
+.if !empty(LOBJS)
+LLIBS?=		-lc
+llib-l${LIB}.ln: ${LOBJS}
+	@echo building llib-l${LIB}.ln
+	@rm -f llib-l${LIB}.ln
+	@${LINT} -C${LIB} ${.ALLSRC} ${LLIBS}
+.endif
+
+cleanlib:
+	rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES}
+	rm -f lib${LIB}.a ${OBJS}
+	rm -f lib${LIB}_p.a ${POBJS}
+	rm -f lib${LIB}_pic.a lib${LIB}.so.* lib${LIB}.so ${SOBJS}
+	rm -f llib-l${LIB}.ln ${LOBJS}
+
+.if defined(SRCS)
+afterdepend: .depend
+	@(TMP=/tmp/_depend$$$$; \
+	    sed -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.po \1.so \1.ln:/' \
+	      < .depend > $$TMP; \
+	    mv $$TMP .depend)
+.endif
+
+.if !target(libinstall)
+# Make sure it gets defined, in case MKPIC==no && MKLINKLIB==no
+libinstall::
+
+.if ${MKLINKLIB} != "no"
+libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.a
+.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.a
+.if !defined(UPDATE)
+.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.a
+.endif
+
+.if !defined(BUILD) && !make(all) && !make(lib${LIB}.a)
+${DESTDIR}${LIBDIR}/lib${LIB}.a: .MADE
+.endif
+${DESTDIR}${LIBDIR}/lib${LIB}.a: lib${LIB}.a __archiveinstall
+.endif
+
+.if ${MKPROFILE} != "no"
+libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
+.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
+.if !defined(UPDATE)
+.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
+.endif
+
+.if !defined(BUILD) && !make(all) && !make(lib${LIB}_p.a)
+${DESTDIR}${LIBDIR}/lib${LIB}_p.a: .MADE
+.endif
+${DESTDIR}${LIBDIR}/lib${LIB}_p.a: lib${LIB}_p.a __archiveinstall
+.endif
+
+.if ${MKPIC} != "no" && ${MKPICINSTALL} != "no"
+libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
+.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
+.if !defined(UPDATE)
+.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
+.endif
+
+.if !defined(BUILD) && !make(all) && !make(lib${LIB}_pic.a)
+${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: .MADE
+.endif
+.if ${MKPICLIB} == "no"
+${DESTDIR}${LIBDIR}/lib${LIB}_pic.a:
+	rm -f ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
+	ln -s lib${LIB}.a ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
+.else
+${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: lib${LIB}_pic.a __archiveinstall
+.endif
+.endif
+
+.if ${MKPIC} != "no" && defined(SHLIB_FULLVERSION)
+libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
+.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
+.if !defined(UPDATE)
+.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
+.endif
+
+.if !defined(BUILD) && !make(all) && !make(lib${LIB}.so.${SHLIB_FULLVERSION})
+${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: .MADE
+.endif
+${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: lib${LIB}.so.${SHLIB_FULLVERSION}
+	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
+	    -g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${.TARGET}
+.if ${OBJECT_FMT} == "a.out" && !defined(DESTDIR)
+	/sbin/ldconfig -m ${LIBDIR}
+.endif
+.if ${OBJECT_FMT} == "ELF"
+	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
+	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp
+	mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp\
+	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}
+.if ${MKLINKLIB} != "no"
+	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
+	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp
+	mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp\
+	    ${DESTDIR}${LIBDIR}/lib${LIB}.so
+.endif
+.endif
+.endif
+
+.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
+libinstall:: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
+.PRECIOUS: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
+.if !defined(UPDATE)
+.PHONY: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
+.endif
+
+.if !defined(BUILD) && !make(all) && !make(llib-l${LIB}.ln)
+${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: .MADE
+.endif
+${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: llib-l${LIB}.ln
+	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
+	    -g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${DESTDIR}${LINTLIBDIR}
+.endif
+.endif
+
+.include <bsd.man.mk>
+.include <bsd.nls.mk>
+.include <bsd.files.mk>
+.include <bsd.inc.mk>
+.include <bsd.links.mk>
+.include <bsd.dep.mk>
+.include <bsd.sys.mk>
+
+# Make sure all of the standard targets are defined, even if they do nothing.
+lint regress:
diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk
new file mode 100644
index 0000000..1d5a20a
--- /dev/null
+++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk
@@ -0,0 +1,191 @@
+#	$NetBSD: Linux.bsd.man.mk,v 1.7 2009/08/07 07:48:59 dsainty Exp $
+#	@(#)bsd.man.mk	8.1 (Berkeley) 6/8/93
+
+.if !target(__initialized__)
+__initialized__:
+.if exists(${.CURDIR}/../Makefile.inc)
+.include "${.CURDIR}/../Makefile.inc"
+.endif
+.include <bsd.own.mk>
+.include <bsd.obj.mk>
+.include <bsd.depall.mk>
+.MAIN:		all
+.endif
+
+.PHONY:		catinstall maninstall catpages manpages catlinks manlinks cleanman html installhtml cleanhtml
+.if ${MKMAN} != "no"
+realinstall:	${MANINSTALL}
+.endif
+cleandir: cleanman
+
+HTMLDIR?=	${DESTDIR}/usr/share/man
+MANTARGET?=	cat
+MANDOC?=	mandoc -Tascii
+TBL?=		tbl
+
+.SUFFIXES: .1 .2 .3 .4 .5 .6 .7 .8 .9 \
+	   .cat1 .cat2 .cat3 .cat4 .cat5 .cat6 .cat7 .cat8 .cat9 \
+	   .html1 .html2 .html3 .html4 .html5 .html6 .html7 .html8 .html9
+
+.9.cat9 .8.cat8 .7.cat7 .6.cat6 .5.cat5 .4.cat4 .3.cat3 .2.cat2 .1.cat1:
+.if !defined(USETBL)
+	@echo "${MANDOC} ${.IMPSRC} > ${.TARGET}"
+	${MANDOC} ${.IMPSRC} > ${.TARGET} || \
+	 (rm -f ${.TARGET}; false)
+.else
+	@echo "${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET}"
+	@${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET} || \
+	 (rm -f ${.TARGET}; false)
+.endif
+
+.9.html9 .8.html8 .7.html7 .6.html6 .5.html5 .4.html4 .3.html3 .2.html2 .1.html1:
+.if !defined(USETBL)
+	@echo "${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET}"
+	@${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET} || \
+	 (rm -f ${.TARGET}; false)
+.else
+	@echo "${TBL} ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET}"
+	@cat ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET} || \
+	 (rm -f ${.TARGET}; false)
+.endif
+
+.if defined(MAN) && !empty(MAN)
+MANPAGES=	${MAN}
+CATPAGES=	${MANPAGES:C/(.*).([1-9])/\1.cat\2/}
+.NOPATH:	${CATPAGES}
+.if !defined(NOHTML)
+HTMLPAGES=	${MANPAGES:C/(.*).([1-9])/\1.html\2/}
+.endif
+.endif
+
+MINSTALL=	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} \
+		    -o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
+
+.if defined(MANZ)
+# chown and chmod are done afterward automatically
+MCOMPRESS=	gzip -cf
+MCOMPRESSSUFFIX= .gz
+.endif
+
+catinstall: catlinks
+maninstall: manlinks
+
+__installpage: .USE
+.if defined(MCOMPRESS) && !empty(MCOMPRESS)
+	@rm -f ${.TARGET}
+	${MCOMPRESS} ${.ALLSRC} > ${.TARGET}
+	@chown ${MANOWN}:${MANGRP} ${.TARGET}
+	@chmod ${MANMODE} ${.TARGET}
+.else
+	@cmp -s ${.ALLSRC} ${.TARGET} > /dev/null 2>&1 || \
+	    (echo "${MINSTALL} ${.ALLSRC} ${.TARGET}" && \
+	     ${MINSTALL} ${.ALLSRC} ${.TARGET})
+.endif
+
+# Rules for cat'ed man page installation
+.if defined(CATPAGES) && !empty(CATPAGES) && ${MKCATPAGES} != "no"
+catpages:: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
+.PRECIOUS: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
+.if !defined(UPDATE)
+.PHONY: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
+.endif
+
+.   for P in ${CATPAGES:O:u}
+.	if !defined(BUILD) && !make(all) && !make(${P})
+${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: .MADE
+.	endif
+${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: ${P} __installpage
+.   endfor
+.else
+catpages::
+.endif
+
+# Rules for source page installation
+.if defined(MANPAGES) && !empty(MANPAGES)
+manpages:: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
+.PRECIOUS: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
+.if !defined(UPDATE)
+.PHONY: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
+.endif
+
+.   for P in ${MANPAGES:O:u}
+${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}: ${P} __installpage
+.   endfor
+.else
+manpages::
+.endif
+
+.if ${MKCATPAGES} != "no"
+catlinks: catpages
+.if defined(MLINKS) && !empty(MLINKS)
+	@set ${MLINKS}; \
+	while test $$# -ge 2; do \
+		name=$$1; \
+		shift; \
+		dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
+		l=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
+		name=$$1; \
+		shift; \
+		dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
+		t=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
+		if test $$l -nt $$t -o ! -f $$t; then \
+			echo $$t -\> $$l; \
+			ln -f $$l $$t; \
+		fi; \
+	done
+.endif
+.else
+catlinks:
+.endif
+
+manlinks: manpages
+.if defined(MLINKS) && !empty(MLINKS)
+	@set ${MLINKS}; \
+	while test $$# -ge 2; do \
+		name=$$1; \
+		shift; \
+		dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
+		l=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
+		name=$$1; \
+		shift; \
+		dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
+		t=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
+		if test $$l -nt $$t -o ! -f $$t; then \
+			echo $$t -\> $$l; \
+			ln -f $$l $$t; \
+		fi; \
+	done
+.endif
+
+# Html rules
+html: ${HTMLPAGES}
+
+.if defined(HTMLPAGES) && !empty(HTMLPAGES)
+.for P in ${HTMLPAGES:O:u} 
+${HTMLDIR}/${P:T:E}/${P:T:R}.html: ${P}
+	${MINSTALL} ${.ALLSRC} ${.TARGET}
+.endfor
+.endif
+installhtml: ${HTMLPAGES:@P@${HTMLDIR}/${P:T:E}/${P:T:R}.html@}
+
+cleanhtml:
+.if defined(HTMLPAGES) && !empty(HTMLPAGES)
+	rm -f ${HTMLPAGES}
+.endif
+
+
+.if defined(CATPAGES)
+.if ${MKCATPAGES} != "no" && ${MKMAN} != "no"
+realall: ${CATPAGES}
+.else
+realall:
+.endif
+
+cleanman:
+	rm -f ${CATPAGES}
+.else
+cleanman:
+.endif
+
+# Make sure all of the standard targets are defined, even if they do nothing.
+clean depend includes lint regress tags:
diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in
new file mode 100644
index 0000000..f978762
--- /dev/null
+++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in
@@ -0,0 +1,286 @@
+#	$NetBSD: bsd.own.mk.in,v 1.2 2007/08/25 09:33:57 rillig Exp $
+
+.if !defined(_BSD_OWN_MK_)
+_BSD_OWN_MK_=1
+
+.if defined(MAKECONF) && exists(${MAKECONF})
+.include "${MAKECONF}"
+.elif exists(@SYSCONFDIR@/mk.conf)
+.include "@SYSCONFDIR@/mk.conf"
+.elif exists(/etc/mk.conf)
+.include "/etc/mk.conf"
+.endif
+
+# Defining `SKEY' causes support for S/key authentication to be compiled in.
+SKEY=		yes
+
+# where the system object and source trees are kept; can be configurable
+# by the user in case they want them in ~/foosrc and ~/fooobj, for example
+BSDSRCDIR?=	/usr/src
+BSDOBJDIR?=	/usr/obj
+
+BINGRP?=	@ROOT_GROUP@
+BINOWN?=	@ROOT_USER@
+BINMODE?=	555
+NONBINMODE?=	444
+
+# Define MANZ to have the man pages compressed (gzip)
+#MANZ=		1
+
+MANDIR?=	/usr/share/man
+MANGRP?=	@ROOT_GROUP@
+MANOWN?=	@ROOT_USER@
+MANMODE?=	${NONBINMODE}
+MANINSTALL?=	maninstall catinstall
+
+INFODIR?=	/usr/share/info
+INFOGRP?=	@ROOT_GROUP@
+INFOOWN?=	@ROOT_USER@
+INFOMODE?=	${NONBINMODE}
+
+LIBDIR?=	/usr/lib
+LINTLIBDIR?=	/usr/libdata/lint
+LIBGRP?=	${BINGRP}
+LIBOWN?=	${BINOWN}
+LIBMODE?=	${NONBINMODE}
+
+DOCDIR?=	/usr/share/doc
+HTMLDOCDIR?=	/usr/share/doc/html
+DOCGRP?=	@ROOT_GROUP@
+DOCOWN?=	@ROOT_USER@
+DOCMODE?=	${NONBINMODE}
+
+NLSDIR?=	/usr/share/nls
+NLSGRP?=	@ROOT_GROUP@
+NLSOWN?=	@ROOT_USER@
+NLSMODE?=	${NONBINMODE}
+
+KMODDIR?=	/usr/lkm
+KMODGRP?=	@ROOT_GROUP@
+KMODOWN?=	@ROOT_USER@
+KMODMODE?=	${NONBINMODE}
+
+LOCALEDIR?=	/usr/share/locale
+LOCALEGRP?=	@ROOT_GROUP@
+LOCALEOWN?=	@ROOT_USER@
+LOCALEMODE?=	${NONBINMODE}
+
+COPY?=		-c
+.if defined(UPDATE)
+PRESERVE?=	-p
+.else
+PRESERVE?=
+.endif
+.if defined(UNPRIVILEGED)
+INSTPRIV?=	-U
+.endif
+STRIPFLAG?=	-s
+
+# Define SYS_INCLUDE to indicate whether you want symbolic links to the system
+# source (``symlinks''), or a separate copy (``copies''); (latter useful
+# in environments where it's not possible to keep /sys publicly readable)
+#SYS_INCLUDE= 	symlinks
+
+# The sh3 port is incomplete.
+.if ${MACHINE_ARCH} == "sh3eb" || ${MACHINE_ARCH} == "sh3el"
+NOLINT=1
+NOPROFILE=1
+OBJECT_FMT?=COFF
+NOPIC?=1
+.endif
+
+# The sparc64 port is incomplete.
+# Profiling and linting is also off on the x86_64 port at the moment.
+.if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "x86_64"
+NOPROFILE=1
+NOLINT=1
+.endif
+
+# The m68000 port is incomplete.
+.if ${MACHINE_ARCH} == "m68000"
+NOLINT=1
+NOPROFILE=1
+NOPIC?=1
+.endif
+
+# Data-driven table using make variables to control how 
+# toolchain-dependent targets and shared libraries are built
+# for different platforms and object formats.
+# OBJECT_FMT:		currently either "ELF" or "a.out".
+# SHLIB_TYPE:		"ELF" or "a.out" or "" to force static libraries.
+#
+OBJECT_FMT?=a.out
+
+.if ${CC:M*gcc*} != ""
+.if ${MACHINE_ARCH} == "x86_64"
+CFLAGS+=-Wno-format -fno-builtin
+.endif
+.endif
+
+# Location of the file that contains the major and minor numbers of the
+# version of a shared library.  If this file exists a shared library
+# will be built by <bsd.lib.mk>.
+SHLIB_VERSION_FILE?= ${.CURDIR}/shlib_version
+
+# GNU sources and packages sometimes see architecture names differently.
+# This table maps an architecture name to its GNU counterpart.
+# Use as so:  ${GNU_ARCH.${TARGET_ARCH}} or ${MACHINE_GNU_ARCH}
+.ifndef MACHINE_GNU_ARCH
+GNU_ARCH.alpha=alpha
+GNU_ARCH.arm26=arm
+GNU_ARCH.arm32=arm
+GNU_ARCH.arm=arm
+GNU_ARCH.i386=i386
+GNU_ARCH.m68k=m68k
+GNU_ARCH.mipseb=mipseb
+GNU_ARCH.mipsel=mipsel
+GNU_ARCH.ns32k=ns32k
+GNU_ARCH.powerpc=powerpc
+GNU_ARCH.sh3eb=sh
+GNU_ARCH.sh3el=sh
+GNU_ARCH.sparc=sparc
+GNU_ARCH.sparc64=sparc64
+GNU_ARCH.vax=vax
+MACHINE_GNU_ARCH=${GNU_ARCH.${MACHINE_ARCH}}
+.endif
+
+# CPU model, derived from MACHINE_ARCH
+MACHINE_CPU=	${MACHINE_ARCH:C/mipse[bl]/mips/:S/arm26/arm/:S/arm32/arm/:C/sh3e[bl]/sh3/:S/m68000/m68k/}
+
+TARGETS+=	all clean cleandir depend dependall includes \
+		install lint obj regress tags html installhtml cleanhtml
+.PHONY:		all clean cleandir depend dependall distclean includes \
+		install lint obj regress tags beforedepend afterdepend \
+		beforeinstall afterinstall realinstall realdepend realall \
+		html installhtml cheanhtml
+
+# set NEED_OWN_INSTALL_TARGET, if it's not already set, to yes
+# this is used by bsd.pkg.mk to stop "install" being defined
+NEED_OWN_INSTALL_TARGET?=	yes
+
+.if ${NEED_OWN_INSTALL_TARGET} == "yes"
+.if !target(install)
+install:	.NOTMAIN beforeinstall subdir-install realinstall afterinstall
+beforeinstall:	.NOTMAIN
+subdir-install:	.NOTMAIN beforeinstall
+realinstall:	.NOTMAIN beforeinstall
+afterinstall:	.NOTMAIN subdir-install realinstall
+.endif
+all:		.NOTMAIN realall subdir-all
+subdir-all:	.NOTMAIN
+realall:	.NOTMAIN
+depend:		.NOTMAIN realdepend subdir-depend
+subdir-depend:	.NOTMAIN
+realdepend:	.NOTMAIN
+distclean:	.NOTMAIN cleandir
+.endif
+
+PRINTOBJDIR=	printf "xxx: .MAKE\n\t@echo \$${.OBJDIR}\n" | ${MAKE} -B -s -f-
+
+# Define MKxxx variables (which are either yes or no) for users
+# to set in /etc/mk.conf and override on the make commandline.
+# These should be tested with `== "no"' or `!= "no"'.
+# The NOxxx variables should only be used by Makefiles.
+#
+
+MKCATPAGES?=yes
+
+.if defined(NODOC)
+MKDOC=no
+#.elif !defined(MKDOC)
+#MKDOC=yes
+.else
+MKDOC?=yes
+.endif
+
+MKINFO?=yes
+
+.if defined(NOLINKLIB)
+MKLINKLIB=no
+.else
+MKLINKLIB?=yes
+.endif
+.if ${MKLINKLIB} == "no"
+MKPICINSTALL=no
+MKPROFILE=no
+.endif
+
+MKLINT?=no
+
+.if defined(NOMAN)
+MKMAN=no
+.else
+MKMAN?=yes
+.endif
+.if ${MKMAN} == "no"
+MKCATPAGES=no
+.endif
+
+.if defined(NONLS)
+MKNLS=no
+.else
+MKNLS?=yes
+.endif
+
+#
+# MKOBJDIRS controls whether object dirs are created during "make build".
+# MKOBJ controls whether the "make obj" rule does anything.
+#
+.if defined(NOOBJ)
+MKOBJ=no
+MKOBJDIRS=no
+.else
+MKOBJ?=yes
+MKOBJDIRS?=no
+.endif
+
+.if defined(NOPIC)
+MKPIC=no
+.else
+MKPIC?=yes
+.endif
+
+.if defined(NOPICINSTALL)
+MKPICINSTALL=no
+.else
+MKPICINSTALL?=yes
+.endif
+
+.if defined(NOPROFILE)
+MKPROFILE=no
+.else
+MKPROFILE?=yes
+.endif
+
+.if defined(NOSHARE)
+MKSHARE=no
+.else
+MKSHARE?=yes
+.endif
+.if ${MKSHARE} == "no"
+MKCATPAGES=no
+MKDOC=no
+MKINFO=no
+MKMAN=no
+MKNLS=no
+.endif
+
+.if defined(NOCRYPTO)
+MKCRYPTO=no
+.else
+MKCRYPTO?=yes
+.endif
+
+MKCRYPTO_IDEA?=no
+
+MKCRYPTO_RC5?=no
+
+.if defined(NOKERBEROS) || (${MKCRYPTO} == "no")
+MKKERBEROS=no
+.else
+MKKERBEROS?=yes
+.endif
+
+MKSOFTFLOAT?=no
+
+.endif		# _BSD_OWN_MK_
diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk
new file mode 100644
index 0000000..e99fd80
--- /dev/null
+++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk
@@ -0,0 +1,200 @@
+#	$NetBSD: Linux.sys.mk,v 1.2 2009/02/19 00:51:12 abs Exp $
+#	NetBSD: sys.mk,v 1.58 2000/08/22 17:38:49 bjh21 Exp 
+#	@(#)sys.mk	8.2 (Berkeley) 3/21/94
+
+unix?=		We run Unix.
+OS?=		Minix
+
+# At least Ubuntu 8.1 sets __attribute__((warn_unused_result)) on fwrite()
+# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509
+.if !defined(NOGCCERROR)
+CFLAGS+= -Wno-error
+.endif
+
+.SUFFIXES: .out .a .ln .o .s .S .c .cc .cpp .cxx .C .F .f .r .y .l .cl .p .h
+.SUFFIXES: .sh .m4
+  
+.LIBS:		.a
+
+AR?=		ar
+ARFLAGS?=	rl
+RANLIB?=	ranlib
+
+AS?=		gas
+AFLAGS?=
+COMPILE.s?=	${CC} ${AFLAGS} -c
+LINK.s?=	${CC} ${AFLAGS} ${LDFLAGS}
+COMPILE.S?=	${CC} ${AFLAGS} ${CPPFLAGS} -c -traditional-cpp
+LINK.S?=	${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
+
+CC?=		gcc
+DBG?=
+CFLAGS?=	${DBG}
+COMPILE.c?=	${CC} ${CFLAGS} ${CPPFLAGS} -c
+LINK.c?=	${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
+
+CXX?=		g++
+CXXFLAGS?=	${CFLAGS}
+COMPILE.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
+LINK.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
+
+OBJC?=		${CC}
+OBJCFLAGS?=	${CFLAGS}
+COMPILE.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c
+LINK.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${LDFLAGS}
+
+CPP?=		cpp
+NOLINT=		1
+CPPFLAGS?=
+
+FC?=		f77
+FFLAGS?=	-O
+RFLAGS?=
+COMPILE.f?=	${FC} ${FFLAGS} -c
+LINK.f?=	${FC} ${FFLAGS} ${LDFLAGS}
+COMPILE.F?=	${FC} ${FFLAGS} ${CPPFLAGS} -c
+LINK.F?=	${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
+COMPILE.r?=	${FC} ${FFLAGS} ${RFLAGS} -c
+LINK.r?=	${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
+
+INSTALL?=	install
+
+LEX?=		lex
+LFLAGS?=
+LEX.l?=		${LEX} ${LFLAGS}
+
+LD?=		ld
+LDFLAGS?=
+
+LINT?=		lint
+LINTFLAGS?=	-chapbxzF
+
+LORDER?=	echo
+
+MAKE?=		make
+
+NM?=		nm
+
+PC?=		pc
+PFLAGS?=
+COMPILE.p?=	${PC} ${PFLAGS} ${CPPFLAGS} -c
+LINK.p?=	${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
+
+SHELL?=		sh
+
+SIZE?=		size
+
+TSORT?= 	tsort
+
+YACC?=		yacc
+YFLAGS?=
+YACC.y?=	${YACC} ${YFLAGS}
+
+# C
+.c:
+	${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.c.o:
+	${COMPILE.c} ${.IMPSRC}
+.c.a:
+	${COMPILE.c} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+.c.ln:
+	${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
+
+# C++
+.cc .cpp .cxx .C:
+	${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.cc.o .cpp.o .cxx.o .C.o:
+	${COMPILE.cc} ${.IMPSRC}
+.cc.a .cpp.a .cxx.a .C.a:
+	${COMPILE.cc} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+# Fortran/Ratfor
+.f:
+	${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.f.o:
+	${COMPILE.f} ${.IMPSRC}
+.f.a:
+	${COMPILE.f} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+.F:
+	${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.F.o:
+	${COMPILE.F} ${.IMPSRC}
+.F.a:
+	${COMPILE.F} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+.r:
+	${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.r.o:
+	${COMPILE.r} ${.IMPSRC}
+.r.a:
+	${COMPILE.r} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+# Pascal
+.p:
+	${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.p.o:
+	${COMPILE.p} ${.IMPSRC}
+.p.a:
+	${COMPILE.p} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+# Assembly
+.s:
+	${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.s.o:
+	${COMPILE.s} ${.IMPSRC}
+.s.a:
+	${COMPILE.s} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+.S:
+	${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
+.S.o:
+	${COMPILE.S} ${.IMPSRC}
+.S.a:
+	${COMPILE.S} ${.IMPSRC}
+	${AR} ${ARFLAGS} $@ $*.o
+	rm -f $*.o
+
+# Lex
+.l:
+	${LEX.l} ${.IMPSRC}
+	${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
+	rm -f lex.yy.c
+.l.c:
+	${LEX.l} ${.IMPSRC}
+	mv lex.yy.c ${.TARGET}
+.l.o:
+	${LEX.l} ${.IMPSRC}
+	${COMPILE.c} -o ${.TARGET} lex.yy.c 
+	rm -f lex.yy.c
+
+# Yacc
+.y:
+	${YACC.y} ${.IMPSRC}
+	${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
+	rm -f y.tab.c
+.y.c:
+	${YACC.y} ${.IMPSRC}
+	mv y.tab.c ${.TARGET}
+.y.o:
+	${YACC.y} ${.IMPSRC}
+	${COMPILE.c} -o ${.TARGET} y.tab.c
+	rm -f y.tab.c
+
+# Shell
+.sh:
+	rm -f ${.TARGET}
+	cp ${.IMPSRC} ${.TARGET}

>Release-Note:

>Audit-Trail:
From: David Holland <dholland-pbugs@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/45045: pkgtools/bootstrap-mk-files minix support
Date: Sun, 12 Jun 2011 04:36:14 +0000

 On Fri, Jun 10, 2011 at 03:40:00PM +0000, tcort@minix3.org wrote:
  > -if [ -f mods/${OPSYS}.own.mk.in ]; then
  > -	${SED} -e "${subst_pattern}" mods/${OPSYS}.own.mk.in > ${MK_DST}/bsd.own.mk
  > +if [ -f mods/${OPSYS}.bsd.own.mk.in ]; then
  > +	${SED} -e "${subst_pattern}" mods/${OPSYS}.bsd.own.mk.in > ${MK_DST}/bsd.own.mk

 Doing that (and all the cut and paste in the rest of the patch) really
 does not seem like the right approach.

 -- 
 David A. Holland
 dholland@netbsd.org

From: Thomas Cort <tcort@minix3.org>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: pkg/45045: pkgtools/bootstrap-mk-files minix support
Date: Mon, 13 Jun 2011 12:44:09 -0400

 >> -if [ -f mods/${OPSYS}.own.mk.in ]; then
 >> - =A0 ${SED} -e "${subst_pattern}" mods/${OPSYS}.own.mk.in > ${MK_DST}/b=
 sd.own.mk
 >> +if [ -f mods/${OPSYS}.bsd.own.mk.in ]; then
 >> + =A0 ${SED} -e "${subst_pattern}" mods/${OPSYS}.bsd.own.mk.in > ${MK_DS=
 T}/bsd.own.mk
 >
 > =A0Doing that (and all the cut and paste in the rest of the patch) really
 > =A0does not seem like the right approach.

 I don't quite understand your comment. Several OSes have 3 or 4 of their ow=
 n
 files under mods/. Can you elaborate on what the right approach might be?

 Also, I just noticed that the patch quoted above is a bug fix and
 probably should
 have it's own PR. Sorry. IRIX, OpenBSD, and Minix all have
 mods/${OPSYS}.bsd.own.mk.in while no OS has mods/${OPSYS}.own.mk.in.
 I'll create a PR for that in the next day or two.

From: Thomas Cort <tcort@minix3.org>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: pkg/45045: pkgtools/bootstrap-mk-files minix support
Date: Tue, 14 Jun 2011 10:33:32 -0400

 I moved the bootstrap.sh fix to it's own PR (pkg/45061) so that this PR would
 only deal with one problem. I've re-created the patch without the bootstrap.sh
 hunk and without the version number bump.

 Note, the Minix.bsd.own.mk.in file depends on the fix in pkg/45061.


 diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk
 new file mode 100644
 index 0000000..5316bf5
 --- /dev/null
 +++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk
 @@ -0,0 +1,525 @@
 +#	$NetBSD: Linux.bsd.lib.mk,v 1.3 2008/03/13 17:28:23 joerg Exp $
 +#	@(#)bsd.lib.mk	8.3 (Berkeley) 4/22/94
 +
 +.if !target(__initialized__)
 +__initialized__:
 +.if exists(${.CURDIR}/../Makefile.inc)
 +.include "${.CURDIR}/../Makefile.inc"
 +.endif
 +.include <bsd.own.mk>
 +.include <bsd.obj.mk>
 +.include <bsd.depall.mk>
 +.MAIN:		all
 +.endif
 +
 +.PHONY:		checkver cleanlib libinstall
 +realinstall:	checkver libinstall
 +clean cleandir: cleanlib
 +
 +.if exists(${SHLIB_VERSION_FILE})
 +SHLIB_MAJOR != . ${SHLIB_VERSION_FILE} ; echo $$major
 +SHLIB_MINOR != . ${SHLIB_VERSION_FILE} ; echo $$minor
 +SHLIB_TEENY != . ${SHLIB_VERSION_FILE} ; echo $$teeny
 +
 +# Check for higher installed library versions.
 +.if !defined(NOCHECKVER) && !defined(NOCHECKVER_${LIB}) && \
 +	exists(${BSDSRCDIR}/lib/checkver)
 +checkver:
 +	@(cd ${.CURDIR} && \
 +		sh ${BSDSRCDIR}/lib/checkver -v ${SHLIB_VERSION_FILE} \
 +		    -d ${DESTDIR}${LIBDIR} ${LIB})
 +.endif
 +.endif
 +
 +.if !target(checkver)
 +checkver:
 +.endif
 +
 +print-shlib-major:
 +.if defined(SHLIB_MAJOR)
 +	@echo ${SHLIB_MAJOR}
 +.else
 +	@false
 +.endif
 +
 +print-shlib-minor:
 +.if defined(SHLIB_MINOR)
 +	@echo ${SHLIB_MINOR}
 +.else
 +	@false
 +.endif
 +
 +print-shlib-teeny:
 +.if defined(SHLIB_TEENY)
 +	@echo ${SHLIB_TEENY}
 +.else
 +	@false
 +.endif
 +
 +.if defined(SHLIB_MAJOR) && !empty(SHLIB_MAJOR)
 +.if defined(SHLIB_MINOR) && !empty(SHLIB_MINOR)
 +.if defined(SHLIB_TEENY) && !empty(SHLIB_TEENY)
 +SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}.${SHLIB_TEENY}
 +.else
 +SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}
 +.endif
 +.else
 +SHLIB_FULLVERSION=${SHLIB_MAJOR}
 +.endif
 +.endif
 +
 +# add additional suffixes not exported.
 +# .po is used for profiling object files.
 +# .so is used for PIC object files.
 +.SUFFIXES: .out .a .ln .so .po .o .s .S .c .cc .C .m .F .f .r .y .l .cl .p .h
 +.SUFFIXES: .sh .m4 .m
 +
 +
 +# Set PICFLAGS to cc flags for producing position-independent code,
 +# if not already set.  Includes -DPIC, if required.
 +
 +# Data-driven table using make variables to control how shared libraries
 +# are built for different platforms and object formats.
 +# OBJECT_FMT:		currently either "ELF" or "a.out", from <bsd.own.mk>
 +# SHLIB_SOVERSION:	version number to be compiled into a shared library
 +#			via -soname. Usualy ${SHLIB_MAJOR} on ELF.
 +#			NetBSD/pmax used to use ${SHLIB_MAJOR}[.${SHLIB_MINOR}
 +#			[.${SHLIB_TEENY}]]
 +# SHLIB_SHFLAGS:	Flags to tell ${LD} to emit shared library.
 +#			with ELF, also set shared-lib version for ld.so.
 +# SHLIB_LDSTARTFILE:	support .o file, call C++ file-level constructors
 +# SHLIB_LDENDFILE:	support .o file, call C++ file-level destructors
 +# FPICFLAGS:		flags for ${FC} to compile .[fF] files to .so objects.
 +# CPPICFLAGS:		flags for ${CPP} to preprocess .[sS] files for ${AS}
 +# CPICFLAGS:		flags for ${CC} to compile .[cC] files to .so objects.
 +# CAPICFLAGS		flags for {$CC} to compiling .[Ss] files
 +#		 	(usually just ${CPPPICFLAGS} ${CPICFLAGS})
 +# APICFLAGS:		flags for ${AS} to assemble .[sS] to .so objects.
 +
 +.if ${MACHINE_ARCH} == "alpha"
 +		# Alpha-specific shared library flags
 +FPICFLAGS ?= -fPIC
 +CPICFLAGS ?= -fPIC -DPIC
 +CPPPICFLAGS?= -DPIC 
 +CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
 +APICFLAGS ?=
 +.elif ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb"
 +		# mips-specific shared library flags
 +
 +# On mips, all libs are compiled with ABIcalls, not just sharedlibs.
 +MKPICLIB= no
 +
 +# so turn shlib PIC flags on for ${AS}.
 +AINC+=-DABICALLS
 +AFLAGS+= -fPIC
 +AS+=	-KPIC
 +
 +.elif ${MACHINE_ARCH} == "vax" && ${OBJECT_FMT} == "ELF"
 +# On the VAX, all object are PIC by default, not just sharedlibs.
 +MKPICLIB= no
 +
 +.elif (${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64") && \
 +       ${OBJECT_FMT} == "ELF"
 +
 +FPICFLAGS ?= -fPIC
 +CPICFLAGS ?= -fPIC -DPIC
 +CPPPICFLAGS?= -DPIC 
 +CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
 +APICFLAGS ?= -KPIC
 +
 +.else
 +
 +# Platform-independent flags for NetBSD a.out shared libraries (and PowerPC)
 +SHLIB_LDSTARTFILE=
 +SHLIB_LDENDFILE=
 +SHLIB_SOVERSION=${SHLIB_FULLVERSION}
 +SHLIB_SHFLAGS=
 +FPICFLAGS ?= -fPIC
 +CPICFLAGS?= -fPIC -DPIC
 +CPPPICFLAGS?= -DPIC 
 +CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
 +APICFLAGS?= -k
 +
 +.endif
 +
 +# Minix does not support shared libraries yet
 +MKPICLIB?= no
 +
 +# Platform-independent linker flags for ELF shared libraries
 +.if ${OBJECT_FMT} == "ELF"
 +SHLIB_SOVERSION=	${SHLIB_MAJOR}
 +SHLIB_SHFLAGS=		-soname lib${LIB}.so.${SHLIB_SOVERSION}
 +SHLIB_LDSTARTFILE?=	${DESTDIR}/usr/lib/crtbeginS.o
 +SHLIB_LDENDFILE?=	${DESTDIR}/usr/lib/crtendS.o
 +.endif
 +
 +CFLAGS+=	${COPTS}
 +FFLAGS+=	${FOPTS}
 +
 +.c.o:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.c} ${.IMPSRC}
 +.else
 +	@echo ${COMPILE.c:Q} ${.IMPSRC}
 +	@${COMPILE.c} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.c.po:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.c:Q} -pg ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.c.so:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.c:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.c.ln:
 +	${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
 +
 +.cc.o .C.o:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.cc} ${.IMPSRC}
 +.else
 +	@echo ${COMPILE.cc:Q} ${.IMPSRC}
 +	@${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.cc.po .C.po:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.cc:Q} -pg ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.cc.so .C.so:
 +.if defined(COPTS) && !empty(COPTS:M*-g*)
 +	${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.cc:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.f.o:
 +.if defined(FOPTS) && !empty(FOPTS:M*-g*)
 +	${COMPILE.f} ${.IMPSRC}
 +.else
 +	@echo ${COMPILE.f:Q} ${.IMPSRC}
 +	@${COMPILE.f} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.f.po:
 +.if defined(FOPTS) && !empty(FOPTS:M*-g*)
 +	${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.f:Q} -pg ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.f.so:
 +.if defined(FOPTS) && !empty(FOPTS:M*-g*)
 +	${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.f:Q} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.f.ln:
 +	${ECHO} Skipping lint for Fortran libraries.
 +
 +.m.o:
 +.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
 +	${COMPILE.m} ${.IMPSRC}
 +.else
 +	@echo ${COMPILE.m:Q} ${.IMPSRC}
 +	@${COMPILE.m} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.m.po:
 +.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
 +	${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.m:Q} -pg ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.m.so:
 +.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
 +	${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +.else
 +	@echo ${COMPILE.m:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +.endif
 +
 +.S.o .s.o:
 +	@echo ${COMPILE.S:Q} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC}
 +	@${COMPILE.S} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +
 +.S.po .s.po:
 +	@echo ${COMPILE.S:Q} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.S} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +
 +.S.so .s.so:
 +	@echo ${COMPILE.S:Q} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
 +	@${COMPILE.S} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
 +	@${LD} -r ${.TARGET}.o -o ${.TARGET}
 +	@rm -f ${.TARGET}.o
 +
 +.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
 +	|| ${MKLINKLIB} != "no"
 +_LIBS=lib${LIB}.a
 +.else
 +_LIBS=
 +.endif
 +
 +OBJS+=${SRCS:N*.h:N*.sh:R:S/$/.o/g}
 +
 +.if ${MKPROFILE} != "no"
 +_LIBS+=lib${LIB}_p.a
 +POBJS+=${OBJS:.o=.po}
 +.endif
 +
 +.if ${MKPIC} != "no"
 +.if ${MKPICLIB} == "no"
 +SOLIB=lib${LIB}.a
 +.else
 +SOLIB=lib${LIB}_pic.a
 +_LIBS+=${SOLIB}
 +SOBJS+=${OBJS:.o=.so}
 +.endif
 +.if defined(SHLIB_FULLVERSION)
 +_LIBS+=lib${LIB}.so.${SHLIB_FULLVERSION}
 +.endif
 +.endif
 +
 +LOBJS+=${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
 +.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
 +_LIBS+=llib-l${LIB}.ln
 +.endif
 +
 +.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
 +	|| ${MKLINKLIB} != "no"
 +ALLOBJS=${OBJS} ${POBJS} ${SOBJS}
 +.else
 +ALLOBJS=${POBJS} ${SOBJS} 
 +.endif
 +.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
 +ALLOBJS+=${LOBJS}
 +.endif
 +.NOPATH: ${ALLOBJS} ${_LIBS}
 +
 +realall: ${SRCS} ${ALLOBJS:O} ${_LIBS}
 +
 +__archivebuild: .USE
 +	@rm -f ${.TARGET}
 +	${AR} cq ${.TARGET} ${.ALLSRC:M*o}
 +	${RANLIB} ${.TARGET}
 +
 +__archiveinstall: .USE
 +	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
 +	    -g ${LIBGRP} -m 600 ${.ALLSRC} ${.TARGET}
 +	${RANLIB} -t ${.TARGET}
 +	chmod ${LIBMODE} ${.TARGET}
 +
 +DPSRCS+=	${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c}
 +CLEANFILES+=	${DPSRCS}
 +.if defined(YHEADER)
 +CLEANFILES+=	${SRCS:M*.y:.y=.h}
 +.endif
 +
 +lib${LIB}.a:: ${OBJS} __archivebuild
 +	@echo building standard ${LIB} library
 +
 +lib${LIB}_p.a:: ${POBJS} __archivebuild
 +	@echo building profiled ${LIB} library
 +
 +lib${LIB}_pic.a:: ${SOBJS} __archivebuild
 +	@echo building shared object ${LIB} library
 +
 +lib${LIB}.so.${SHLIB_FULLVERSION}: ${SOLIB} ${DPADD} \
 +    ${SHLIB_LDSTARTFILE} ${SHLIB_LDENDFILE}
 +	@echo building shared ${LIB} library \(version ${SHLIB_FULLVERSION}\)
 +	@rm -f lib${LIB}.so.${SHLIB_FULLVERSION}
 +.if defined(DESTDIR)
 +	$(LD) -nostdlib -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
 +	    ${SHLIB_LDSTARTFILE} \
 +	    --whole-archive ${SOLIB} \
 +	    --no-whole-archive ${LDADD} \
 +	    -L${DESTDIR}${LIBDIR} -R${LIBDIR} \
 +	    ${SHLIB_LDENDFILE}
 +.else
 +	$(LD) -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
 +	    ${SHLIB_LDSTARTFILE} \
 +	    --whole-archive ${SOLIB} --no-whole-archive ${LDADD} \
 +	    ${SHLIB_LDENDFILE}
 +.endif
 +.if ${OBJECT_FMT} == "ELF"
 +	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.${SHLIB_MAJOR}.tmp
 +	mv -f lib${LIB}.so.${SHLIB_MAJOR}.tmp lib${LIB}.so.${SHLIB_MAJOR}
 +	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.tmp
 +	mv -f lib${LIB}.so.tmp lib${LIB}.so
 +.endif
 +
 +.if !empty(LOBJS)
 +LLIBS?=		-lc
 +llib-l${LIB}.ln: ${LOBJS}
 +	@echo building llib-l${LIB}.ln
 +	@rm -f llib-l${LIB}.ln
 +	@${LINT} -C${LIB} ${.ALLSRC} ${LLIBS}
 +.endif
 +
 +cleanlib:
 +	rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES}
 +	rm -f lib${LIB}.a ${OBJS}
 +	rm -f lib${LIB}_p.a ${POBJS}
 +	rm -f lib${LIB}_pic.a lib${LIB}.so.* lib${LIB}.so ${SOBJS}
 +	rm -f llib-l${LIB}.ln ${LOBJS}
 +
 +.if defined(SRCS)
 +afterdepend: .depend
 +	@(TMP=/tmp/_depend$$$$; \
 +	    sed -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.po \1.so \1.ln:/' \
 +	      < .depend > $$TMP; \
 +	    mv $$TMP .depend)
 +.endif
 +
 +.if !target(libinstall)
 +# Make sure it gets defined, in case MKPIC==no && MKLINKLIB==no
 +libinstall::
 +
 +.if ${MKLINKLIB} != "no"
 +libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.a
 +.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.a
 +.if !defined(UPDATE)
 +.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.a
 +.endif
 +
 +.if !defined(BUILD) && !make(all) && !make(lib${LIB}.a)
 +${DESTDIR}${LIBDIR}/lib${LIB}.a: .MADE
 +.endif
 +${DESTDIR}${LIBDIR}/lib${LIB}.a: lib${LIB}.a __archiveinstall
 +.endif
 +
 +.if ${MKPROFILE} != "no"
 +libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
 +.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
 +.if !defined(UPDATE)
 +.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
 +.endif
 +
 +.if !defined(BUILD) && !make(all) && !make(lib${LIB}_p.a)
 +${DESTDIR}${LIBDIR}/lib${LIB}_p.a: .MADE
 +.endif
 +${DESTDIR}${LIBDIR}/lib${LIB}_p.a: lib${LIB}_p.a __archiveinstall
 +.endif
 +
 +.if ${MKPIC} != "no" && ${MKPICINSTALL} != "no"
 +libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
 +.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
 +.if !defined(UPDATE)
 +.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
 +.endif
 +
 +.if !defined(BUILD) && !make(all) && !make(lib${LIB}_pic.a)
 +${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: .MADE
 +.endif
 +.if ${MKPICLIB} == "no"
 +${DESTDIR}${LIBDIR}/lib${LIB}_pic.a:
 +	rm -f ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
 +	ln -s lib${LIB}.a ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
 +.else
 +${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: lib${LIB}_pic.a __archiveinstall
 +.endif
 +.endif
 +
 +.if ${MKPIC} != "no" && defined(SHLIB_FULLVERSION)
 +libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
 +.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
 +.if !defined(UPDATE)
 +.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
 +.endif
 +
 +.if !defined(BUILD) && !make(all) && !make(lib${LIB}.so.${SHLIB_FULLVERSION})
 +${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: .MADE
 +.endif
 +${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: lib${LIB}.so.${SHLIB_FULLVERSION}
 +	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
 +	    -g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${.TARGET}
 +.if ${OBJECT_FMT} == "a.out" && !defined(DESTDIR)
 +	/sbin/ldconfig -m ${LIBDIR}
 +.endif
 +.if ${OBJECT_FMT} == "ELF"
 +	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
 +	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp
 +	mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp\
 +	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}
 +.if ${MKLINKLIB} != "no"
 +	ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
 +	    ${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp
 +	mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp\
 +	    ${DESTDIR}${LIBDIR}/lib${LIB}.so
 +.endif
 +.endif
 +.endif
 +
 +.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
 +libinstall:: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
 +.PRECIOUS: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
 +.if !defined(UPDATE)
 +.PHONY: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
 +.endif
 +
 +.if !defined(BUILD) && !make(all) && !make(llib-l${LIB}.ln)
 +${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: .MADE
 +.endif
 +${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: llib-l${LIB}.ln
 +	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
 +	    -g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${DESTDIR}${LINTLIBDIR}
 +.endif
 +.endif
 +
 +.include <bsd.man.mk>
 +.include <bsd.nls.mk>
 +.include <bsd.files.mk>
 +.include <bsd.inc.mk>
 +.include <bsd.links.mk>
 +.include <bsd.dep.mk>
 +.include <bsd.sys.mk>
 +
 +# Make sure all of the standard targets are defined, even if they do nothing.
 +lint regress:
 diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk
 new file mode 100644
 index 0000000..1d5a20a
 --- /dev/null
 +++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk
 @@ -0,0 +1,191 @@
 +#	$NetBSD: Linux.bsd.man.mk,v 1.7 2009/08/07 07:48:59 dsainty Exp $
 +#	@(#)bsd.man.mk	8.1 (Berkeley) 6/8/93
 +
 +.if !target(__initialized__)
 +__initialized__:
 +.if exists(${.CURDIR}/../Makefile.inc)
 +.include "${.CURDIR}/../Makefile.inc"
 +.endif
 +.include <bsd.own.mk>
 +.include <bsd.obj.mk>
 +.include <bsd.depall.mk>
 +.MAIN:		all
 +.endif
 +
 +.PHONY:		catinstall maninstall catpages manpages catlinks manlinks cleanman html installhtml cleanhtml
 +.if ${MKMAN} != "no"
 +realinstall:	${MANINSTALL}
 +.endif
 +cleandir: cleanman
 +
 +HTMLDIR?=	${DESTDIR}/usr/share/man
 +MANTARGET?=	cat
 +MANDOC?=	mandoc -Tascii
 +TBL?=		tbl
 +
 +.SUFFIXES: .1 .2 .3 .4 .5 .6 .7 .8 .9 \
 +	   .cat1 .cat2 .cat3 .cat4 .cat5 .cat6 .cat7 .cat8 .cat9 \
 +	   .html1 .html2 .html3 .html4 .html5 .html6 .html7 .html8 .html9
 +
 +.9.cat9 .8.cat8 .7.cat7 .6.cat6 .5.cat5 .4.cat4 .3.cat3 .2.cat2 .1.cat1:
 +.if !defined(USETBL)
 +	@echo "${MANDOC} ${.IMPSRC} > ${.TARGET}"
 +	${MANDOC} ${.IMPSRC} > ${.TARGET} || \
 +	 (rm -f ${.TARGET}; false)
 +.else
 +	@echo "${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET}"
 +	@${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET} || \
 +	 (rm -f ${.TARGET}; false)
 +.endif
 +
 +.9.html9 .8.html8 .7.html7 .6.html6 .5.html5 .4.html4 .3.html3 .2.html2 .1.html1:
 +.if !defined(USETBL)
 +	@echo "${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET}"
 +	@${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET} || \
 +	 (rm -f ${.TARGET}; false)
 +.else
 +	@echo "${TBL} ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET}"
 +	@cat ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET} || \
 +	 (rm -f ${.TARGET}; false)
 +.endif
 +
 +.if defined(MAN) && !empty(MAN)
 +MANPAGES=	${MAN}
 +CATPAGES=	${MANPAGES:C/(.*).([1-9])/\1.cat\2/}
 +.NOPATH:	${CATPAGES}
 +.if !defined(NOHTML)
 +HTMLPAGES=	${MANPAGES:C/(.*).([1-9])/\1.html\2/}
 +.endif
 +.endif
 +
 +MINSTALL=	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} \
 +		    -o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
 +
 +.if defined(MANZ)
 +# chown and chmod are done afterward automatically
 +MCOMPRESS=	gzip -cf
 +MCOMPRESSSUFFIX= .gz
 +.endif
 +
 +catinstall: catlinks
 +maninstall: manlinks
 +
 +__installpage: .USE
 +.if defined(MCOMPRESS) && !empty(MCOMPRESS)
 +	@rm -f ${.TARGET}
 +	${MCOMPRESS} ${.ALLSRC} > ${.TARGET}
 +	@chown ${MANOWN}:${MANGRP} ${.TARGET}
 +	@chmod ${MANMODE} ${.TARGET}
 +.else
 +	@cmp -s ${.ALLSRC} ${.TARGET} > /dev/null 2>&1 || \
 +	    (echo "${MINSTALL} ${.ALLSRC} ${.TARGET}" && \
 +	     ${MINSTALL} ${.ALLSRC} ${.TARGET})
 +.endif
 +
 +# Rules for cat'ed man page installation
 +.if defined(CATPAGES) && !empty(CATPAGES) && ${MKCATPAGES} != "no"
 +catpages:: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
 +.PRECIOUS: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
 +.if !defined(UPDATE)
 +.PHONY: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
 +.endif
 +
 +.   for P in ${CATPAGES:O:u}
 +.	if !defined(BUILD) && !make(all) && !make(${P})
 +${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: .MADE
 +.	endif
 +${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: ${P} __installpage
 +.   endfor
 +.else
 +catpages::
 +.endif
 +
 +# Rules for source page installation
 +.if defined(MANPAGES) && !empty(MANPAGES)
 +manpages:: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
 +.PRECIOUS: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
 +.if !defined(UPDATE)
 +.PHONY: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
 +.endif
 +
 +.   for P in ${MANPAGES:O:u}
 +${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}: ${P} __installpage
 +.   endfor
 +.else
 +manpages::
 +.endif
 +
 +.if ${MKCATPAGES} != "no"
 +catlinks: catpages
 +.if defined(MLINKS) && !empty(MLINKS)
 +	@set ${MLINKS}; \
 +	while test $$# -ge 2; do \
 +		name=$$1; \
 +		shift; \
 +		dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
 +		l=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
 +		name=$$1; \
 +		shift; \
 +		dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
 +		t=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
 +		if test $$l -nt $$t -o ! -f $$t; then \
 +			echo $$t -\> $$l; \
 +			ln -f $$l $$t; \
 +		fi; \
 +	done
 +.endif
 +.else
 +catlinks:
 +.endif
 +
 +manlinks: manpages
 +.if defined(MLINKS) && !empty(MLINKS)
 +	@set ${MLINKS}; \
 +	while test $$# -ge 2; do \
 +		name=$$1; \
 +		shift; \
 +		dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
 +		l=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
 +		name=$$1; \
 +		shift; \
 +		dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
 +		t=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
 +		if test $$l -nt $$t -o ! -f $$t; then \
 +			echo $$t -\> $$l; \
 +			ln -f $$l $$t; \
 +		fi; \
 +	done
 +.endif
 +
 +# Html rules
 +html: ${HTMLPAGES}
 +
 +.if defined(HTMLPAGES) && !empty(HTMLPAGES)
 +.for P in ${HTMLPAGES:O:u} 
 +${HTMLDIR}/${P:T:E}/${P:T:R}.html: ${P}
 +	${MINSTALL} ${.ALLSRC} ${.TARGET}
 +.endfor
 +.endif
 +installhtml: ${HTMLPAGES:@P@${HTMLDIR}/${P:T:E}/${P:T:R}.html@}
 +
 +cleanhtml:
 +.if defined(HTMLPAGES) && !empty(HTMLPAGES)
 +	rm -f ${HTMLPAGES}
 +.endif
 +
 +
 +.if defined(CATPAGES)
 +.if ${MKCATPAGES} != "no" && ${MKMAN} != "no"
 +realall: ${CATPAGES}
 +.else
 +realall:
 +.endif
 +
 +cleanman:
 +	rm -f ${CATPAGES}
 +.else
 +cleanman:
 +.endif
 +
 +# Make sure all of the standard targets are defined, even if they do nothing.
 +clean depend includes lint regress tags:
 diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in
 new file mode 100644
 index 0000000..f978762
 --- /dev/null
 +++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in
 @@ -0,0 +1,286 @@
 +#	$NetBSD: bsd.own.mk.in,v 1.2 2007/08/25 09:33:57 rillig Exp $
 +
 +.if !defined(_BSD_OWN_MK_)
 +_BSD_OWN_MK_=1
 +
 +.if defined(MAKECONF) && exists(${MAKECONF})
 +.include "${MAKECONF}"
 +.elif exists(@SYSCONFDIR@/mk.conf)
 +.include "@SYSCONFDIR@/mk.conf"
 +.elif exists(/etc/mk.conf)
 +.include "/etc/mk.conf"
 +.endif
 +
 +# Defining `SKEY' causes support for S/key authentication to be compiled in.
 +SKEY=		yes
 +
 +# where the system object and source trees are kept; can be configurable
 +# by the user in case they want them in ~/foosrc and ~/fooobj, for example
 +BSDSRCDIR?=	/usr/src
 +BSDOBJDIR?=	/usr/obj
 +
 +BINGRP?=	@ROOT_GROUP@
 +BINOWN?=	@ROOT_USER@
 +BINMODE?=	555
 +NONBINMODE?=	444
 +
 +# Define MANZ to have the man pages compressed (gzip)
 +#MANZ=		1
 +
 +MANDIR?=	/usr/share/man
 +MANGRP?=	@ROOT_GROUP@
 +MANOWN?=	@ROOT_USER@
 +MANMODE?=	${NONBINMODE}
 +MANINSTALL?=	maninstall catinstall
 +
 +INFODIR?=	/usr/share/info
 +INFOGRP?=	@ROOT_GROUP@
 +INFOOWN?=	@ROOT_USER@
 +INFOMODE?=	${NONBINMODE}
 +
 +LIBDIR?=	/usr/lib
 +LINTLIBDIR?=	/usr/libdata/lint
 +LIBGRP?=	${BINGRP}
 +LIBOWN?=	${BINOWN}
 +LIBMODE?=	${NONBINMODE}
 +
 +DOCDIR?=	/usr/share/doc
 +HTMLDOCDIR?=	/usr/share/doc/html
 +DOCGRP?=	@ROOT_GROUP@
 +DOCOWN?=	@ROOT_USER@
 +DOCMODE?=	${NONBINMODE}
 +
 +NLSDIR?=	/usr/share/nls
 +NLSGRP?=	@ROOT_GROUP@
 +NLSOWN?=	@ROOT_USER@
 +NLSMODE?=	${NONBINMODE}
 +
 +KMODDIR?=	/usr/lkm
 +KMODGRP?=	@ROOT_GROUP@
 +KMODOWN?=	@ROOT_USER@
 +KMODMODE?=	${NONBINMODE}
 +
 +LOCALEDIR?=	/usr/share/locale
 +LOCALEGRP?=	@ROOT_GROUP@
 +LOCALEOWN?=	@ROOT_USER@
 +LOCALEMODE?=	${NONBINMODE}
 +
 +COPY?=		-c
 +.if defined(UPDATE)
 +PRESERVE?=	-p
 +.else
 +PRESERVE?=
 +.endif
 +.if defined(UNPRIVILEGED)
 +INSTPRIV?=	-U
 +.endif
 +STRIPFLAG?=	-s
 +
 +# Define SYS_INCLUDE to indicate whether you want symbolic links to the system
 +# source (``symlinks''), or a separate copy (``copies''); (latter useful
 +# in environments where it's not possible to keep /sys publicly readable)
 +#SYS_INCLUDE= 	symlinks
 +
 +# The sh3 port is incomplete.
 +.if ${MACHINE_ARCH} == "sh3eb" || ${MACHINE_ARCH} == "sh3el"
 +NOLINT=1
 +NOPROFILE=1
 +OBJECT_FMT?=COFF
 +NOPIC?=1
 +.endif
 +
 +# The sparc64 port is incomplete.
 +# Profiling and linting is also off on the x86_64 port at the moment.
 +.if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "x86_64"
 +NOPROFILE=1
 +NOLINT=1
 +.endif
 +
 +# The m68000 port is incomplete.
 +.if ${MACHINE_ARCH} == "m68000"
 +NOLINT=1
 +NOPROFILE=1
 +NOPIC?=1
 +.endif
 +
 +# Data-driven table using make variables to control how 
 +# toolchain-dependent targets and shared libraries are built
 +# for different platforms and object formats.
 +# OBJECT_FMT:		currently either "ELF" or "a.out".
 +# SHLIB_TYPE:		"ELF" or "a.out" or "" to force static libraries.
 +#
 +OBJECT_FMT?=a.out
 +
 +.if ${CC:M*gcc*} != ""
 +.if ${MACHINE_ARCH} == "x86_64"
 +CFLAGS+=-Wno-format -fno-builtin
 +.endif
 +.endif
 +
 +# Location of the file that contains the major and minor numbers of the
 +# version of a shared library.  If this file exists a shared library
 +# will be built by <bsd.lib.mk>.
 +SHLIB_VERSION_FILE?= ${.CURDIR}/shlib_version
 +
 +# GNU sources and packages sometimes see architecture names differently.
 +# This table maps an architecture name to its GNU counterpart.
 +# Use as so:  ${GNU_ARCH.${TARGET_ARCH}} or ${MACHINE_GNU_ARCH}
 +.ifndef MACHINE_GNU_ARCH
 +GNU_ARCH.alpha=alpha
 +GNU_ARCH.arm26=arm
 +GNU_ARCH.arm32=arm
 +GNU_ARCH.arm=arm
 +GNU_ARCH.i386=i386
 +GNU_ARCH.m68k=m68k
 +GNU_ARCH.mipseb=mipseb
 +GNU_ARCH.mipsel=mipsel
 +GNU_ARCH.ns32k=ns32k
 +GNU_ARCH.powerpc=powerpc
 +GNU_ARCH.sh3eb=sh
 +GNU_ARCH.sh3el=sh
 +GNU_ARCH.sparc=sparc
 +GNU_ARCH.sparc64=sparc64
 +GNU_ARCH.vax=vax
 +MACHINE_GNU_ARCH=${GNU_ARCH.${MACHINE_ARCH}}
 +.endif
 +
 +# CPU model, derived from MACHINE_ARCH
 +MACHINE_CPU=	${MACHINE_ARCH:C/mipse[bl]/mips/:S/arm26/arm/:S/arm32/arm/:C/sh3e[bl]/sh3/:S/m68000/m68k/}
 +
 +TARGETS+=	all clean cleandir depend dependall includes \
 +		install lint obj regress tags html installhtml cleanhtml
 +.PHONY:		all clean cleandir depend dependall distclean includes \
 +		install lint obj regress tags beforedepend afterdepend \
 +		beforeinstall afterinstall realinstall realdepend realall \
 +		html installhtml cheanhtml
 +
 +# set NEED_OWN_INSTALL_TARGET, if it's not already set, to yes
 +# this is used by bsd.pkg.mk to stop "install" being defined
 +NEED_OWN_INSTALL_TARGET?=	yes
 +
 +.if ${NEED_OWN_INSTALL_TARGET} == "yes"
 +.if !target(install)
 +install:	.NOTMAIN beforeinstall subdir-install realinstall afterinstall
 +beforeinstall:	.NOTMAIN
 +subdir-install:	.NOTMAIN beforeinstall
 +realinstall:	.NOTMAIN beforeinstall
 +afterinstall:	.NOTMAIN subdir-install realinstall
 +.endif
 +all:		.NOTMAIN realall subdir-all
 +subdir-all:	.NOTMAIN
 +realall:	.NOTMAIN
 +depend:		.NOTMAIN realdepend subdir-depend
 +subdir-depend:	.NOTMAIN
 +realdepend:	.NOTMAIN
 +distclean:	.NOTMAIN cleandir
 +.endif
 +
 +PRINTOBJDIR=	printf "xxx: .MAKE\n\t@echo \$${.OBJDIR}\n" | ${MAKE} -B -s -f-
 +
 +# Define MKxxx variables (which are either yes or no) for users
 +# to set in /etc/mk.conf and override on the make commandline.
 +# These should be tested with `== "no"' or `!= "no"'.
 +# The NOxxx variables should only be used by Makefiles.
 +#
 +
 +MKCATPAGES?=yes
 +
 +.if defined(NODOC)
 +MKDOC=no
 +#.elif !defined(MKDOC)
 +#MKDOC=yes
 +.else
 +MKDOC?=yes
 +.endif
 +
 +MKINFO?=yes
 +
 +.if defined(NOLINKLIB)
 +MKLINKLIB=no
 +.else
 +MKLINKLIB?=yes
 +.endif
 +.if ${MKLINKLIB} == "no"
 +MKPICINSTALL=no
 +MKPROFILE=no
 +.endif
 +
 +MKLINT?=no
 +
 +.if defined(NOMAN)
 +MKMAN=no
 +.else
 +MKMAN?=yes
 +.endif
 +.if ${MKMAN} == "no"
 +MKCATPAGES=no
 +.endif
 +
 +.if defined(NONLS)
 +MKNLS=no
 +.else
 +MKNLS?=yes
 +.endif
 +
 +#
 +# MKOBJDIRS controls whether object dirs are created during "make build".
 +# MKOBJ controls whether the "make obj" rule does anything.
 +#
 +.if defined(NOOBJ)
 +MKOBJ=no
 +MKOBJDIRS=no
 +.else
 +MKOBJ?=yes
 +MKOBJDIRS?=no
 +.endif
 +
 +.if defined(NOPIC)
 +MKPIC=no
 +.else
 +MKPIC?=yes
 +.endif
 +
 +.if defined(NOPICINSTALL)
 +MKPICINSTALL=no
 +.else
 +MKPICINSTALL?=yes
 +.endif
 +
 +.if defined(NOPROFILE)
 +MKPROFILE=no
 +.else
 +MKPROFILE?=yes
 +.endif
 +
 +.if defined(NOSHARE)
 +MKSHARE=no
 +.else
 +MKSHARE?=yes
 +.endif
 +.if ${MKSHARE} == "no"
 +MKCATPAGES=no
 +MKDOC=no
 +MKINFO=no
 +MKMAN=no
 +MKNLS=no
 +.endif
 +
 +.if defined(NOCRYPTO)
 +MKCRYPTO=no
 +.else
 +MKCRYPTO?=yes
 +.endif
 +
 +MKCRYPTO_IDEA?=no
 +
 +MKCRYPTO_RC5?=no
 +
 +.if defined(NOKERBEROS) || (${MKCRYPTO} == "no")
 +MKKERBEROS=no
 +.else
 +MKKERBEROS?=yes
 +.endif
 +
 +MKSOFTFLOAT?=no
 +
 +.endif		# _BSD_OWN_MK_
 diff --git a/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk b/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk
 new file mode 100644
 index 0000000..e99fd80
 --- /dev/null
 +++ b/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk
 @@ -0,0 +1,200 @@
 +#	$NetBSD: Linux.sys.mk,v 1.2 2009/02/19 00:51:12 abs Exp $
 +#	NetBSD: sys.mk,v 1.58 2000/08/22 17:38:49 bjh21 Exp 
 +#	@(#)sys.mk	8.2 (Berkeley) 3/21/94
 +
 +unix?=		We run Unix.
 +OS?=		Minix
 +
 +# At least Ubuntu 8.1 sets __attribute__((warn_unused_result)) on fwrite()
 +# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509
 +.if !defined(NOGCCERROR)
 +CFLAGS+= -Wno-error
 +.endif
 +
 +.SUFFIXES: .out .a .ln .o .s .S .c .cc .cpp .cxx .C .F .f .r .y .l .cl .p .h
 +.SUFFIXES: .sh .m4
 +  
 +.LIBS:		.a
 +
 +AR?=		ar
 +ARFLAGS?=	rl
 +RANLIB?=	ranlib
 +
 +AS?=		gas
 +AFLAGS?=
 +COMPILE.s?=	${CC} ${AFLAGS} -c
 +LINK.s?=	${CC} ${AFLAGS} ${LDFLAGS}
 +COMPILE.S?=	${CC} ${AFLAGS} ${CPPFLAGS} -c -traditional-cpp
 +LINK.S?=	${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +
 +CC?=		gcc
 +DBG?=
 +CFLAGS?=	${DBG}
 +COMPILE.c?=	${CC} ${CFLAGS} ${CPPFLAGS} -c
 +LINK.c?=	${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +
 +CXX?=		g++
 +CXXFLAGS?=	${CFLAGS}
 +COMPILE.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
 +LINK.cc?=	${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +
 +OBJC?=		${CC}
 +OBJCFLAGS?=	${CFLAGS}
 +COMPILE.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c
 +LINK.m?=	${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +
 +CPP?=		cpp
 +NOLINT=		1
 +CPPFLAGS?=
 +
 +FC?=		f77
 +FFLAGS?=	-O
 +RFLAGS?=
 +COMPILE.f?=	${FC} ${FFLAGS} -c
 +LINK.f?=	${FC} ${FFLAGS} ${LDFLAGS}
 +COMPILE.F?=	${FC} ${FFLAGS} ${CPPFLAGS} -c
 +LINK.F?=	${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +COMPILE.r?=	${FC} ${FFLAGS} ${RFLAGS} -c
 +LINK.r?=	${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
 +
 +INSTALL?=	install
 +
 +LEX?=		lex
 +LFLAGS?=
 +LEX.l?=		${LEX} ${LFLAGS}
 +
 +LD?=		ld
 +LDFLAGS?=
 +
 +LINT?=		lint
 +LINTFLAGS?=	-chapbxzF
 +
 +LORDER?=	echo
 +
 +MAKE?=		make
 +
 +NM?=		nm
 +
 +PC?=		pc
 +PFLAGS?=
 +COMPILE.p?=	${PC} ${PFLAGS} ${CPPFLAGS} -c
 +LINK.p?=	${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
 +
 +SHELL?=		sh
 +
 +SIZE?=		size
 +
 +TSORT?= 	tsort
 +
 +YACC?=		yacc
 +YFLAGS?=
 +YACC.y?=	${YACC} ${YFLAGS}
 +
 +# C
 +.c:
 +	${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.c.o:
 +	${COMPILE.c} ${.IMPSRC}
 +.c.a:
 +	${COMPILE.c} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +.c.ln:
 +	${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
 +
 +# C++
 +.cc .cpp .cxx .C:
 +	${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.cc.o .cpp.o .cxx.o .C.o:
 +	${COMPILE.cc} ${.IMPSRC}
 +.cc.a .cpp.a .cxx.a .C.a:
 +	${COMPILE.cc} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +# Fortran/Ratfor
 +.f:
 +	${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.f.o:
 +	${COMPILE.f} ${.IMPSRC}
 +.f.a:
 +	${COMPILE.f} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +.F:
 +	${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.F.o:
 +	${COMPILE.F} ${.IMPSRC}
 +.F.a:
 +	${COMPILE.F} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +.r:
 +	${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.r.o:
 +	${COMPILE.r} ${.IMPSRC}
 +.r.a:
 +	${COMPILE.r} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +# Pascal
 +.p:
 +	${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.p.o:
 +	${COMPILE.p} ${.IMPSRC}
 +.p.a:
 +	${COMPILE.p} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +# Assembly
 +.s:
 +	${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.s.o:
 +	${COMPILE.s} ${.IMPSRC}
 +.s.a:
 +	${COMPILE.s} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +.S:
 +	${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
 +.S.o:
 +	${COMPILE.S} ${.IMPSRC}
 +.S.a:
 +	${COMPILE.S} ${.IMPSRC}
 +	${AR} ${ARFLAGS} $@ $*.o
 +	rm -f $*.o
 +
 +# Lex
 +.l:
 +	${LEX.l} ${.IMPSRC}
 +	${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
 +	rm -f lex.yy.c
 +.l.c:
 +	${LEX.l} ${.IMPSRC}
 +	mv lex.yy.c ${.TARGET}
 +.l.o:
 +	${LEX.l} ${.IMPSRC}
 +	${COMPILE.c} -o ${.TARGET} lex.yy.c 
 +	rm -f lex.yy.c
 +
 +# Yacc
 +.y:
 +	${YACC.y} ${.IMPSRC}
 +	${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
 +	rm -f y.tab.c
 +.y.c:
 +	${YACC.y} ${.IMPSRC}
 +	mv y.tab.c ${.TARGET}
 +.y.o:
 +	${YACC.y} ${.IMPSRC}
 +	${COMPILE.c} -o ${.TARGET} y.tab.c
 +	rm -f y.tab.c
 +
 +# Shell
 +.sh:
 +	rm -f ${.TARGET}
 +	cp ${.IMPSRC} ${.TARGET}

From: David Holland <dholland-pbugs@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/45045: pkgtools/bootstrap-mk-files minix support
Date: Mon, 8 Aug 2011 03:55:01 +0000

 On Mon, Jun 13, 2011 at 04:45:02PM +0000, Thomas Cort wrote:
  >  > Doing that (and all the cut and paste in the rest of the patch) really
  >  > does not seem like the right approach.
  >  
  > I don't quite understand your comment. Several OSes have 3 or 4 of
  > their own files under mods/. Can you elaborate on what the right
  > approach might be?

 Well, I dunno. Apparently cutting and pasting those files and making
 minor changes is standard practice here, but it seems like a horrible
 maintenance nightmare.

 however, since it is apparently current practice, that's our problem
 and not really your problem...

 -- 
 David A. Holland
 dholland@netbsd.org

From: "Thomas Cort" <tcort@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45045 CVS commit: pkgsrc
Date: Sun, 6 Nov 2011 21:01:30 +0000

 Module Name:	pkgsrc
 Committed By:	tcort
 Date:		Sun Nov  6 21:01:30 UTC 2011

 Modified Files:
 	pkgsrc/doc: CHANGES-2011
 	pkgsrc/pkgtools/bootstrap-mk-files: Makefile
 Added Files:
 	pkgsrc/pkgtools/bootstrap-mk-files/files/mods: Minix.bsd.lib.mk
 	    Minix.bsd.man.mk Minix.bsd.own.mk.in Minix.sys.mk

 Log Message:
 Add Minix specific Makefiles to bootstrap-mk-files. PR pkg/45045


 To generate a diff of this commit:
 cvs rdiff -u -r1.2784 -r1.2785 pkgsrc/doc/CHANGES-2011
 cvs rdiff -u -r1.26 -r1.27 pkgsrc/pkgtools/bootstrap-mk-files/Makefile
 cvs rdiff -u -r0 -r1.1 \
     pkgsrc/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.lib.mk \
     pkgsrc/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.man.mk \
     pkgsrc/pkgtools/bootstrap-mk-files/files/mods/Minix.bsd.own.mk.in \
     pkgsrc/pkgtools/bootstrap-mk-files/files/mods/Minix.sys.mk

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: tcort@NetBSD.org
State-Changed-When: Sun, 06 Nov 2011 21:07:32 +0000
State-Changed-Why:
Committed

.






>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.