[Vm-dev] [commit][3585] Move the macos64x64 builds to the new gnu makefiles

commits at squeakvm.org commits at squeakvm.org
Thu Feb 11 20:54:31 UTC 2016


Revision: 3585
Author:   eliot
Date:     2016-02-11 12:54:30 -0800 (Thu, 11 Feb 2016)
Log Message:
-----------
Move the macos64x64 builds to the new gnu makefiles
Fix the signature of closeWindow in the iOS HostWindowPlugin

Modified Paths:
--------------
    branches/Cog/build.macos64x64/common/Makefile.flags
    branches/Cog/build.macos64x64/newspeak.cog.spur/mvm
    branches/Cog/build.macos64x64/newspeak.cog.spur/plugins.int
    branches/Cog/build.macos64x64/newspeak.stack.spur/mvm
    branches/Cog/build.macos64x64/newspeak.stack.spur/plugins.int
    branches/Cog/build.macos64x64/pharo.cog.spur/Makefile
    branches/Cog/build.macos64x64/squeak.cog.spur/mvm
    branches/Cog/build.macos64x64/squeak.cog.spur/plugins.int
    branches/Cog/build.macos64x64/squeak.sista.spur/mvm
    branches/Cog/build.macos64x64/squeak.sista.spur/plugins.int
    branches/Cog/build.macos64x64/squeak.stack.spur/mvm
    branches/Cog/build.macos64x64/squeak.stack.spur/plugins.int
    branches/Cog/platforms/iOS/plugins/HostWindowPlugin/sqMacHostWindow.m

Added Paths:
-----------
    branches/Cog/build.macos64x64/common/
    branches/Cog/build.macos64x64/common/Makefile.app
    branches/Cog/build.macos64x64/common/Makefile.app.newspeak
    branches/Cog/build.macos64x64/common/Makefile.plugin
    branches/Cog/build.macos64x64/common/Makefile.vm
    branches/Cog/build.macos64x64/newspeak.cog.spur/Makefile
    branches/Cog/build.macos64x64/newspeak.stack.spur/Makefile
    branches/Cog/build.macos64x64/pharo.cog.spur/
    branches/Cog/build.macos64x64/pharo.cog.spur/mvm
    branches/Cog/build.macos64x64/pharo.cog.spur/plugins.ext
    branches/Cog/build.macos64x64/pharo.cog.spur/plugins.int
    branches/Cog/build.macos64x64/squeak.cog.spur/Makefile
    branches/Cog/build.macos64x64/squeak.sista.spur/Makefile
    branches/Cog/build.macos64x64/squeak.stack.spur/Makefile

Removed Paths:
-------------
    branches/Cog/build.macos64x64/common/Makefile.app
    branches/Cog/build.macos64x64/common/Makefile.plugin
    branches/Cog/build.macos64x64/common/Makefile.vm
    branches/Cog/build.macos64x64/newspeak.cog.spur/CoreVM.plist
    branches/Cog/build.macos64x64/newspeak.cog.spur/CoreVM.xcodeproj/
    branches/Cog/build.macos64x64/newspeak.cog.spur/SqueakSSL/
    branches/Cog/build.macos64x64/newspeak.cog.spur/UnixOSProcessPlugin/
    branches/Cog/build.macos64x64/newspeak.cog.spur/makeclean
    branches/Cog/build.macos64x64/newspeak.cog.spur/makevm
    branches/Cog/build.macos64x64/newspeak.cog.spur/mkNamedPrims.sh
    branches/Cog/build.macos64x64/newspeak.stack.spur/CoreVM.plist
    branches/Cog/build.macos64x64/newspeak.stack.spur/CoreVM.xcodeproj/
    branches/Cog/build.macos64x64/newspeak.stack.spur/SqueakSSL/
    branches/Cog/build.macos64x64/newspeak.stack.spur/UnixOSProcessPlugin/
    branches/Cog/build.macos64x64/newspeak.stack.spur/makeclean
    branches/Cog/build.macos64x64/newspeak.stack.spur/makevm
    branches/Cog/build.macos64x64/newspeak.stack.spur/mkNamedPrims.sh
    branches/Cog/build.macos64x64/pharo.cog.spur/mvm
    branches/Cog/build.macos64x64/pharo.cog.spur/plugins.ext
    branches/Cog/build.macos64x64/pharo.cog.spur/plugins.int
    branches/Cog/build.macos64x64/squeak.cog.spur/BochsIA32Plugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/BochsX64Plugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/CroquetPlugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/FloatArrayPlugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/FloatMathPlugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/GdbARMPlugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/Mpeg3Plugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakCogSpur32x86/
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakCogSpur32x86.plist
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakCogSpur32x86.xcodeproj/
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakFFIPrims/
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakMTFFIPrims/
    branches/Cog/build.macos64x64/squeak.cog.spur/SqueakSSL/
    branches/Cog/build.macos64x64/squeak.cog.spur/UnixOSProcessPlugin/
    branches/Cog/build.macos64x64/squeak.cog.spur/makeclean
    branches/Cog/build.macos64x64/squeak.cog.spur/makeiosclean
    branches/Cog/build.macos64x64/squeak.cog.spur/makeiosvm
    branches/Cog/build.macos64x64/squeak.cog.spur/miosvm
    branches/Cog/build.macos64x64/squeak.cog.spur/mkNamedPrims.sh
    branches/Cog/build.macos64x64/squeak.sista.spur/CoreVM.plist
    branches/Cog/build.macos64x64/squeak.sista.spur/CoreVM.xcodeproj/
    branches/Cog/build.macos64x64/squeak.sista.spur/CroquetPlugin/
    branches/Cog/build.macos64x64/squeak.sista.spur/FloatArrayPlugin/
    branches/Cog/build.macos64x64/squeak.sista.spur/FloatMathPlugin/
    branches/Cog/build.macos64x64/squeak.sista.spur/Mpeg3Plugin/
    branches/Cog/build.macos64x64/squeak.sista.spur/SqueakFFIPrims/
    branches/Cog/build.macos64x64/squeak.sista.spur/SqueakSSL/
    branches/Cog/build.macos64x64/squeak.sista.spur/UnixOSProcessPlugin/
    branches/Cog/build.macos64x64/squeak.sista.spur/makeclean
    branches/Cog/build.macos64x64/squeak.sista.spur/makevm
    branches/Cog/build.macos64x64/squeak.sista.spur/mkNamedPrims.sh
    branches/Cog/build.macos64x64/squeak.stack.spur/CoreVM.plist
    branches/Cog/build.macos64x64/squeak.stack.spur/CoreVM.xcodeproj/
    branches/Cog/build.macos64x64/squeak.stack.spur/Crashlytics.framework/
    branches/Cog/build.macos64x64/squeak.stack.spur/CroquetPlugin/
    branches/Cog/build.macos64x64/squeak.stack.spur/English.lproj/
    branches/Cog/build.macos64x64/squeak.stack.spur/FloatArrayPlugin/
    branches/Cog/build.macos64x64/squeak.stack.spur/FloatMathPlugin/
    branches/Cog/build.macos64x64/squeak.stack.spur/Mpeg3Plugin/
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakCogSpur32x86.plist
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakFFIPrims/
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakPureObjc64x64/
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakPureObjcCog.xcodeproj/
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakPureObjc_Prefix.pch
    branches/Cog/build.macos64x64/squeak.stack.spur/SqueakSSL/
    branches/Cog/build.macos64x64/squeak.stack.spur/UnixOSProcessPlugin/
    branches/Cog/build.macos64x64/squeak.stack.spur/makeclean
    branches/Cog/build.macos64x64/squeak.stack.spur/makevm
    branches/Cog/build.macos64x64/squeak.stack.spur/mkNamedPrims.sh
    branches/Cog/build.macos64x64/xcode/

Property Changed:
----------------
    branches/Cog/platforms/Cross/vm/sqSCCSVersion.h

