[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