[Vm-dev] [commit][3451] Install two scripts to run the new Cocoa builds.

commits at squeakvm.org commits at squeakvm.org
Fri Sep 25 22:22:13 UTC 2015


Revision: 3451
Author:   eliot
Date:     2015-09-25 15:22:12 -0700 (Fri, 25 Sep 2015)
Log Message:
-----------
Install two scripts to run the new Cocoa builds.

Added Paths:
-----------
    branches/Cog/build.macos32x86/squeak.cog.spur/makeiosvm
    branches/Cog/build.macos32x86/squeak.cog.spur/miosvm

Copied: branches/Cog/build.macos32x86/squeak.cog.spur/makeiosvm (from rev 3450, branches/Cog/build.macos32x86/squeak.cog.spur/makevm)
===================================================================
--- branches/Cog/build.macos32x86/squeak.cog.spur/makeiosvm	                        (rev 0)
+++ branches/Cog/build.macos32x86/squeak.cog.spur/makeiosvm	2015-09-25 22:22:12 UTC (rev 3451)
@@ -0,0 +1,159 @@
+#!/bin/bash
+# Build a "complete" Mac VM consisting of CoreVM/CoreMTVM + Plugins.
+# By default build the Deployment configuration into $APP (Squeak.app)
+IFS='	
+'
+BUILD_CONFIGURATION=Deployment
+NSD_BUILD_CONFIGURATION=Deployment
+XCD_BUILD_CONFIGURATION=Release
+APP=Squeak.app
+OBJDIR=Squeak.build/Objects-normal/i386
+VMAPP=".app"
+DEST="Squeak"
+VMXCP=SqueakCogSpur32x86
+SFP=SqueakFFIPrims
+KEEP=
+
+USAGE="usage: `basename $0` -[admskh?]"
+
+while getopts 'admskh?' opt $@; do
+	case $opt in
+	a)		BUILD_CONFIGURATION=Assert
+			NSD_BUILD_CONFIGURATION=Development
+			XCD_BUILD_CONFIGURATION=Debug
+			DEST=Assert;;
+	d)		BUILD_CONFIGURATION=Development
+			NSD_BUILD_CONFIGURATION=Development
+			XCD_BUILD_CONFIGURATION=Debug
+			DEST=Debug;;
+	m)		VMAPP="MT.app";
+			VMXCP=SqueakCogSpur32x86MT;
+			SFP=SqueakMTFFIPrims;;
+	s)		BUILD_CONFIGURATION=DeploymentSymbols
+			DEST=Fast;;
+	k)		KEEP=1;;
+	h|\?|*)	echo $USAGE
+			echo '	build the vm (defaults to a Deployment version)'
+			echo '  -a: compile Assert configuration in Assert.app for assert checks'
+			echo '  -d: compile Development configuration in Debug.app for debugging'
+			echo '  -m: compile the multi-threaded version of the target, e.g. FastMT.app instead of Fast.app'
+			echo '  -s: compile DeploymentSymbols configuration in Fast.app for partial debugging'
+			echo "  -k: keep (do not delete) the existing $APP prior to the build"
+			echo '	-h: display this help'
+			exit 0;;
+	esac
+done
+
+DEST="$DEST$VMAPP"
+if [ -z "$DEVELOPER_SDK_DIR" ]; then
+	DEVELOPER_SDK_DIR=/Developer/SDKs
+fi
+test -d "$DEVELOPER_SDK_DIR" || echo '$DEVELOPER_SDK_DIR' "$DEVELOPER_SDK_DIR" does not exist \(needed by $SFP project\)
+export DEVELOPER_SDK_DIR
+#if [ ! -d "$DEVELOPER_SDK_DIR/MacOSX10.5.sdk" ]; then
+#	if [ -d "$DEVELOPER_SDK_DIR/MacOSX10.4u.sdk" ]; then
+#		export SDKROOT="$DEVELOPER_SDK_DIR/MacOSX10.4u.sdk"
+#	fi
+#fi
+
+test "$KEEP" = 1 || rm -rf "$DEST"/* "$DEST"/.??*
+
+# Build CoreVM/CoreMTVM using xcode
+echo # maddeningly xcode has no equivalent of .FORCE and if you use an Xcode script to nuke this file the build fails
+echo rm \"build/$VMXCP.build/$BUILD_CONFIGURATION/$OBJDIR/version.o\"
+rm "build/$VMXCP.build/$BUILD_CONFIGURATION/$OBJDIR/version.o"
+echo $VMXCP xcodebuild -project $VMXCP.xcodeproj -configuration $BUILD_CONFIGURATION
+export TZ="`date +%Z`"
+xcodebuild -project $VMXCP.xcodeproj -configuration $BUILD_CONFIGURATION
+if [ -d "$DEST" ]; then
+	mv build/$BUILD_CONFIGURATION/$APP/* "$DEST"
+else
+	mv build/$BUILD_CONFIGURATION/$APP "$DEST"
+fi
+../../scripts/versionInfoPlist ../../platforms CoreVM.plist "$DEST/Contents/Info.plist"
+
+# Build the Float plugin
+echo
+echo FloatMathPlugin xcodebuild -project FloatMathPlugin/FloatMathPlugin.xcodeproj -configuration Release
+xcodebuild -project FloatMathPlugin/FloatMathPlugin.xcodeproj -configuration Release
+rm -rf "$DEST/Contents/Resources/FloatMathPlugin.bundle"
+cp -R FloatMathPlugin/build/Release/FloatMathPlugin.bundle "$DEST/Contents/Resources"
+
+# Build the FloatArray plugin
+echo
+echo FloatArrayPlugin xcodebuild -project FloatArrayPlugin/FloatArrayPlugin.xcodeproj -configuration Release
+xcodebuild -project FloatArrayPlugin/FloatArrayPlugin.xcodeproj -configuration Release
+rm -rf "$DEST/Contents/Resources/FloatArrayPlugin.bundle"
+cp -R FloatArrayPlugin/build/Release/FloatArrayPlugin.bundle "$DEST/Contents/Resources"
+
+# Build the Croquet plugin
+echo
+echo CroquetPlugin xcodebuild -project CroquetPlugin/CroquetPlugin.xcodeproj -configuration Release
+xcodebuild -project CroquetPlugin/CroquetPlugin.xcodeproj -configuration Release
+rm -rf "$DEST/Contents/Resources/CroquetPlugin.bundle"
+cp -R CroquetPlugin/build/Release/CroquetPlugin.bundle "$DEST/Contents/Resources"
+
+#Build the mpeg3 plugin
+echo
+echo Mpeg3Plugin xcodebuild -project Mpeg3Plugin/Mpeg3Plugin.xcodeproj -configuration $NSD_BUILD_CONFIGURATION
+xcodebuild -project Mpeg3Plugin/Mpeg3Plugin.xcodeproj -configuration $NSD_BUILD_CONFIGURATION
+cp -R Mpeg3Plugin/build/Release/Mpeg3Plugin.bundle mpeg3.app/Contents/Resources
+
+# Build the FFI plugin (New as of 27 March 2008)
+echo
+echo SqueakFFIPlugin xcodebuild -project $SFP/SqueakFFI.xcodeproj -configuration $NSD_BUILD_CONFIGURATION
+xcodebuild -project $SFP/SqueakFFI.xcodeproj -configuration $NSD_BUILD_CONFIGURATION
+rm -rf "$DEST/Contents/Resources/SqueakFFIPrims.bundle"
+cp -R $SFP/build/$NSD_BUILD_CONFIGURATION/SqueakFFIPrims.bundle "$DEST/Contents/Resources"
+
+# Build the SSL plugin (New as of 25 March 2013)
+echo
+echo SqueakSSL xcodebuild -project SqueakSSL/SqueakSSL.xcodeproj -configuration $XCD_BUILD_CONFIGURATION
+xcodebuild -project SqueakSSL/SqueakSSL.xcodeproj -configuration $XCD_BUILD_CONFIGURATION
+rm -rf "$DEST/Contents/Resources/SqueakSSL.bundle"
+cp -R SqueakSSL/build/$XCD_BUILD_CONFIGURATION/SqueakSSL.bundle "$DEST/Contents/Resources"
+
+# Build the BochsIA32Plugin
+# N.B. To build the plugin you also have to build the Bochs libraries in
+# ../bochsx86.  cd ../bochsx86. Run conf.COG & ../../processors/IA32/bochs/makeem.
+if test -f ../bochsx86/cpu/libcpu.a; then
+echo BochsIA32Plugin xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project BochsIA32Plugin/BochsIA32Plugin.xcodeproj
+xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project BochsIA32Plugin/BochsIA32Plugin.xcodeproj
+rm -rf "$DEST/Contents/Resources/BochsIA32Plugin.bundle"
+cp -R BochsIA32Plugin/build/$XCD_BUILD_CONFIGURATION/BochsIA32Plugin.bundle "$DEST/Contents/Resources"
+else
+echo "not building BochsIA32Plugin; support libraries unavailable"
+fi
+
+# Build the BochsX64Plugin
+# N.B. To build the plugin you also have to build the Bochs libraries in
+# ../bochsx64.  cd ../bochsx64. Run conf.COG & ../../processors/IA32/bochs/makeem.
+if test -f ../bochsx64/cpu/libcpu.a; then
+echo BochsX64Plugin xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project BochsX64Plugin/BochsX64Plugin.xcodeproj
+xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project BochsX64Plugin/BochsX64Plugin.xcodeproj
+rm -rf "$DEST/Contents/Resources/BochsX64Plugin.bundle"
+cp -R BochsX64Plugin/build/$XCD_BUILD_CONFIGURATION/BochsX64Plugin.bundle "$DEST/Contents/Resources"
+else
+echo "not building BochsX64Plugin; support libraries unavailable"
+fi
+
+# Build the GdbARMPlugin
+# N.B. To build the plugin you also have to build the gdb ARM sim libraries in
+# ../../processors/ARM/mac.
+if test -f ../../processors/ARM/mac/gdb-7.6/opcodes/libopcodes.a; then
+echo GdbARMPlugin xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project GdbARMPlugin/GdbARMPlugin.xcodeproj
+xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project GdbARMPlugin/GdbARMPlugin.xcodeproj
+rm -rf "$DEST/Contents/Resources/GdbARMPlugin.bundle"
+cp -R GdbARMPlugin/build/$XCD_BUILD_CONFIGURATION/GdbARMPlugin.bundle "$DEST/Contents/Resources"
+else
+echo "not building GdbARMPlugin; support libraries unavailable"
+fi
+
+# Build the UnixOSProcessPlugin
+echo UnixOSProcessPlugin xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project UnixOSProcessPlugin/UnixOSProcessPlugin.xcodeproj
+xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project UnixOSProcessPlugin/UnixOSProcessPlugin.xcodeproj
+rm -rf "$DEST/Contents/Resources/UnixOSProcessPlugin.bundle"
+cp -R UnixOSProcessPlugin/build/$XCD_BUILD_CONFIGURATION/UnixOSProcessPlugin.bundle "$DEST/Contents/Resources"
+
+# Clean out any .svn directories (result of copying) in the VM
+find "$DEST" -name .svn -exec rm -rf {} \;

Copied: branches/Cog/build.macos32x86/squeak.cog.spur/miosvm (from rev 3450, branches/Cog/build.macos32x86/squeak.cog.spur/mvm)
===================================================================
--- branches/Cog/build.macos32x86/squeak.cog.spur/miosvm	                        (rev 0)
+++ branches/Cog/build.macos32x86/squeak.cog.spur/miosvm	2015-09-25 22:22:12 UTC (rev 3451)
@@ -0,0 +1,44 @@
+#!/bin/sh
+D=
+A=
+F=
+DT=
+AT=
+FT=
+H=
+C=
+while [ -n "$1" ]; do
+	case $1 in
+	-c)	C=-c;; #-c == Core VM only
+#	-A)	D=LOGD;A=LOGA;F=LOGF;DT=LOGTD;AT=LOGTA;FT=LOGTF;;
+#	-AS)	D=LOGD;A=LOGA;F=LOGF;;
+	-A|-AS)	D=LOGD;A=LOGA;F=LOGF;;
+	-AT)	DT=LOGTD;AT=LOGTA;FT=LOGTF;;
+	-d)	D=LOGD;;
+	-dt)	DT=LOGTD;;
+	-a)	A=LOGA;;
+	-at)	AT=LOGTA;;
+	-f)	F=LOGF;;
+	-ft)	FT=LOGTF;;
+	-?|-h)	H=h
+	esac
+	shift
+done
+if [ -n "$H" -o -z "$D$A$F$DT$AT$FT" ]; then
+	echo usage: $0 -A \| -AS -AT \| -d -a -f -dt -at -ft
+	exit 1
+fi
+trap 'exit 2' HUP INT PIPE TERM
+test -n "$D" && (makeiosvm $C -d 2>&1 | tee $D;grep "BUILD .*ED" $D)
+test -n "$A" && (makeiosvm $C -a 2>&1 | tee $A;grep "BUILD .*ED" $A)
+test -n "$F" && (makeiosvm $C -s 2>&1 | tee $F;grep "BUILD .*ED" $F)
+test -n "$DT" && (makeiosvm $C -md 2>&1 | tee $DT;grep "BUILD .*ED" $DT)
+test -n "$AT" && (makeiosvm $C -ma 2>&1 | tee $AT;grep "BUILD .*ED" $AT)
+test -n "$FT" && (makeiosvm $C -ms 2>&1 | tee $FT;grep "BUILD .*ED" $FT)
+
+test -n "$D" && (echo $D;grep "BUILD .*ED" $D)
+test -n "$A" && (echo $A;grep "BUILD .*ED" $A)
+test -n "$F" && (echo $F;grep "BUILD .*ED" $F)
+test -n "$DT" && (echo $DT;grep "BUILD .*ED" $DT)
+test -n "$AT" && (echo $AT;grep "BUILD .*ED" $AT)
+test -n "$FT" && (echo $FT;grep "BUILD .*ED" $FT)



More information about the Vm-dev mailing list