Deleted: branches/Cog/build.macos64x64/common/Makefile.app
===================================================================
--- branches/Cog/build.macos32x86/common/Makefile.app	2016-02-11 00:23:41 UTC (rev 3581)
+++ branches/Cog/build.macos64x64/common/Makefile.app	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,89 +0,0 @@
-#############################################################################
-# Generic Makefile for VM app bundle
-# Do make getversion to get makwe -n to work
-#
-# This is designed to be invoked by Makefile in a specific build directory via
-# include ../common/Makefile.app
-#
-# Parameters:
-# VMSRCDIR defines the locaton of the VM source to build.  Required.
-#
-# COGDEFS supply any command-line defines to use, and may be null.
-#
-# The name of the VM to build.  Optional.  Defaults to Squeak
-#
-# PLUGINSRCDIR defines the locaton of the plugin source, the subsets of which
-# selected by plugins.int and plugins.ext will be built. Optional. Defaults to
-# ../../src
-# 
-# CONFIGURATION defines what version of the VM to build, product, assert or
-# debug. Optional. Defaults to product. The default is overridden in mvm script
-
-
-ifeq ("$(CONFIGURATION)","product")
-	APP:=CocoaFast.app
-else ifeq ("$(CONFIGURATION)","assert")
-	APP:=CocoaAssert.app
-else
-	APP:=CocoaDebug.app
-endif
-
-default:	$(APP)
-
-include ../common/Makefile.vm
-
-cleanall: cleanapp cleanastapp cleandbgapp cleanallvm
-
-cleanapp:
-	rm -rf CocoaFast.app
-
-cleanastapp:
-	rm -rf CocoaAssert.app
-
-cleandbgapp:
-	rm -rf CocoaDebug.app
-
-VMEXE:=$(APP)/Contents/MacOS/$(VM)
-VMPLIST:=$(APP)/Contents/Info.plist
-VMBUNDLES:=$(addprefix $(APP)/Contents/Resources/, $(addsuffix .bundle, $(EXTERNAL_PLUGINS)))
-OSXICONS:=$(OSXDIR)/$(VM).icns $(wildcard $(OSXDIR)/$(SYSTEM)*.icns)
-VMICONS:=$(addprefix $(APP)/Contents/Resources/,$(notdir $(OSXICONS)))
-VMMENUNIB:=$(APP)/Contents/Resources/English.lproj/MainMenu.nib
-
-$(APP):	$(VMEXE) $(VMBUNDLES) $(VMPLIST) $(VMMENUNIB) $(VMICONS)
-
-$(VMEXE): vm $(OBJDIR)/$(VM)
-	mkdir -p $(APP)/Contents/MacOS
-	cp $(OBJDIR)/$(VM) $(APP)/Contents/MacOS
-
-$(APP)/Contents/Resources/%.bundle: $(BLDDIR)/vm/%.bundle
-	mkdir -p $(APP)/Contents/Resources
-	cp -pR $< $(APP)/Contents/Resources
-
-$(VMPLIST): $(OSXDIR)/$(SYSTEM)-Info.plist getversion
-	mkdir -p $(APP)/Contents
-	sed "s/\$$(VERSION)/`getversion VERSION_TAG`/" $< | \
-	sed "s/\$$(VERSION_NUMBER)/`getversion VERSION_NUMBER`/" | \
-	sed "s/\$$(VERSION_TAG)/`getversion VERSION_TAG`/" | \
-	sed "s/\$$(VM_NICKNAME)/`getversion VM_NICKNAME`/" > $@
-
-$(VMMENUNIB): $(PLATDIR)/iOS/vm/English.lproj/MainMenu.xib
-	mkdir -p $(dir $@)
-	$(XCUB)/ibtool --errors --warnings --notices --module $(VM) \
-	--minimum-deployment-target $(TARGET_VERSION_MIN) \
-	--auto-activate-custom-fonts --output-format human-readable-text \
-	--compile $(VMMENUNIB) \
-	$(PLATDIR)/iOS/vm/English.lproj/MainMenu.xib
-
-$(APP)/Contents/Resources/%.icns: $(OSXDIR)/%.icns
-	mkdir -p $(APP)/Contents/Resources
-	cp -p $< $(APP)/Contents/Resources
-
-print-app-settings:
-	@echo ---------------- Makefile.app settings ------------------
-	@echo APP=$(APP)
-	@echo VMEXE=$(VMEXE)
-	@echo VMBUNDLES=$(VMBUNDLES)
-	@echo VMPLIST=$(VMPLIST)
-	@echo VMICONS=$(VMICONS)
-	@echo -----------------------------------------------------

Copied: branches/Cog/build.macos64x64/common/Makefile.app (from rev 3584, branches/Cog/build.macos32x86/common/Makefile.app)
===================================================================
--- branches/Cog/build.macos64x64/common/Makefile.app	                        (rev 0)
+++ branches/Cog/build.macos64x64/common/Makefile.app	2016-02-11 20:54:30 UTC (rev 3585)
@@ -0,0 +1,90 @@
+#############################################################################
+# Generic Makefile for VM app bundle
+# Do make getversion to get makwe -n to work
+#
+# This is designed to be invoked by Makefile in a specific build directory via
+# include ../common/Makefile.app
+#
+# Parameters:
+# VMSRCDIR defines the locaton of the VM source to build.  Required.
+#
+# COGDEFS supply any command-line defines to use, and may be null.
+#
+# The name of the VM to build.  Optional.  Defaults to Squeak
+#
+# PLUGINSRCDIR defines the locaton of the plugin source, the subsets of which
+# selected by plugins.int and plugins.ext will be built. Optional. Defaults to
+# ../../src
+# 
+# CONFIGURATION defines what version of the VM to build, product, assert or
+# debug. Optional. Defaults to product. The default is overridden in mvm script
+
+
+ifeq ("$(CONFIGURATION)","debug")
+	APP:=CocoaDebug.app
+else ifeq ("$(CONFIGURATION)","assert")
+	APP:=CocoaAssert.app
+else # default CONFIGURATION=product => CocoaFast.app
+	APP:=CocoaFast.app
+endif
+
+default:	$(APP)
+
+include ../common/Makefile.vm
+
+cleanall: cleanapp cleanastapp cleandbgapp cleanallvm
+
+cleanapp:
+	rm -rf CocoaFast.app
+
+cleanastapp:
+	rm -rf CocoaAssert.app
+
+cleandbgapp:
+	rm -rf CocoaDebug.app
+
+VMEXE:=$(APP)/Contents/MacOS/$(VM)
+VMPLIST:=$(APP)/Contents/Info.plist
+VMBUNDLES:=$(addprefix $(APP)/Contents/Resources/, $(addsuffix .bundle, $(EXTERNAL_PLUGINS)))
+OSXICONS:=$(OSXDIR)/$(VM).icns $(wildcard $(OSXDIR)/$(SYSTEM)*.icns)
+VMICONS:=$(addprefix $(APP)/Contents/Resources/,$(notdir $(OSXICONS)))
+VMMENUNIB:=$(APP)/Contents/Resources/English.lproj/MainMenu.nib
+
+$(APP):	$(VMEXE) $(VMBUNDLES) $(VMPLIST) $(VMMENUNIB) $(VMICONS) $(APPPOST)
+
+$(VMEXE): vm $(OBJDIR)/$(VM)
+	mkdir -p $(APP)/Contents/MacOS
+	cp -p $(OBJDIR)/$(VM) $(APP)/Contents/MacOS
+
+$(APP)/Contents/Resources/%.bundle: $(BLDDIR)/vm/%.bundle
+	mkdir -p $(APP)/Contents/Resources
+	cp -pR $< $(APP)/Contents/Resources
+
+$(VMPLIST): $(OSXDIR)/$(SYSTEM)-Info.plist getversion
+	mkdir -p $(APP)/Contents
+	sed "s/\$$(VERSION)/`getversion VERSION_TAG`/" $< | \
+	sed "s/\$$(VERSION_NUMBER)/`getversion VERSION_NUMBER`/" | \
+	sed "s/\$$(VERSION_TAG)/`getversion VERSION_TAG`/" | \
+	sed "s/\$$(VIRTUAL_MACHINE_NICKNAME)/`getversion VIRTUAL_MACHINE_NICKNAME`/" | \
+	sed "s/\$$(VM_NICKNAME)/`getversion VM_NICKNAME`/" > $@
+
+$(VMMENUNIB): $(PLATDIR)/iOS/vm/English.lproj/MainMenu.xib
+	mkdir -p $(dir $@)
+	$(XCUB)/ibtool --errors --warnings --notices --module $(VM) \
+	--minimum-deployment-target $(TARGET_VERSION_MIN) \
+	--auto-activate-custom-fonts --output-format human-readable-text \
+	--compile $(VMMENUNIB) \
+	$(PLATDIR)/iOS/vm/English.lproj/MainMenu.xib
+
+$(APP)/Contents/Resources/%.icns: $(OSXDIR)/%.icns
+	mkdir -p $(APP)/Contents/Resources
+	cp -p $< $(APP)/Contents/Resources
+
+print-app-settings:
+	@echo ---------------- Makefile.app settings ------------------
+	@echo APP=$(APP)
+	@echo VMEXE=$(VMEXE)
+	@echo VMBUNDLES=$(VMBUNDLES)
+	@echo VMPLIST=$(VMPLIST)
+	@echo VMICONS=$(VMICONS)
+	@echo -----------------------------------------------------

Copied: branches/Cog/build.macos64x64/common/Makefile.app.newspeak (from rev 3584, branches/Cog/build.macos32x86/common/Makefile.app.newspeak)
===================================================================
--- branches/Cog/build.macos64x64/common/Makefile.app.newspeak	                        (rev 0)
+++ branches/Cog/build.macos64x64/common/Makefile.app.newspeak	2016-02-11 20:54:30 UTC (rev 3585)
@@ -0,0 +1,27 @@
+##############################################################################
+# Generic Makefile for Mac OS X Newspeak or Glue Cocoa VM
+#
+
+# The caller should set VMSRCDIR to point to the relevant VM source
+# e.g. VMSRCDIR:= ../../nsspursrc/vm
+
+VM:=NewspeakVirtualMachine
+SYSTEM:=Newspeak
+
+APPPOST:=renameExe renameIcon
+
+# Now include the Makefile proper, which is common to all Mac OS builds.
+#
+include ../common/Makefile.app
+
+# Rename NewspeakVirtualMachine to the problematic Newspeak Virtual Machine
+
+renameExe: $(APP)/Contents/MacOS/NewspeakVirtualMachine
+	mv $(APP)/Contents/MacOS/NewspeakVirtualMachine \
+		"$(APP)/Contents/MacOS/Newspeak Virtual Machine"
+
+# Likewise, rename NewspeakVirtualMachine.icns
+
+renameIcon: $(APP)/Contents/Resources/NewspeakVirtualMachine.icns
+	mv $(APP)/Contents/Resources/NewspeakVirtualMachine.icns \
+		"$(APP)/Contents/Resources/Newspeak Virtual Machine.icns"

Modified: branches/Cog/build.macos64x64/common/Makefile.flags
===================================================================
--- branches/Cog/build.macos32x86/common/Makefile.flags	2016-02-11 00:23:41 UTC (rev 3581)
+++ branches/Cog/build.macos64x64/common/Makefile.flags	2016-02-11 20:54:30 UTC (rev 3585)
@@ -6,7 +6,7 @@
 XCODE:=/Applications/Xcode.app/Contents/Developer
 XCUB:=$(XCODE)/usr/bin
 SDK:=$(XCODE)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk
-TARGET_ARCH:=i386
+TARGET_ARCH:=x86_64
 TARGET_VERSION_MIN:=10.6
 
 CFLAGS:=$(CFLAGS) -DBUILD_FOR_OSX \

