pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/bootstrap On OS X, build a double-clickable Mac package.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/14d538c57c32
branches:  trunk
changeset: 529004:14d538c57c32
user:      schmonz <schmonz%pkgsrc.org@localhost>
date:      Tue May 22 17:48:32 2007 +0000

description:
On OS X, build a double-clickable Mac package.

diffstat:

 bootstrap/mkbinarykit |  53 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 45 insertions(+), 8 deletions(-)

diffs (73 lines):

diff -r b4cc57b02d71 -r 14d538c57c32 bootstrap/mkbinarykit
--- a/bootstrap/mkbinarykit     Tue May 22 17:43:33 2007 +0000
+++ b/bootstrap/mkbinarykit     Tue May 22 17:48:32 2007 +0000
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-# $NetBSD: mkbinarykit,v 1.17 2007/04/21 01:27:44 tnn Exp $
+# $NetBSD: mkbinarykit,v 1.18 2007/05/22 17:48:32 schmonz Exp $
 #
 # Make a binary bootstrap kit and place it in targetdir (or current
 # working directory if not specified). The mk.conf.example file is
@@ -8,6 +8,42 @@
 # by using --mkconf. Run this program from the pkgsrc/bootstrap
 # directory.
 
+mkbinarykit_macpkg()
+{
+       local macdestdir
+       macdestdir=${wrkdir}/macpkg-destdir
+       rm -rf ${macdestdir} || die "cleanup destdir"
+
+       mkdir -p ${macdestdir}${prefix} || die "mkdir destprefix"
+       rmdir ${macdestdir}${prefix} || die "rmdir destprefix"
+       cp -Rp ${prefix} ${macdestdir}${prefix} || die "copy prefix"
+       mkdir -p ${macdestdir}${pkgdbdir} || die "mkdir destdbdir"
+       rmdir ${macdestdir}${pkgdbdir} || die "rmdir destdbdir"
+       cp -Rp ${pkgdbdir} ${macdestdir}${pkgdbdir} || die "copy dbdir"
+
+       ${sedprog} -e "s|%WRKDIR%|${wrkdir}|g" -e "s|%TARGETDIR%|${targetdir}|g" < macpkg.pmproj.in > ${wrkdir}/macpkg.pmproj
+       /Developer/Tools/packagemaker -build -proj ${wrkdir}/macpkg.pmproj -p "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.pkg"
+       ls -dl "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.pkg"
+}
+
+mkbinarykit_tar()
+{
+       # in case tar was built by bootstrap
+       PATH="$prefix/bin:$PATH"; export PATH
+       [ ! -d $sysconfdir ] && mkdir -p $sysconfdir 
+       cp ${wrkdir}/mk.conf.example $mkfile &&                                         \
+       cd / && \
+       tar -hcf "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.tar" \
+               .$prefix .$pkgdbdir .$mkfile && \
+       ls -l "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.tar"
+}
+
+die()
+{
+       echo "error: can't $@" >&2
+       exit 1
+}
+
 usage="Usage: $0 "'
        [ --force ] [ --targetdir=<tar target dir> ] [ --mkconf=<target> ]
        [ --no-build ] [ --workdir=<work dir> ] [ bootstrap script arguments ]
@@ -141,10 +177,11 @@
 $strip "$prefix/"sbin/*
 
 echo "Making binary kit."
-PATH="$prefix/bin:$PATH"; export PATH # in case tar was built by bootstrap
-[ ! -d $sysconfdir ] && mkdir -p $sysconfdir 
-cp ${wrkdir}/mk.conf.example $mkfile &&                                                \
-cd / &&                                                                \
-tar -hcf "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.tar"  \
-                                       .$prefix .$pkgdbdir .$mkfile && \
-ls -l "$targetdir/bootstrap-pkgsrc-$opsys-$osrev-$ospro-$date.tar"
+case "$opsys" in
+Darwin)
+       mkbinarykit_macpkg
+       ;;
+*)
+       mkbinarykit_tar
+       ;;
+esac



Home | Main Index | Thread Index | Old Index