[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