Deleted: branches/Cog/build.macos64x64/common/Makefile.plugin
===================================================================
--- branches/Cog/build.macos32x86/common/Makefile.plugin	2016-02-11 00:23:41 UTC (rev 3581)
+++ branches/Cog/build.macos64x64/common/Makefile.plugin	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,159 +0,0 @@
-#############################################################################
-# Generic Makefile for plugins on Cocoa Mac OS X
-# Do make getversion to get makwe -n to work
-#
-
-# VM config flags.
-ifeq ("$(CONFIGURATION)","product")
-OFLAGS:= -g -Os
-DEBUGVM=-DDEBUGVM=0 -DNDEBUG=1
-BUILD:=build
-else ifeq ("$(CONFIGURATION)","assert")
-OFLAGS:= -g -O1 -fno-omit-frame-pointer
-DEBUGVM=-DDEBUGVM=0
-BUILD:=buildast
-else
-OFLAGS:= -g -O0 -fno-omit-frame-pointer
-DEBUGVM=-DDEBUGVM=1
-BUILD:=builddbg
-endif
-
-CFLAGS:= $(OFLAGS) $(COGDEFS) $(DEBUGVM) $(XDEFS)
-# The following are the four key locations (set via invocation):
-# PLUGINSRCDIR: Where is the root of the src/plugins source tree?
-# VMSRCDIR: Where is the root of the src vm source tree?
-# PLATDIR: Where is the root of the platforms tree?
-# BASEDIR: Where is the root of the build tree?
-COMMONDIR:=$(BASEDIR)/../common
-
-#############################################################################
-# Standard directory locations:
-#   CROSSDIR: The location of the cross platform sources
-#   OSXPLGDIR: The location of the iOS sources
-#   MAKERDIR: The location of the VMMaker generated sources
-#   BUILDDIR: The location where the plugin is built
-#
-#PLUGINSRCDIR:=	../../src/plugins
-CROSSDIR:=	$(PLATDIR)/Cross/plugins/$(LIBNAME)
-OSXDIR:=	$(PLATDIR)/iOS/vm/OSX
-OSXPLGDIR:=	$(PLATDIR)/iOS/plugins/$(LIBNAME)
-UNIXDIR:=	$(PLATDIR)/unix/vm
-MAKERDIR:=	$(PLUGINSRCDIR)/$(LIBNAME)
-BUILDDIR:=	$(BASEDIR)/$(BUILD)/$(LIBNAME)
-
-# Support directory locations
-CROSSVMDIR:=$(PLATDIR)/Cross/vm
-OSXVMDIR:=$(PLATDIR)/iOS/vm/OSX
-MAKERVMDIR:=$(VMSRCDIR)
-
-# INCDIRS are where include files are searched for. A superset of SRCDIRS.
-INCDIRS:= $(MAKERVMDIR) $(CROSSVMDIR) $(MAKERDIR) $(OSXPLGDIR) $(OSXVMDIR) $(CROSSDIR) $(INCDIRS)
-INCLUDES:= $(addprefix -I,. $(INCDIRS)) $(INCLUDES)
-
-#############################################################################
-# If no source files were given, use standard set
-#
-
-SRCDIRS:=$(SRCDIRS) $(MAKERDIR) $(CROSSDIR) $(OSXPLGDIR) 
-LIBSRC?= $(foreach d,$(SRCDIRS),$(wildcard $(d)/*.c) $(wildcard $(d)/*.cpp) $(wildcard $(d)/*.m))
-ifneq ($(EXCLUDESRC),)
-LIBSRC:=$(filter-out $(EXCLUDESRC),$(LIBSRC))
-endif
-
-
-#############################################################################
-# bundle settings
-#
-# Note: By default DLLTOOL/DLLWRAP do the work for everything related to plugins
-# but if LINK_WITH_GCC we use gcc and if LINK_WITH_GPP we use g++.
-#
-DLLTOOL:=	dlltool
-DLLWRAP:=	dllwrap -mno-cygwin
-#OPTSTRIP:=	strip # for production
-OPTSTRIP:=	echo not doing strip
-
-#############################################################################
-# Plugin settings
-#
-OBJDIR:=    $(BASEDIR)/$(BUILD)/$(LIBNAME)
-VMDIR:=     $(BASEDIR)/$(BUILD)/vm
-PLUGINLIB:= $(VMDIR)/$(LIBNAME).lib
-PLUGINBUNDLE:= $(VMDIR)/$(LIBNAME).bundle
-PLUGINEXE:= $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
-# https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Introduction/Introduction.html
-PLUGINPLIST:= $(PLUGINBUNDLE)/Contents/Info.plist
-PLUGINICONS:= $(PLUGINBUNDLE)/Contents/Resources/SqueakPlugin.icns
-LIBOBJ?=$(notdir $(LIBSRC))
-LIBOBJ:=$(patsubst %.c,%.o,$(patsubst %.m,%.o,$(patsubst %.cpp,%.o,$(LIBOBJ))))
-LIBOBJ:=$(addprefix $(OBJDIR)/,$(LIBOBJ))
-
-VPATH:= $(SRCDIRS)
-
-#############################################################################
-# Rules for automated builds
-
-include $(COMMONDIR)/Makefile.rules
-
-all:	$(PLUGINLIB) $(PLUGINBUNDLE)
-
-print-settings:
-	@echo ---------------- Makefile.plugin settings ------------------
-	@echo PWD=$(shell pwd)
-	@echo VPATH=$(VPATH)
-	@echo INCLUDES=$(INCLUDES)
-	@echo CFLAGS=$(CFLAGS)
-	@echo PLUGINSRCDIR=$(PLUGINSRCDIR)
-	@echo VMSRCDIR=$(VMSRCDIR)
-	@echo CROSSDIR=$(CROSSDIR)
-	@echo OSXPLGDIR=$(OSXPLGDIR)
-	@echo OSXDIR=$(OSXDIR)
-	@echo MAKERDIR=$(MAKERDIR)
-	@echo CROSSSRC=$(CROSSSRC)
-	@echo OSXSRC=$(OSXSRC)
-	@echo MAKERSRC=$(MAKERSRC)
-	@echo SRCDIRS=$(SRCDIRS)
-	@echo LIBSRC=$(LIBSRC)
-	@echo LIBOBJ=$(LIBOBJ)
-	@echo OBJDIR=$(OBJDIR)
-	@echo VMDIR=$(VMDIR)
-	@echo PLUGINLIB=$(PLUGINLIB)
-	@echo PLUGINEXE=$(PLUGINEXE)
-	@echo PLUGINBUNDLE=$(PLUGINBUNDLE)
-	@echo -----------------------------------------------------
-
-$(OBJDIR):
-	mkdir -p $(OBJDIR)
-
-$(VMDIR):
-	mkdir -p $(VMDIR)
-
-$(PLUGINLIB): $(VMDIR) $(OBJDIR) $(LIBOBJ)
-	-rm $(PLUGINLIB)
-	ar -rc $(PLUGINLIB) $(LIBOBJ)
-
-# Either link with normal compiler/linker or with cpp compiler/linker.  If
-# LINK_WITH_CPP is set, use e.g. clang++
-$(PLUGINBUNDLE): $(PLUGINEXE) $(PLUGINICONS) $(PLUGINPLIST)
-
-$(PLUGINEXE): $(VMDIR) $(OBJDIR) $(LIBOBJ)
-	mkdir -p $(PLUGINBUNDLE)/Contents/MacOS
-ifneq ($(LINK_WITH_CPP),)
-	$(LDCXX) \
-	$(BFLAGS) \
-	$(LIBOBJ) $(EXTRALIBS) \
-	-o $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
-else
-	$(LD) \
-	$(BFLAGS) \
-	$(LIBOBJ) $(EXTRALIBS) \
-	-o $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
-endif
-
-$(PLUGINICONS): $(OSXDIR)/SqueakPlugin.icns
-	mkdir -p $(PLUGINBUNDLE)/Contents/Resources
-	cp -p $< $@
-
-$(PLUGINPLIST): $(PLATDIR)/iOS/plugins/Info.plist getversion
-	mkdir -p $(PLUGINBUNDLE)/Contents
-	sed "s/\$$(VERSION)/`getversion VERSION_TAG`/" $< | \
-	sed "s/\$(LIBNAME)/$(LIBNAME)/" > $(PLUGINPLIST)

Copied: branches/Cog/build.macos64x64/common/Makefile.plugin (from rev 3584, branches/Cog/build.macos32x86/common/Makefile.plugin)
===================================================================
--- branches/Cog/build.macos64x64/common/Makefile.plugin	                        (rev 0)
+++ branches/Cog/build.macos64x64/common/Makefile.plugin	2016-02-11 20:54:30 UTC (rev 3585)
@@ -0,0 +1,172 @@
+#############################################################################
+# Generic Makefile for plugins on Cocoa Mac OS X
+# Do make getversion to get makwe -n to work
+#
+# The following variables can be overridden in the platform Makefile, e.g.
+# platforms/iOS/plugins/AioPlugin/Makefile.  Look at
+# platforms/iOS/plugins/*/Makefile for examples.
+#
+# CFLAGS     adds additional compilation flags to source file compilation
+# EXCLUDESRC defines patterns of source files to not compile, e.g. %/dump.c
+# EXTRALIBS  defines additional libraries to link into an external plugin bundle
+# INCDIRS    defines additonal directories in which to search for includes
+# LIBSRC     overrides the set of files to compile (if EXCLUDESRC inconvenient)
+# LINK_WITH_CPP set to non-empty to link external plugin bundle with c++ runtime
+# SRCDIRS    supplies additional directories containing files to compile.
+
+# VM config flags.
+ifeq ("$(CONFIGURATION)","product")
+OFLAGS:= -g -Os
+DEBUGVM=-DDEBUGVM=0 -DNDEBUG=1
+BUILD:=build
+else ifeq ("$(CONFIGURATION)","assert")
+OFLAGS:= -g -O1 -fno-omit-frame-pointer
+DEBUGVM=-DDEBUGVM=0
+BUILD:=buildast
+else
+OFLAGS:= -g -O0 -fno-omit-frame-pointer
+DEBUGVM=-DDEBUGVM=1
+BUILD:=builddbg
+endif
+
+CFLAGS:= $(CFLAGS) $(OFLAGS) $(COGDEFS) $(DEBUGVM) $(XDEFS)
+# The following are the four key locations (set via invocation):
+# PLUGINSRCDIR: Where is the root of the src/plugins source tree?
+# VMSRCDIR: Where is the root of the src vm source tree?
+# PLATDIR: Where is the root of the platforms tree?
+# BASEDIR: Where is the root of the build tree?
+COMMONDIR:=$(BASEDIR)/../common
+
+#############################################################################
+# Standard directory locations:
+#   CROSSDIR: The location of the cross platform sources
+#   OSXPLGDIR: The location of the iOS sources
+#   MAKERDIR: The location of the VMMaker generated sources
+#   BUILDDIR: The location where the plugin is built
+#
+#PLUGINSRCDIR:=	../../src/plugins
+CROSSDIR:=	$(PLATDIR)/Cross/plugins/$(LIBNAME)
+OSXDIR:=	$(PLATDIR)/iOS/vm/OSX
+OSXPLGDIR:=	$(PLATDIR)/iOS/plugins/$(LIBNAME)
+UNIXDIR:=	$(PLATDIR)/unix/vm
+MAKERDIR:=	$(PLUGINSRCDIR)/$(LIBNAME)
+BUILDDIR:=	$(BASEDIR)/$(BUILD)/$(LIBNAME)
+
+# Support directory locations
+CROSSVMDIR:=$(PLATDIR)/Cross/vm
+OSXVMDIR:=$(PLATDIR)/iOS/vm/OSX
+MAKERVMDIR:=$(VMSRCDIR)
+
+# INCDIRS are where include files are searched for. A superset of SRCDIRS.
+INCDIRS:= $(MAKERVMDIR) $(CROSSVMDIR) $(MAKERDIR) $(OSXPLGDIR) $(OSXVMDIR) $(CROSSDIR) $(INCDIRS)
+INCLUDES:= $(addprefix -I,. $(INCDIRS))
+
+#############################################################################
+# If no source files were given, use standard set
+#
+
+SRCDIRS:=$(SRCDIRS) $(MAKERDIR) $(CROSSDIR) $(OSXPLGDIR) 
+LIBSRC?= $(foreach d,$(SRCDIRS),$(wildcard $(d)/*.c) $(wildcard $(d)/*.cpp) $(wildcard $(d)/*.m))
+ifneq ($(EXCLUDESRC),)
+LIBSRC:=$(filter-out $(EXCLUDESRC),$(LIBSRC))
+endif
+
+
+#############################################################################
+# bundle settings
+#
+# Note: By default DLLTOOL/DLLWRAP do the work for everything related to plugins
+# but if LINK_WITH_GCC we use gcc and if LINK_WITH_GPP we use g++.
+#
+DLLTOOL:=	dlltool
+DLLWRAP:=	dllwrap -mno-cygwin
+#OPTSTRIP:=	strip # for production
+OPTSTRIP:=	echo not doing strip
+
+#############################################################################
+# Plugin settings
+#
+OBJDIR:=    $(BASEDIR)/$(BUILD)/$(LIBNAME)
+VMDIR:=     $(BASEDIR)/$(BUILD)/vm
+PLUGINLIB:= $(VMDIR)/$(LIBNAME).lib
+PLUGINBUNDLE:= $(VMDIR)/$(LIBNAME).bundle
+PLUGINEXE:= $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
+# https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Introduction/Introduction.html
+PLUGINPLIST:= $(PLUGINBUNDLE)/Contents/Info.plist
+PLUGINICONS:= $(PLUGINBUNDLE)/Contents/Resources/SqueakPlugin.icns
+LIBOBJ?=$(notdir $(LIBSRC))
+LIBOBJ:=$(patsubst %.c,%.o,$(patsubst %.m,%.o,$(patsubst %.cpp,%.o,$(LIBOBJ))))
+LIBOBJ:=$(addprefix $(OBJDIR)/,$(LIBOBJ))
+
+VPATH:= $(SRCDIRS)
+
+#############################################################################
+# Rules for automated builds
+
+include $(COMMONDIR)/Makefile.rules
+
+all:	$(PLUGINLIB) $(PLUGINBUNDLE)
+
+print-settings:
+	@echo ---------------- Makefile.plugin settings ------------------
+	@echo PWD=$(shell pwd)
+	@echo MAKEFILE=$(MAKEFILE)
+	@echo VPATH=$(VPATH)
+	@echo INCLUDES=$(INCLUDES)
+	@echo CFLAGS=$(CFLAGS)
+	@echo PLUGINSRCDIR=$(PLUGINSRCDIR)
+	@echo VMSRCDIR=$(VMSRCDIR)
+	@echo CROSSDIR=$(CROSSDIR)
+	@echo OSXPLGDIR=$(OSXPLGDIR)
+	@echo OSXDIR=$(OSXDIR)
+	@echo MAKERDIR=$(MAKERDIR)
+	@echo CROSSSRC=$(CROSSSRC)
+	@echo OSXSRC=$(OSXSRC)
+	@echo MAKERSRC=$(MAKERSRC)
+	@echo SRCDIRS=$(SRCDIRS)
+	@echo INCDIRS=$(INCDIRS)
+	@echo LIBSRC=$(LIBSRC)
+	@echo LIBOBJ=$(LIBOBJ)
+	@echo OBJDIR=$(OBJDIR)
+	@echo VMDIR=$(VMDIR)
+	@echo PLUGINLIB=$(PLUGINLIB)
+	@echo PLUGINEXE=$(PLUGINEXE)
+	@echo PLUGINBUNDLE=$(PLUGINBUNDLE)
+	@echo -----------------------------------------------------
+
+$(OBJDIR):
+	mkdir -p $(OBJDIR)
+
+$(VMDIR):
+	mkdir -p $(VMDIR)
+
+$(PLUGINLIB): $(VMDIR) $(OBJDIR) $(LIBOBJ)
+	-rm $(PLUGINLIB)
+	ar -rc $(PLUGINLIB) $(LIBOBJ)
+
+# Either link with normal compiler/linker or with cpp compiler/linker.  If
+# LINK_WITH_CPP is set, use e.g. clang++
+$(PLUGINBUNDLE): $(PLUGINEXE) $(PLUGINICONS) $(PLUGINPLIST)
+
+$(PLUGINEXE): $(VMDIR) $(OBJDIR) $(LIBOBJ)
+	mkdir -p $(PLUGINBUNDLE)/Contents/MacOS
+ifneq ($(LINK_WITH_CPP),)
+	$(LDCXX) \
+	$(BFLAGS) \
+	$(LIBOBJ) $(EXTRALIBS) \
+	-o $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
+else
+	$(LD) \
+	$(BFLAGS) \
+	$(LIBOBJ) $(EXTRALIBS) \
+	-o $(PLUGINBUNDLE)/Contents/MacOS/$(LIBNAME)
+endif
+
+$(PLUGINICONS): $(OSXDIR)/SqueakPlugin.icns
+	mkdir -p $(PLUGINBUNDLE)/Contents/Resources
+	cp -p $< $@
+
+$(PLUGINPLIST): $(PLATDIR)/iOS/plugins/Info.plist getversion
+	mkdir -p $(PLUGINBUNDLE)/Contents
+	sed "s/\$$(VERSION)/`getversion VERSION_TAG`/" $< | \
+	sed "s/\$(LIBNAME)/$(LIBNAME)/" > $(PLUGINPLIST)

Deleted: branches/Cog/build.macos64x64/common/Makefile.vm
===================================================================
--- branches/Cog/build.macos32x86/common/Makefile.vm	2016-02-11 00:23:41 UTC (rev 3581)
+++ branches/Cog/build.macos64x64/common/Makefile.vm	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,242 +0,0 @@
-#############################################################################
-# Generic Makefile for Mac OS VM 
-# Do make getversion to get makwe -n to work
-#
-# This is designed to be invoked by Makefile in a specific build directory via
-# include ../common/Makefile.app
-#
-# Parameters:
-# VMSRCDIR defines the locaton of the VM source to build.  Required.
-#
-# COGDEFS supply any command-line defines to use, and may be null.
-#
-# The name of the VM to build, e.g. Squeak or "Newspeak Virtual Machine"
-# and its short name, e.g. Squeak or Newspeak, used to choose app icon files.
-
-VM?=Squeak
-SYSTEM?=$(VM)
-
-# PLUGINSRCDIR defines the locaton of the plugin source, the subsets of which
-# selected by plugins.int and plugins.ext will be built.
-
-PLUGINSRCDIR?=../../src/plugins
-
-# CONFIGURATION defines what version of the VM to build, product, assert or
-# debug.  The default is overridden in the mvm script
-
-CONFIGURATION?=product
-
-
-#############################################################################
-# Build directories
-#
-ifndef BASEDIR
-BASEDIR:=.
-endif
-COMMONDIR:=$(BASEDIR)/../common
-
-ifeq ("$(CONFIGURATION)","product")
-	BUILD:=build
-else ifeq ("$(CONFIGURATION)","assert")
-	BUILD:=buildast
-else
-	BUILD:=builddbg
-endif
-$(shell mkdir -p deps >/dev/null) # deps is the dependencies directory
-BLDDIR:= $(BASEDIR)/$(BUILD)
-OBJDIR:= $(BLDDIR)/vm
-
-# N.B. PLATDIR *must* be a relative path, see -f../../$(shell test -f ...) below
-PLATDIR:=../../platforms
-CROSSDIR:=$(PLATDIR)/Cross/vm
-OSXDIR:=$(PLATDIR)/iOS/vm/OSX
-OSXCOMMONDIR:=$(PLATDIR)/iOS/vm/Common
-OSXCLASSESDIR:=$(PLATDIR)/iOS/vm/Common/Classes
-OSXPLUGINSDIR:=$(PLATDIR)/iOS/plugins
-UNIXVMDIR:=$(PLATDIR)/unix/vm
-
-MAKERSRC:=$(addprefix $(VMSRCDIR)/,gcc3x-cointerp.c cogit.c)
-CROSSSRC:= $(wildcard $(CROSSDIR)/*.c)
-XEX:=%/sqSqueakMainApplication+screen.m
-OSXSRC:=$(wildcard $(OSXDIR)/*.c) $(filter-out $(XEX),$(wildcard $(OSXDIR)/*.m)) \
-		$(wildcard $(OSXCOMMONDIR)/*.c) $(wildcard $(OSXCOMMONDIR)/*.m) \
-		$(wildcard $(OSXCLASSESDIR)/*.c) $(wildcard $(OSXCLASSESDIR)/*.m)
-UNIXSRC:=$(addprefix $(UNIXVMDIR)/,aio.c sqUnixHeartbeat.c sqUnixMemory.c \
-						sqUnixSpurMemory.c sqUnixThreads.c sqUnixVMProfile.c)
-VMSRC:= $(MAKERSRC) $(CROSSSRC) $(OSXSRC) $(UNIXSRC)
-VMOBJ:=	$(notdir $(VMSRC))
-VMOBJ:=	$(VMOBJ:.c=.o)
-VMOBJ:=	$(VMOBJ:.m=.o)
-VMOBJ:=	$(VMOBJ:.cpp=.o)
-VMOBJ:= $(addprefix $(OBJDIR)/,$(VMOBJ))
-
-# N.B.  Most important that OSXCOMMONDIR precede OSXDIR so that the above
-# exclusion of OSXDIR/sqSqueakMainApplication+screen.m works, since there
-# exists a OSXCOMMONDIR/sqSqueakMainApplication+screen.m.
-SRCDIRS:=$(VMSRCDIR) $(OSXCOMMONDIR) $(OSXCLASSESDIR) $(OSXDIR) $(UNIXVMDIR) $(CROSSDIR)
-VPATH:=$(SRCDIRS)
-# Additonal includes are required, eg for SoundPlugin/sqSqueakSoundCoreAudio.h
-PluginIncludes := FilePlugin HostWindowPlugin SoundPlugin
-OSPluginIncludes := FilePlugin HostWindowPlugin SoundPlugin
-SRCDIRS:=$(SRCDIRS) \
-			$(addprefix $(PLATDIR)/Cross/plugins/,$(PluginIncludes)) \
-			$(addprefix $(OSXPLUGINSDIR)/,$(OSPluginIncludes))
-
-# The internal (.lib) and external (.bundle) plugins
-#
-include plugins.int
-include plugins.ext
-
-LIBS:= $(addprefix $(OBJDIR)/, $(addsuffix .lib, $(INTERNAL_PLUGINS)))
-BUNDLES:= $(addprefix $(OBJDIR)/, $(addsuffix .bundle, $(EXTERNAL_PLUGINS)))
-
-
-# VM config flags.
-ifeq ("$(CONFIGURATION)","product")
-OFLAGS:= -g -Os
-DEBUGVM=-DDEBUGVM=0 -DNDEBUG=1 # Define NDEBUG for production to exclude asserts
-INTERPFLAGS:=-D'VM_LABEL(foo)=0'
-else ifeq ("$(CONFIGURATION)","assert")
-OFLAGS:= -g -O1 -fno-omit-frame-pointer
-DEBUGVM=-DDEBUGVM=0
-INTERPFLAGS:=-DAllocationCheckFiller=0xADD4E55 -D'VM_LABEL(foo)=0'
-else
-OFLAGS:= -g -O0 -fno-omit-frame-pointer
-DEBUGVM=-DDEBUGVM=1
-INTERPFLAGS:=-DAllocationCheckFiller=0xADD4E55 -D'VM_LABEL(foo)=0'
-endif
-
-TZ:=$(shell date +%Z)
-DEFS:=	$(COGDEFS) -DUSE_GLOBAL_STRUCT=0 -DNO_ISNAN=1 \
-		-DUSE_INLINE_MEMORY_ACCESSORS -D'TZ="$(TZ)"' \
-		$(INTERPFLAGS)
-XDEFS:=	-DSQUEAK_BUILTIN_PLUGIN
-CFLAGS:= $(OFLAGS) $(COGDEFS) $(DEBUGVM) $(DEFS) $(XDEFS)
-INCLUDES:= $(addprefix -I,. $(SRCDIRS))
-
-#############################################################################
-# Linker settings
-#
-LD:=	 gcc
-
-#############################################################################
-#
-SVNREV:= $(shell sed -e "s/^static.*SvnRawRevisionString.*Rev: \([0-9][0-9]*\).*/\\1/p" -e d $(PLATDIR)/Cross/vm/sqSCCSVersion.h)
-
-
-#############################################################################
-# Common build rules
-#
-include $(COMMONDIR)/Makefile.rules
-
-svnver:
-	@-echo $(SVNREV)
-
-getversion: $(OSXCOMMONDIR)/version.c $(CROSSDIR)/sqSCCSVersion.h
-getversion: $(OSXCOMMONDIR)/version.c deps/version.d $(CROSSDIR)/sqSCCSVersion.h
-	$(CC) -x c -DVERSION_PROGRAM=1 $(ALLFLAGS) $(INCLUDES) $< -o $@
-	$(POSTCOMPILE)
-
--include deps/version.d
-	
-product:;
-	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=product $(@,product=) default
-
-assert:
-	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=assert $(@,assert=) default
-
-debug:
-	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=debug $(@,debug=) default
-
-cleanallvm:	cleanvm cleanvmast cleanvmdbg
-
-cleanvm:
-	rm -rf sqNamedPrims.h build deps
-
-cleanvmast:
-	rm -rf sqNamedPrims.h buildast
-
-cleanvmdbg:
-	rm -rf sqNamedPrims.h builddbg
-
-print-source:
-	@echo ---------------- Makefile.vm sources ------------------
-	@echo CROSSSRC=$(CROSSSRC)
-	@echo OSXSRC=$(OSXSRC)
-	@echo MAKERSRC=$(MAKERSRC)
-	@echo UNIXSRC=$(UNIXSRC)
-	@echo VMSRC=$(VMSRC)
-
-print-settings:
-	@echo ---------------- Makefile.vm settings ------------------
-	@echo CONFIGURATION=$(CONFIGURATION)
-	@echo VPATH=$(VPATH)
-	@echo INCLUDES=$(INCLUDES)
-	@echo CFLAGS=$(CFLAGS)
-	@echo INTERNAL_PLUGINS=$(INTERNAL_PLUGINS)
-	@echo EXTERNAL_PLUGINS=$(EXTERNAL_PLUGINS)
-	@echo OBJDIR=$(OBJDIR)
-	@echo LIBS=$(LIBS)
-	@echo BUNDLES=$(BUNDLES)
-	@echo -----------------------------------------------------
-
-print-objects:
-	@echo ---------------- Makefile.vm objects ------------------
-	@echo VMOBJ=$(VMOBJ)
-	@echo -----------------------------------------------------
-
-vm:	$(OBJDIR)/$(VM)
-
-$(OBJDIR)/$(VM): $(OBJDIR) $(VMOBJ) $(LIBS)
-	$(CC) -arch $(TARGET_ARCH) -o $(OBJDIR)/version.o $(CFLAGS) $(INCLUDES) $(DEFS) -c $(OSXCOMMONDIR)/version.c
-	$(CC) -arch $(TARGET_ARCH) -isysroot $(SDK) $(LDFLAGS) $(FRAMEWORKS) \
-			-o $(OBJDIR)/$(VM) $(VMOBJ) $(LIBS)
-
-$(OBJDIR):
-	@-mkdir -p $(BLDDIR)
-	mkdir -p $(OBJDIR)
-ifneq ($(INTERNAL_PLUGINS),)
-	mkdir -p $(addprefix $(BLDDIR)/, $(INTERNAL_PLUGINS))
-endif
-ifneq ($(EXTERNAL_PLUGINS),)
-	mkdir -p $(addprefix $(BLDDIR)/, $(EXTERNAL_PLUGINS))
-endif
-
-#############################################################################
-# Building plugins
-#
-.PHONY: FORCE
-
-# Internal plugin.  Build as lib then link in lib
-# Check for Makefile in iOS plugins directory otherwise use default Makefile
-# N.B.  PLATDIR *must* be a relative path for this to work
-$(OBJDIR)/%.lib:	getversion FORCE
-	@-mkdir -p $(BLDDIR)/$(*F)
-	$(MAKE) $(MFLAGS) BUILD=$(BUILD) \
-		-f $(shell test -f $(OSXPLUGINSDIR)/$(*F)/Makefile && echo $(OSXPLUGINSDIR)/$(*F)/Makefile || echo $(COMMONDIR)/Makefile.plugin) \
-		CONFIGURATION=$(CONFIGURATION) ARCH=$(TARGET_ARCH) \
-		PLATDIR=$(PLATDIR) BASEDIR=$(BASEDIR) \
-		PLUGINSRCDIR=$(PLUGINSRCDIR) VMSRCDIR=$(VMSRCDIR) \
-		LIBNAME=$(*F) COGDEFS="$(COGDEFS)" XDEFS=-DSQUEAK_BUILTIN_PLUGIN \
-		$(OBJDIR)/$(*F).lib
-
-# External plugin.  Build as bundle and copy to vm dir ($(OBJDIR)).
-# Check for Makefile in iOS plugins directory otherwise use default Makefile
-$(OBJDIR)/%.bundle:	getversion FORCE
-	@-mkdir -p $(BLDDIR)/$(*F)
-	$(MAKE) $(MFLAGS) BUILD=$(BUILD) \
-		-f $(shell test -f $(OSXPLUGINSDIR)/$(*F)/Makefile && echo $(OSXPLUGINSDIR)/$(*F)/Makefile || echo $(COMMONDIR)/Makefile.plugin) \
-		CONFIGURATION=$(CONFIGURATION) ARCH=$(TARGET_ARCH) \
-		PLATDIR=$(PLATDIR) BASEDIR=$(BASEDIR) \
-		PLUGINSRCDIR=$(PLUGINSRCDIR) VMSRCDIR=$(VMSRCDIR) \
-		COGDEFS="$(COGDEFS)" LIBNAME=$(*F) $(OBJDIR)/$(*F).bundle
-
-FORCE:
-
-#############################################################################
-# Extra specific dependencies
-#
-sqNamedPrims.h: plugins.int
-	$(COMMONDIR)/mkNamedPrims.sh plugins.int > sqNamedPrims.h
-
-$(OBJDIR)/sqNamedPrims.o:	sqNamedPrims.c sqNamedPrims.h

Copied: branches/Cog/build.macos64x64/common/Makefile.vm (from rev 3584, branches/Cog/build.macos32x86/common/Makefile.vm)
===================================================================
--- branches/Cog/build.macos64x64/common/Makefile.vm	                        (rev 0)
+++ branches/Cog/build.macos64x64/common/Makefile.vm	2016-02-11 20:54:30 UTC (rev 3585)
@@ -0,0 +1,259 @@
+#############################################################################
+# Generic Makefile for Mac OS VM 
+# Do make getversion to get makwe -n to work
+#
+# This is designed to be invoked by Makefile in a specific build directory via
+# include ../common/Makefile.app
+#
+# Parameters:
+# VMSRCDIR defines the locaton of the VM source to build.  Required.
+#
+# COGDEFS supply any command-line defines to use, and may be null.
+#
+# The name of the VM to build, e.g. Squeak or "Newspeak Virtual Machine"
+# and its short name, e.g. Squeak or Newspeak, used to choose app icon files.
+
+VM?=Squeak
+SYSTEM?=$(VM)
+
+# PLUGINSRCDIR defines the locaton of the plugin source, the subsets of which
+# selected by plugins.int and plugins.ext will be built.
+
+PLUGINSRCDIR?=../../src/plugins
+
+# CONFIGURATION defines what version of the VM to build, product, assert or
+# debug.  The default is overridden in the mvm script
+
+CONFIGURATION?=product
+
+
+#############################################################################
+# Build directories
+#
+ifndef BASEDIR
+BASEDIR:=.
+endif
+COMMONDIR:=$(BASEDIR)/../common
+
+ifeq ("$(CONFIGURATION)","assert")
+	BUILD:=buildast
+else ifeq ("$(CONFIGURATION)","debug")
+	BUILD:=builddbg
+else # default CONFIGURATION=product
+	BUILD:=build
+endif
+$(shell mkdir -p deps >/dev/null) # deps is the dependencies directory
+BLDDIR:= $(BASEDIR)/$(BUILD)
+OBJDIR:= $(BLDDIR)/vm
+
+# N.B. PLATDIR *must* be a relative path, see -f../../$(shell test -f ...) below
+PLATDIR:=../../platforms
+CROSSDIR:=$(PLATDIR)/Cross/vm
+OSXDIR:=$(PLATDIR)/iOS/vm/OSX
+OSXCOMMONDIR:=$(PLATDIR)/iOS/vm/Common
+OSXCLASSESDIR:=$(PLATDIR)/iOS/vm/Common/Classes
+OSXPLUGINSDIR:=$(PLATDIR)/iOS/plugins
+UNIXVMDIR:=$(PLATDIR)/unix/vm
+
+MAKERSRC:=$(addprefix $(VMSRCDIR)/,gcc3x-cointerp.c cogit.c)
+CROSSSRC:= $(wildcard $(CROSSDIR)/*.c)
+XEX:=%/sqSqueakMainApplication+screen.m
+OSXSRC:=$(wildcard $(OSXDIR)/*.c) $(filter-out $(XEX),$(wildcard $(OSXDIR)/*.m)) \
+		$(wildcard $(OSXCOMMONDIR)/*.c) $(wildcard $(OSXCOMMONDIR)/*.m) \
+		$(wildcard $(OSXCLASSESDIR)/*.c) $(wildcard $(OSXCLASSESDIR)/*.m)
+UNIXSRC:=$(addprefix $(UNIXVMDIR)/,aio.c sqUnixHeartbeat.c sqUnixMemory.c \
+						sqUnixSpurMemory.c sqUnixThreads.c sqUnixVMProfile.c)
+VMSRC:= $(MAKERSRC) $(CROSSSRC) $(OSXSRC) $(UNIXSRC)
+VMOBJ:=	$(notdir $(VMSRC))
+VMOBJ:=	$(VMOBJ:.c=.o)
+VMOBJ:=	$(VMOBJ:.m=.o)
+VMOBJ:=	$(VMOBJ:.cpp=.o)
+VMOBJ:= $(addprefix $(OBJDIR)/,$(VMOBJ))
+
+# N.B.  Most important that OSXCOMMONDIR precede OSXDIR so that the above
+# exclusion of OSXDIR/sqSqueakMainApplication+screen.m works, since there
+# exists a OSXCOMMONDIR/sqSqueakMainApplication+screen.m.
+SRCDIRS:=$(VMSRCDIR) $(OSXCOMMONDIR) $(OSXCLASSESDIR) $(OSXDIR) $(UNIXVMDIR) $(CROSSDIR)
+VPATH:=$(SRCDIRS)
+# Additonal includes are required, eg for SoundPlugin/sqSqueakSoundCoreAudio.h
+PluginIncludes := FilePlugin HostWindowPlugin SoundPlugin
+OSPluginIncludes := FilePlugin HostWindowPlugin SoundPlugin
+SRCDIRS:=$(SRCDIRS) \
+			$(addprefix $(PLATDIR)/Cross/plugins/,$(PluginIncludes)) \
+			$(addprefix $(OSXPLUGINSDIR)/,$(OSPluginIncludes))
+
+# The internal (.lib) and external (.bundle) plugins
+#
+include plugins.int
+include plugins.ext
+
+LIBS:= $(addprefix $(OBJDIR)/, $(addsuffix .lib, $(INTERNAL_PLUGINS)))
+BUNDLES:= $(addprefix $(OBJDIR)/, $(addsuffix .bundle, $(EXTERNAL_PLUGINS)))
+
+
+# VM config flags.
+ifeq ("$(CONFIGURATION)","debug")
+OFLAGS:= -g -O0 -fno-omit-frame-pointer
+DEBUGVM=-DDEBUGVM=1
+INTERPFLAGS:=-DAllocationCheckFiller=0xADD4E55 -D'VM_LABEL(foo)=0'
+else ifeq ("$(CONFIGURATION)","assert")
+OFLAGS:= -g -O1 -fno-omit-frame-pointer
+DEBUGVM=-DDEBUGVM=0
+INTERPFLAGS:=-DAllocationCheckFiller=0xADD4E55 -D'VM_LABEL(foo)=0'
+else # default CONFIGURATION=product
+OFLAGS:= -g -Os
+DEBUGVM=-DDEBUGVM=0 -DNDEBUG=1 # Define NDEBUG for production to exclude asserts
+INTERPFLAGS:=-D'VM_LABEL(foo)=0'
+endif
+
+TZ:=$(shell date +%Z)
+DEFS:=	$(COGDEFS) -DUSE_GLOBAL_STRUCT=0 -DNO_ISNAN=1 \
+		-DUSE_INLINE_MEMORY_ACCESSORS -D'TZ="$(TZ)"' \
+		$(INTERPFLAGS)
+XDEFS:=	-DSQUEAK_BUILTIN_PLUGIN
+CFLAGS:= $(OFLAGS) $(COGDEFS) $(DEBUGVM) $(DEFS) $(XDEFS)
+INCLUDES:= $(addprefix -I,. $(SRCDIRS))
+
+#############################################################################
+# Linker settings
+#
+LD:=	 gcc
+
+#############################################################################
+#
+SVNREV:= $(shell sed -e "s/^static.*SvnRawRevisionString.*Rev: \([0-9][0-9]*\).*/\\1/p" -e d $(PLATDIR)/Cross/vm/sqSCCSVersion.h)
+
+
+#############################################################################
+# Common build rules
+#
+include $(COMMONDIR)/Makefile.rules
+
+svnver:
+	@-echo $(SVNREV)
+
+getversion: $(OSXCOMMONDIR)/version.c $(CROSSDIR)/sqSCCSVersion.h
+getversion: $(OSXCOMMONDIR)/version.c deps/version.d $(CROSSDIR)/sqSCCSVersion.h
+	$(CC) -x c -DVERSION_PROGRAM=1 $(ALLFLAGS) $(INCLUDES) $< -o $@
+	$(POSTCOMPILE)
+
+-include deps/version.d
+	
+product:;
+	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=product $(@,product=) default
+
+assert:
+	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=assert $(@,assert=) default
+
+debug:
+	$(MAKE) -f $(MAKEFILE_LIST) CONFIGURATION=debug $(@,debug=) default
+
+cleanallvm:	cleanvm cleanvmast cleanvmdbg cleangv
+
+cleanvm:
+	rm -rf sqNamedPrims.h build deps
+
+cleanvmast:
+	rm -rf sqNamedPrims.h buildast
+
+cleanvmdbg:
+	rm -rf sqNamedPrims.h builddbg
+
+cleangv:
+	rm -rf getversion getversion.*
+
+print-source:
+	@echo ---------------- Makefile.vm sources ------------------
+	@echo CROSSSRC=$(CROSSSRC)
+	@echo OSXSRC=$(OSXSRC)
+	@echo MAKERSRC=$(MAKERSRC)
+	@echo UNIXSRC=$(UNIXSRC)
+	@echo VMSRC=$(VMSRC)
+
+print-settings:
+	@echo ---------------- Makefile.vm settings ------------------
+	@echo CONFIGURATION=$(CONFIGURATION)
+	@echo VPATH=$(VPATH)
+	@echo INCLUDES=$(INCLUDES)
+	@echo CFLAGS=$(CFLAGS)
+	@echo INTERNAL_PLUGINS=$(INTERNAL_PLUGINS)
+	@echo EXTERNAL_PLUGINS=$(EXTERNAL_PLUGINS)
+	@echo OBJDIR=$(OBJDIR)
+	@echo LIBS=$(LIBS)
+	@echo BUNDLES=$(BUNDLES)
+	@echo MAKEFILE=$(MAKEFILE)
+	@echo -----------------------------------------------------
+
+print-objects:
+	@echo ---------------- Makefile.vm objects ------------------
+	@echo VMOBJ=$(VMOBJ)
+	@echo -----------------------------------------------------
+
+vm:	$(OBJDIR)/$(VM)
+
+$(OBJDIR)/$(VM): $(OBJDIR) $(VMOBJ) $(LIBS)
+	$(CC) -arch $(TARGET_ARCH) -o $(OBJDIR)/version.o $(CFLAGS) $(INCLUDES) $(DEFS) -c $(OSXCOMMONDIR)/version.c
+	$(CC) -arch $(TARGET_ARCH) -isysroot $(SDK) $(LDFLAGS) $(FRAMEWORKS) \
+			-o $(OBJDIR)/$(VM) $(VMOBJ) $(LIBS)
+
+$(OBJDIR):
+	@-mkdir -p $(BLDDIR)
+	mkdir -p $(OBJDIR)
+ifneq ($(INTERNAL_PLUGINS),)
+	mkdir -p $(addprefix $(BLDDIR)/, $(INTERNAL_PLUGINS))
+endif
+ifneq ($(EXTERNAL_PLUGINS),)
+	mkdir -p $(addprefix $(BLDDIR)/, $(EXTERNAL_PLUGINS))
+endif
+
+#############################################################################
+# Building plugins
+#
+.PHONY: $(OBJDIR)/%.lib $(OBJDIR)/%.bundle %.lib %.bundle
+
+plugin-makefile = $(shell test -f $(OSXPLUGINSDIR)/$(1)/Makefile && echo $(OSXPLUGINSDIR)/$(1)/Makefile || echo $(COMMONDIR)/Makefile.plugin)
+
+# Internal plugin.  Build as lib then link in lib
+# Check for Makefile in iOS plugins directory otherwise use default Makefile
+# N.B.  PLATDIR *must* be a relative path for this to work
+$(OBJDIR)/%.lib: getversion $(call plugin-makefile,$(*F))
+	@-mkdir -p $(BLDDIR)/$(*F)
+	test $@ -ot $(call plugin-makefile,$(*F)) && rm $(OBJDIR)/$(*F).lib || true
+	$(MAKE) $(MFLAGS) BUILD=$(BUILD) \
+		-f $(call plugin-makefile,$(*F)) MAKEFILE=$(call plugin-makefile,$(*F)) \
+		CONFIGURATION=$(CONFIGURATION) ARCH=$(TARGET_ARCH) \
+		PLATDIR=$(PLATDIR) BASEDIR=$(BASEDIR) \
+		PLUGINSRCDIR=$(PLUGINSRCDIR) VMSRCDIR=$(VMSRCDIR) \
+		LIBNAME=$(*F) COGDEFS="$(COGDEFS)" XDEFS=-DSQUEAK_BUILTIN_PLUGIN \
+		$(PLUGINHACK) \
+		$(OBJDIR)/$(*F).lib
+
+# It would be nice to have this abbreviation but it creates havoc eem 2/2016
+#%.lib: $(OBJDIR)/%.lib
+#	make $(MAKEFLAGS) $<
+
+# External plugin.  Build as bundle and copy to vm dir ($(OBJDIR)).
+# Check for Makefile in iOS plugins directory otherwise use default Makefile
+$(OBJDIR)/%.bundle:	getversion $(call plugin-makefile,$(*F))
+	@-mkdir -p $(BLDDIR)/$(*F)
+	test $@ -ot $(call plugin-makefile,$(*F)) && rm $(OBJDIR)/$(*F).lib || true
+	$(MAKE) $(MFLAGS) BUILD=$(BUILD) \
+		-f $(call plugin-makefile,$(*F)) MAKEFILE=$(call plugin-makefile,$(*F)) \
+		CONFIGURATION=$(CONFIGURATION) ARCH=$(TARGET_ARCH) \
+		PLATDIR=$(PLATDIR) BASEDIR=$(BASEDIR) \
+		PLUGINSRCDIR=$(PLUGINSRCDIR) VMSRCDIR=$(VMSRCDIR) \
+		LIBNAME=$(*F) COGDEFS="$(COGDEFS)" \
+		$(PLUGINHACK) \
+		$(OBJDIR)/$(*F).bundle
+
+# It would be nice to have this abbreviation but it creates havoc eem 2/2016
+#%.bundle: $(OBJDIR)/%.bundle
+#	make $(MAKEFLAGS) $<
+
+#############################################################################
+# Extra specific dependencies
+#
+sqNamedPrims.h: plugins.int
+	$(COMMONDIR)/mkNamedPrims.sh plugins.int > sqNamedPrims.h
+
+$(OBJDIR)/sqNamedPrims.o:	sqNamedPrims.c sqNamedPrims.h

Deleted: branches/Cog/build.macos64x64/newspeak.cog.spur/CoreVM.plist
===================================================================
--- branches/Cog/build.macos64x64/newspeak.cog.spur/CoreVM.plist	2016-02-11 20:07:36 UTC (rev 3584)
+++ branches/Cog/build.macos64x64/newspeak.cog.spur/CoreVM.plist	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,233 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>CFBundleDevelopmentRegion</key>
-	<string>English</string>
-	<key>CFBundleDocumentTypes</key>
-	<array>
-		<dict>
-			<key>CFBundleTypeExtensions</key>
-			<array>
-				<string>image</string>
-			</array>
-			<key>CFBundleTypeIconFile</key>
-			<string>Newspeak Virtual Machine.icns</string>
-			<key>CFBundleTypeName</key>
-			<string>Newspeak Image File</string>
-			<key>CFBundleTypeOSTypes</key>
-			<array>
-				<string>STim</string>
-			</array>
-			<key>CFBundleTypeRole</key>
-			<string>Editor</string>
-		</dict>
-		<dict>
-			<key>CFBundleTypeExtensions</key>
-			<array>
-				<string>sources</string>
-				<string>ns0</string>
-				<string>ns1</string>
-				<string>ns2</string>
-				<string>ns3</string>
-				<string>ns4</string>
-				<string>ns5</string>
-				<string>ns6</string>
-			</array>
-			<key>CFBundleTypeIconFile</key>
-			<string>Newspeak Virtual Machine.icns</string>
-			<key>CFBundleTypeName</key>
-			<string>Newspeak Sources File</string>
-			<key>CFBundleTypeOSTypes</key>
-			<array>
-				<string>STso</string>
-			</array>
-			<key>CFBundleTypeRole</key>
-			<string>Editor</string>
-		</dict>
-		<dict>
-			<key>CFBundleTypeExtensions</key>
-			<array>
-				<string>changes</string>
-			</array>
-			<key>CFBundleTypeIconFile</key>
-			<string>Newspeak Virtual Machine.icns</string>
-			<key>CFBundleTypeName</key>
-			<string>Newspeak Changes File</string>
-			<key>CFBundleTypeOSTypes</key>
-			<array>
-				<string>STch</string>
-			</array>
-			<key>CFBundleTypeRole</key>
-			<string>Editor</string>
-		</dict>
-		<dict>
-			<key>CFBundleTypeExtensions</key>
-			<array>
-				<string>bundle</string>
-			</array>
-			<key>CFBundleTypeIconFile</key>
-			<string>SqueakPlugin.icns</string>
-			<key>CFBundleTypeName</key>
-			<string>Squeak Plugin</string>
-			<key>CFBundleTypeOSTypes</key>
-			<array>
-				<string>BNDL</string>
-			</array>
-			<key>CFBundleTypeRole</key>
-			<string>Editor</string>
-		</dict>
-	</array>
-	<key>UTExportedTypeDeclarations</key>
-	<array>
-		<dict>
-			<key>UTTypeConformsTo</key>
-			<array>
-				<string>public.data</string>
-			</array>
-			<key>UTTypeDescription</key>
-			<string>Newspeak Virtual Machine Image</string>
-			<key>UTTypeIconFile</key>
-			<string>NewspeakDocuments.icns</string>
-			<key>UTTypeIdentifier</key>
-			<string>org.newspeakplatform.image-data</string>
-			<key>UTTypeTagSpecification</key>
-			<dict>
-				<key>public.filename-extension</key>
-				<array>
-					<string>image</string>
-				</array>
-			</dict>
-		</dict>
-		<dict>
-			<key>UTTypeConformsTo</key>
-			<array>
-				<string>public.text</string>
-			</array>
-			<key>UTTypeDescription</key>
-			<string>Newspeak Virtual Machine Changes</string>
-			<key>UTTypeIconFile</key>
-			<string>NewspeakDocuments.icns</string>
-			<key>UTTypeIdentifier</key>
-			<string>org.newspeakplatform.changes-data</string>
-			<key>UTTypeTagSpecification</key>
-			<dict>
-				<key>public.filename-extension</key>
-				<array>
-					<string>changes</string>
-				</array>
-			</dict>
-		</dict>
-	</array>		
-	<key>CFBundleExecutable</key>
-	<string>Newspeak Virtual Machine</string>
-	<key>CFBundleGetInfoString</key>
-	<string>Newspeak Cog Spur Virtual Machine 5.0.0 http://newspeaklanguage.org</string><!--version-->
-	<key>CFBundleShortVersionString</key>
-	<string>Newspeak Cog Spur Virtual Machine 5.0.0</string><!--version-->
-	<key>CFBundleVersion</key>
-	<string>5.0.0</string><!--version-->
-	<key>CFBundleIconFile</key>
-	<string>Newspeak Virtual Machine.icns</string>
-	<key>CFBundleIdentifier</key>
-	<string>org.bracha.Newspeak</string>
-	<key>CFBundleInfoDictionaryVersion</key>
-	<string>6.0</string>
-	<key>CFBundleName</key>
-	<string>Newspeak Virtual Machine</string>
-	<key>CFBundlePackageType</key>
-	<string>APPL</string>
-	<key>CFBundleSignature</key>
-	<string>NSVM</string>
-	<key>CGDisableCoalescedUpdates</key>
-	<true/>
-	<key>LSBackgroundOnly</key>
-	<false/>
-	<key>LSMinimumSystemVersion</key>
-	<string>10.5.0</string>
-	<key>SqueakBrowserMouseCmdButton1</key>
-	<integer>3</integer>
-	<key>SqueakBrowserMouseCmdButton2</key>
-	<integer>3</integer>
-	<key>SqueakBrowserMouseCmdButton3</key>
-	<integer>2</integer>
-	<key>SqueakBrowserMouseControlButton1</key>
-	<integer>1</integer>
-	<key>SqueakBrowserMouseControlButton2</key>
-	<integer>3</integer>
-	<key>SqueakBrowserMouseControlButton3</key>
-	<integer>2</integer>
-	<key>SqueakBrowserMouseNoneButton1</key>
-	<integer>1</integer>
-	<key>SqueakBrowserMouseNoneButton2</key>
-	<integer>3</integer>
-	<key>SqueakBrowserMouseNoneButton3</key>
-	<integer>2</integer>
-	<key>SqueakBrowserMouseOptionButton1</key>
-	<integer>2</integer>
-	<key>SqueakBrowserMouseOptionButton2</key>
-	<integer>3</integer>
-	<key>SqueakBrowserMouseOptionButton3</key>
-	<integer>2</integer>
-	<key>SqueakDebug</key>
-	<integer>0</integer>
-	<key>SqueakEncodingType</key>
-	<string>UTF-8</string>
-	<key>SqueakExplicitWindowOpenNeeded</key>
-	<false/>
-	<key>SqueakFloatingWindowGetsFocus</key>
-	<true/>
-	<key>SqueakHasQuitWithoutSaving</key>
-	<false/>
-	<key>SqueakImageName</key>
-	<string>Newspeak.image</string>
-	<key>SqueakMaxHeapSize</key>
-	<integer>1073741824</integer>
-	<key>SqueakMouseCmdButton1</key>
-	<integer>3</integer>
-	<key>SqueakMouseCmdButton2</key>
-	<integer>3</integer>
-	<key>SqueakMouseCmdButton3</key>
-	<integer>2</integer>
-	<key>SqueakMouseControlButton1</key>
-	<integer>1</integer>
-	<key>SqueakMouseControlButton2</key>
-	<integer>3</integer>
-	<key>SqueakMouseControlButton3</key>
-	<integer>2</integer>
-	<key>SqueakMouseNoneButton1</key>
-	<integer>1</integer>
-	<key>SqueakMouseNoneButton2</key>
-	<integer>3</integer>
-	<key>SqueakMouseNoneButton3</key>
-	<integer>2</integer>
-	<key>SqueakMouseOptionButton1</key>
-	<integer>2</integer>
-	<key>SqueakMouseOptionButton2</key>
-	<integer>3</integer>
-	<key>SqueakMouseOptionButton3</key>
-	<integer>2</integer>
-	<key>SqueakPluginsBuiltInOrLocalOnly</key>
-	<false/>
-	<key>SqueakUIFlushPrimaryDeferNMilliseconds</key>
-	<integer>20</integer>
-	<key>SqueakUIFlushSecondaryCheckForPossibleNeedEveryNMilliseconds</key>
-	<integer>20</integer>
-	<key>SqueakUIFlushSecondaryCleanupDelayMilliseconds</key>
-	<integer>25</integer>
-	<key>SqueakUIFlushUseHighPercisionClock</key>
-	<true/>
-	<key>SqueakUnTrustedDirectory</key>
-	<string>~/Library/Preferences/Newspeak/Internet/Untrusted/</string>
-	<key>SqueakWindowAttribute</key>
-	<data>
-	ggAAHw==
-	</data>
-	<key>SqueakWindowHasTitle</key>
-	<true/>
-	<key>SqueakWindowType</key>
-	<integer>6</integer>
-	<key>SqueakVMPathAnswersResources</key>
-	<true/>
-</dict>
-</plist>

Added: branches/Cog/build.macos64x64/newspeak.cog.spur/Makefile
===================================================================
--- branches/Cog/build.macos64x64/newspeak.cog.spur/Makefile	                        (rev 0)
+++ branches/Cog/build.macos64x64/newspeak.cog.spur/Makefile	2016-02-11 20:54:30 UTC (rev 3585)
@@ -0,0 +1,8 @@
+##############################################################################
+# Makefile for Mac OS X Cog Spur Newspeak Cocoa VM using clang and gnu make 3.81
+# Do make init to allow make -n to function.
+#
+
+VMSRCDIR:= ../../nsspursrc/vm
+
+include ../common/Makefile.app.newspeak

Deleted: branches/Cog/build.macos64x64/newspeak.cog.spur/makeclean
===================================================================
--- branches/Cog/build.macos64x64/newspeak.cog.spur/makeclean	2016-02-11 20:07:36 UTC (rev 3584)
+++ branches/Cog/build.macos64x64/newspeak.cog.spur/makeclean	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-rm -r ./build ./*/build ./plugin-projects/*/build ./Fast.app ./Debug.app ./Assert.app ./Newspeak\ Virtual\ Machine.app

Deleted: branches/Cog/build.macos64x64/newspeak.cog.spur/makevm
===================================================================
--- branches/Cog/build.macos64x64/newspeak.cog.spur/makevm	2016-02-11 20:07:36 UTC (rev 3584)
+++ branches/Cog/build.macos64x64/newspeak.cog.spur/makevm	2016-02-11 20:54:30 UTC (rev 3585)
@@ -1,96 +0,0 @@
-#!/bin/bash
-# Build a "complete" Mac VM consisting of CoreVM + Plugins.
-# By default build the Deployment configuration into Newspeak Virtual Machine.app.
-IFS='	
-'
-BUILD_CONFIGURATION=Deployment
-NSD_BUILD_CONFIGURATION=Deployment
-XCD_BUILD_CONFIGURATION=Release
-DEST="Newspeak Virtual Machine.app"
-OBJDIR="Newspeak Virtual Machine.build/Objects-normal/i386"
-CONF=FAST
-KEEP=
-
-USAGE="usage: `basename $0` -[adskh?]"
-
-while getopts 'adskh?' opt $@; do
-	case $opt in
-	a)		BUILD_CONFIGURATION=Assert
-			NSD_BUILD_CONFIGURATION=Development
-			XCD_BUILD_CONFIGURATION=Debug
-			CONF=ASSERT
-			DEST="Assert.app";;
-	d)		BUILD_CONFIGURATION=Development
-			NSD_BUILD_CONFIGURATION=Development
-			XCD_BUILD_CONFIGURATION=Debug
-			CONF=DEBUG
-			DEST="Debug.app";;
-	s)		BUILD_CONFIGURATION=DeploymentSymbols
-			DEST="Fast.app";;
-	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 '  -s: compile DeploymentSymbols configuration in Fast.app for partial debugging'
-			echo '  -k: keep (do not delete) the existing Newspeak Virtual Machine.app prior to the build'
-			echo '	-h: display this help'
-			exit 0;;
-	esac
-done
-
-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 SqueakFFIPrims 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 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/CoreVM.build/$BUILD_CONFIGURATION/$OBJDIR/version.o\"
-rm "build/CoreVM.build/$BUILD_CONFIGURATION/$OBJDIR/version.o"
-echo CoreVM xcodebuild -project CoreVM.xcodeproj -configuration $BUILD_CONFIGURATION
-export TZ="`date +%Z`"
-xcodebuild -project CoreVM.xcodeproj -configuration $BUILD_CONFIGURATION
-if [ -d "$DEST" ]; then
-	mv build/$BUILD_CONFIGURATION/Newspeak\ Virtual\ Machine.app/* "$DEST"
-else
-	mv build/$BUILD_CONFIGURATION/Newspeak\ Virtual\ Machine.app "$DEST"
-fi
-../../scripts/versionInfoPlist ../../platforms CoreVM.plist "$DEST/Contents/Info.plist"
-ex -u NONE "+g/????/s/????/$CONF/" +w +q "$DEST/Contents/Info.plist"
-
-# 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"
-
-if false; then
-# Build the BochsIA32Plugin
-# N.B. To build the plugin you also have to build the Bochs libraries in
-# ../processors/IA32/bochs.  cd ../processors/IA32/bochs. Run conf.COG & makeem.
-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"
-fi
-
-# Build the UnixOSProcessPlugin
-echo UnixOSProcessPlugin xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project UnixOSProcessPlugin/UnixOSProcessPlugin.xcodeproj
-xcodebuild -configuration $XCD_BUILD_CONFIGURATION -project UnixOSProcessPlugin/UnixOSProcessPlugin.xcodeproj

@@ Diff output truncated at 50000 characters. @@


More information about the Vm-dev mailing list