[darwinbuild-changes] [278] trunk/darwinbuild/darwinmaster.sh

source_changes at macosforge.org source_changes at macosforge.org
Wed Oct 4 02:02:13 PDT 2006


Revision: 278
          http://trac.macosforge.org/projects/darwinbuild/changeset/278
Author:   kevin
Date:     2006-10-04 02:02:13 -0700 (Wed, 04 Oct 2006)

Log Message:
-----------
- default to fat roots and hybrid hfs+/ISO filesystem
- support thin roots with optional -arch argument

Modified Paths:
--------------
    trunk/darwinbuild/darwinmaster.sh

Modified: trunk/darwinbuild/darwinmaster.sh
===================================================================
--- trunk/darwinbuild/darwinmaster.sh	2005-09-22 06:23:48 UTC (rev 277)
+++ trunk/darwinbuild/darwinmaster.sh	2006-10-04 09:02:13 UTC (rev 278)
@@ -38,16 +38,31 @@
 # Felix Kronlage    <fkr at opendarwin.org>
 # Chuck Remes       <cremes at opendarwin.org>
 
-ARCH="$1"
-VOLNAME="$2"
-
-if [ "$ARCH" != "ppc" -a "$ARCH" != "i386" \
-	-o "$VOLNAME" == "" ]; then
+function PrintUsage() {
 	cat 1>&2 <<- EOB
-usage: $(basename $0) <arch> <volname>
+usage: $(basename "$0") [-arch=arch] <volname>
        arch = {ppc, i386}
 EOB
 	exit 1
+}
+
+for ARG in "$@"; do
+	if [ "$VOLNAME" == "" ]; then
+		if [ "${ARG/=*/}" == "-arch" ]; then
+			ARCH="${ARCH/*=/}"
+		elif [ "${ARG:0:1}" != "-" ]; then
+			VOLNAME="$ARG"
+		else
+			PrintUsage "$0"
+		fi
+	else
+		PrintUsage "$0"
+	fi
+done
+
+if [ "$ARCH" != "" -a "$ARCH" != "ppc" -a "$ARCH" != "i386" \
+	-o "$VOLNAME" == "" ]; then
+	PrintUsage "$0"
 fi
 
 PREFIX=/usr/local
@@ -74,6 +89,11 @@
 PKGDIR="$DARWIN_BUILDROOT/Packages"
 MKISOFS="/opt/local/bin/mkisofs"
 SIZE="650m"
+if [ ! -z "$ARCH" ]; then
+	ARCHSFX="_$ARCH"
+else
+	ARCHSFX=""
+fi
 
 export DARWINXREF_DB_FILE="$DARWIN_BUILDROOT/$XREFDB"
 
@@ -119,7 +139,9 @@
 ###
 ### Update thin packages
 ###
-"$DATADIR/thinPackages" "$ARCH"
+if [ ! -z "$ARCH" ]; then
+	"$DATADIR/thinPackages" "$ARCH"
+fi
 
 
 ###
@@ -154,7 +176,12 @@
 echo "Generating MKext ..."
 
 export TMPDIR="$DESTDIR/private/tmp"
-kextcache -a $ARCH -k -K "$DESTDIR/mach_kernel" -m "$DESTDIR/System/Library/Extensions.mkext" "$DESTDIR/System/Library/Extensions"
+if [ -z "$ARCH" ]; then
+	KEXTARCH="-a ppc -a i386"
+else
+	KEXTARCH="-a $ARCH"
+fi
+kextcache $KEXTARCH -k -K "$DESTDIR/mach_kernel" -m "$DESTDIR/System/Library/Extensions.mkext" "$DESTDIR/System/Library/Extensions"
 export -n TMPDIR
 
 ###
@@ -177,21 +204,21 @@
 ###
 ### Copy installation packages
 ###
-mkdir -p "$DESTDIR/System/Installation/BinaryDrivers_${ARCH}"
+mkdir -p "$DESTDIR/System/Installation/BinaryDrivers${ARCHSFX}"
 echo "Copying binary drivers ..."
-for X in $DARWIN_BUILDROOT/BinaryDrivers_${ARCH}/*-*.tar.bz2 ; do
-	Y="$DESTDIR"/System/Installation/BinaryDrivers_${ARCH}/$(basename $X)
+for X in $DARWIN_BUILDROOT/BinaryDrivers${ARCHSFX}/*-*.tar.bz2 ; do
+	Y="$DESTDIR"/System/Installation/BinaryDrivers${ARCHSFX}/$(basename $X)
 	if [ $X -nt $Y ]; then
 		cp $X $Y
 	fi
 done
 
 echo "Copying packages ..."
-mkdir -p "$DESTDIR"/System/Installation/Packages_${ARCH}
-for X in $DARWIN_BUILDROOT/Packages_${ARCH}/*-*.tar.bz2 ; do
+mkdir -p "$DESTDIR"/System/Installation/Packages${ARCHSFX}
+for X in $DARWIN_BUILDROOT/Packages${ARCHSFX}/*-*.tar.bz2 ; do
 	f=$(basename $X)
 	if [ "${f/-*/}" != "DarwinInstaller" ]; then
-	Y="$DESTDIR"/System/Installation/Packages_${ARCH}/$(basename $X)
+	Y="$DESTDIR"/System/Installation/Packages${ARCHSFX}/$(basename $X)
 	if [ $X -nt $Y ]; then
 		echo $f
 		cp $X $Y
@@ -220,7 +247,7 @@
                 -o "$CDR"
 
 
-elif [ "$ARCH" == "i386" ]; then
+elif [ "$ARCH" == "i386" -o -z "$ARCH" ]; then
 	###
 	### Create a bootable ISO filesystem
 	###

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/darwinbuild-changes/attachments/20061004/7f1273c6/attachment.html


More information about the darwinbuild-changes mailing list