[Vm-dev] [commit][3126] Add build directories linux32ARM squeak.stack.spur.

commits at squeakvm.org commits at squeakvm.org
Wed Nov 5 20:48:15 UTC 2014


Revision: 3126
Author:   eliot
Date:     2014-11-05 12:48:12 -0800 (Wed, 05 Nov 2014)
Log Message:
-----------
Add build directories linux32ARM squeak.stack.spur.
Update configure to build the UnicodePlugin on linux.
Include the Unicode plugin in linux Squeak VMs.
Update the linux HowToBuild instructions with info on loading support packages.
Thanks to Doug McPherson for getting all this to work.

Modified Paths:
--------------
    branches/Cog/build.linux32ARM/HowToBuild
    branches/Cog/build.linux32x86/HowToBuild
    branches/Cog/build.linux32x86/squeak.cog.spur/build/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.spur/build.assert/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.spur/build.assert.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.spur/build.debug/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.spur/build.debug.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.spur/build.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.assert/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.assert.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.debug/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.debug.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.itimerheartbeat/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.assert/plugins.ext
    branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.debug/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.spur/build/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.spur/build.assert/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.spur/build.debug/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.v3/build/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.v3/build.assert/plugins.ext
    branches/Cog/build.linux32x86/squeak.stack.v3/build.debug/plugins.ext
    branches/Cog/platforms/unix/config/configure
    branches/Cog/platforms/unix/plugins/UnicodePlugin/Makefile.inc
    branches/Cog/platforms/unix/plugins/UnicodePlugin/acinclude.m4

Added Paths:
-----------
    branches/Cog/build.linux32ARM/squeak.stack.spur/
    branches/Cog/build.linux32ARM/squeak.stack.spur/build/
    branches/Cog/build.linux32ARM/squeak.stack.spur/build/mvm
    branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.ext
    branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.int
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/mvm
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.ext
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.int
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/mvm
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.ext
    branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.int
    branches/Cog/build.linux32ARM/squeak.stack.spur/makeallclean
    branches/Cog/build.linux32ARM/squeak.stack.spur/makealldirty

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

Modified: branches/Cog/build.linux32ARM/HowToBuild
===================================================================
--- branches/Cog/build.linux32ARM/HowToBuild	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32ARM/HowToBuild	2014-11-05 20:48:12 UTC (rev 3126)
@@ -11,7 +11,8 @@
 	- How to configure and build a VM on Unix
 	- Testing an external plugin has completely linked
 	- Optimization level and gcc version (please read!)
-   - BitBlt optimizations on ARM
+	- BitBlt optimizations on ARM
+	- Installing support libraries
 
 
 Overview
@@ -80,7 +81,10 @@
 
 Building out of the box
 -----------------------
-Install the tools (gcc, X11-devel, etc (e.g. libpng, libX11 & libxt source)).
+Install the tools (gcc, X11-devel, etc, e.g. libpng, libuuid libX11 & libxt
+source). See "Installing support libraries" below.  If the configure step fails
+when "checking for C compiler default output file name", you have yet to install
+all the necessary support packages (e.g. libuuid).
 Then cd to the build directory of your choice, e.g.
 	build.linux32x86/squeak.cog.spur/build
 Then either remove any BochsIA32Plugin line from plugins.ext or build the
@@ -88,6 +92,9 @@
 Then execute
 	./mvm
 answering "y" to perform a clean build or "n" to rebuild without recionfiguring.
+Again, if the configure step fails when "checking for C compiler default output
+file name", you have yet to install all the necessary support (e.g. lubuuid).
+
 The subdirectories confrm to the production/assert/debug x itimer vs threaded
 heartbeat x single vs multi-threaded parts of the matrix described above.  For
 example, build.linux32x86/squeak.cog.v3 includes
@@ -145,7 +152,7 @@
 You'll also have to add the -m32 switch to all gcc & g++ invocations.  The
 easiest way to do this is to add CC="gcc -m32" & CXX="g++ -m32" to the configure
 script:
-     ../../platforms/unix/config/configure CC="gcc -m32" CXX="g++ -m32" --without-npsqueak CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread
+     ../../platforms/unix/config/configure CC="gcc -m32" CXX="g++ -m32" --without-npsqueak CFLAGS="-g -O2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread
 To run a 32-bit VM on a 64-bit OS, you'll also need the 32-bit libraries
 provided by the ia32-libs package.
 
@@ -179,16 +186,18 @@
 directory.  
 
 e.g.
-     ../../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread
+     ../../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread
      make install prefix=WhereYouWantTheVmToGo
 
 	N.B. If you're on a 64-bit linux read 3e below!!
 	N.B. On Ubuntu *do not* supply "LIBS=-lpthread -luuid", i.e. use
-     ../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0"
+     ../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0"
 
 
 N.B. The plugin set is defined by plugins.ext and plugins.int in the build dir.
 
+Be prepared to install libuuid support.  e.g. on CentOS 6.5 use
+sudo yum -y install libuuid-devel
 
 
 Testing an external plugin has completely linked
@@ -208,7 +217,7 @@
 -fcaller-saves
 
 So turn them off.  e.g.
-     ../../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -msse2 -fno-caller-saves -fno-partial-inlining -fno-tree-pre -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS="-lpthread -luuid"
+     ../../platforms/unix/config/configure --without-npsqueak CFLAGS="-g -O2 -fno-caller-saves -fno-partial-inlining -fno-tree-pre -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS="-lpthread -luuid"
 See http://smallissimo.blogspot.fr/2013/02/compiling-squeak-cog-virtual-machine-on.html
 
 There appear to be issues with 3.4.x gcc version on RedHat.  In particular
@@ -227,4 +236,20 @@
 asasm is included in Cog/build.linux32ARM/ as a pre-built binary. The Makefiles for BitBltPlugin and vm-display-X11 reference it directly.
 
 
+Installing support libraries
+----------------------------
+Different linux distributions have different mechanisms for loading packages.
+Here are some examples:
 
+CentOS
+sudo yum install cairo-devel
+sudo yum install pango-devel
+sudo yum install libuuid-devel
+sudo yum install libX11-devel
+sudo yum install mesa-libGL-devel 
+
+Ubuntu
+sudo apt-get install libcairo2-dev   
+sudo apt-get install libpango1.0-dev
+
+More advice and examples for other distros gratefully received.

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build/mvm
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build/mvm	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build/mvm	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Stack Spur VM and threaded heartbeat
+INSTALLDIR=stkspurlinuxhtARM
+# Some gcc versions create a broken VM using -O2
+case `gcc -v 2>&1 | grep version | sed 's/gcc version *//'` in
+3.4.*)	OPT="-g -O1 -DNDEBUG -DDEBUGVM=0 -DNO_VM_PROFILE=1";;
+*)		OPT="-g -O3 -DNDEBUG -DDEBUGVM=0 -DNO_VM_PROFILE=1";;
+esac
+
+if [ $# -ge 1 ]; then
+	INSTALLDIR="$1"; shift
+fi
+
+echo -n "clean? "
+read a
+case $a in
+n|no|N|NO)	echo "ok but this isn't safe!!";;
+*)			rm config.h; test -f Makefile && make reallyclean
+esac
+test -f config.h || ../../../platforms/unix/config/configure \
+   --with-vmversion=5.0 \
+	--with-src=spurstacksrc --with-plugins=src/plugins --disable-cogit \
+	--without-vm-display-fbdev --without-npsqueak --enable-fast-bitblt \
+	CC="gcc " \
+	CXX="g++ " \
+	CFLAGS="$OPT -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" \
+	LIBS="-lpthread -luuid" \
+	LDFLAGS=-Wl,-z,now
+rm -f vm/sqUnixMain.o # nuke version info
+rm -rf ../../../products/$INSTALLDIR
+# prefer make install prefix=`readlink -f \`pwd\`/../../../products/$INSTALLDIR`
+# but older linux readlinks lack the -f flag and Raspbian lacks `readlinks`
+make install prefix=`(cd ../../../;pwd)`/products/$INSTALLDIR 2>&1 | tee LOG


Property changes on: branches/Cog/build.linux32ARM/squeak.stack.spur/build/mvm
___________________________________________________________________
Added: svn:executable
   + *

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.ext
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.ext	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,9 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.ext
+EXTERNAL_PLUGINS = \
+LocalePlugin \
+SqueakFFIPrims \
+SqueakSSL \
+UnicodePlugin \
+UnixOSProcessPlugin \
+UUIDPlugin \
+XDisplayControlPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.int
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.int	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build/plugins.int	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,37 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.int
+INTERNAL_PLUGINS = \
+ADPCMCodecPlugin \
+AioPlugin \
+AsynchFilePlugin \
+B2DPlugin \
+BitBltPlugin \
+BMPReadWriterPlugin \
+CameraPlugin \
+ZipPlugin \
+DropPlugin \
+DSAPrims \
+FFTPlugin \
+FileCopyPlugin \
+FilePlugin \
+FloatArrayPlugin \
+FloatMathPlugin \
+JoystickTabletPlugin \
+JPEGReaderPlugin \
+JPEGReadWriter2Plugin \
+Klatt \
+LargeIntegers \
+Matrix2x3Plugin \
+MIDIPlugin \
+MiscPrimitivePlugin \
+Mpeg3Plugin \
+RePlugin \
+ScratchPlugin \
+SecurityPlugin \
+SerialPlugin \
+SocketPlugin \
+SoundCodecPrims \
+SoundGenerationPlugin \
+SoundPlugin \
+StarSqueakPlugin \
+SurfacePlugin \
+VMProfileLinuxSupportPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/mvm
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/mvm	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/mvm	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,29 @@
+#!/bin/bash
+# assert Stack Spur VM with VM profiler and threaded heartbeat
+INSTALLDIR=assert/stkspurlinuxhtARM
+OPT="-g3 -O1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -DDEBUGVM=0"
+
+if [ $# -ge 1 ]; then
+	INSTALLDIR="$1"; shift
+fi
+
+echo -n "clean? "
+read a
+case $a in
+n|no|N|NO)	echo "ok but this isn't safe!!";;
+*)			rm config.h; test -f Makefile && make reallyclean
+esac
+test -f config.h || ../../../platforms/unix/config/configure \
+   --with-vmversion=5.0 \
+	--with-src=spurstacksrc --with-plugins=src/plugins --disable-cogit \
+	--without-vm-display-fbdev --without-npsqueak --enable-fast-bitblt \
+	CC="gcc " \
+	CXX="g++ " \
+	CFLAGS="$OPT -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" \
+	LIBS="-lpthread -luuid" \
+	LDFLAGS=-Wl,-z,now
+rm -f vm/sqUnixMain.o # nuke version info
+rm -rf ../../../products/$INSTALLDIR
+# prefer make install prefix=`readlink -f \`pwd\`/../../../products/$INSTALLDIR`
+# but older linux readlinks lack the -f flag and Raspbian lacks `readlinks`
+make install prefix=`(cd ../../../;pwd)`/products/$INSTALLDIR 2>&1 | tee LOG


Property changes on: branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/mvm
___________________________________________________________________
Added: svn:executable
   + *

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.ext	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,8 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.ext
+EXTERNAL_PLUGINS = \
+LocalePlugin \
+SqueakFFIPrims \
+SqueakSSL \
+UnixOSProcessPlugin \
+UUIDPlugin \
+XDisplayControlPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.int
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.int	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.assert/plugins.int	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,36 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.int
+INTERNAL_PLUGINS = \
+ADPCMCodecPlugin \
+AioPlugin \
+AsynchFilePlugin \
+B2DPlugin \
+BitBltPlugin \
+BMPReadWriterPlugin \
+CroquetPlugin \
+ZipPlugin \
+DropPlugin \
+DSAPrims \
+FFTPlugin \
+FileCopyPlugin \
+FilePlugin \
+FloatArrayPlugin \
+FloatMathPlugin \
+JoystickTabletPlugin \
+JPEGReaderPlugin \
+JPEGReadWriter2Plugin \
+Klatt \
+LargeIntegers \
+Matrix2x3Plugin \
+MIDIPlugin \
+MiscPrimitivePlugin \
+Mpeg3Plugin \
+RePlugin \
+SecurityPlugin \
+SerialPlugin \
+SocketPlugin \
+SoundCodecPrims \
+SoundGenerationPlugin \
+SoundPlugin \
+StarSqueakPlugin \
+SurfacePlugin \
+VMProfileLinuxSupportPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/mvm
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/mvm	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/mvm	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,29 @@
+#!/bin/bash
+# debug Stack Spur VM with VM profiler and threaded heartbeat
+INSTALLDIR=debug/stkspurlinuxhtARM
+OPT="-g3 -O0 -DDEBUGVM=1"
+
+if [ $# -ge 1 ]; then
+	INSTALLDIR="$1"; shift
+fi
+
+echo -n "clean? "
+read a
+case $a in
+n|no|N|NO)	echo "ok but this isn't safe!!";;
+*)			rm config.h; test -f Makefile && make reallyclean
+esac
+test -f config.h || ../../../platforms/unix/config/configure \
+   --with-vmversion=5.0 \
+	--with-src=spurstacksrc --with-plugins=src/plugins --disable-cogit \
+	--without-vm-display-fbdev --without-npsqueak --enable-fast-bitblt \
+	CC="gcc " \
+	CXX="g++ " \
+	CFLAGS="$OPT -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" \
+	LIBS="-lpthread -luuid" \
+	LDFLAGS=-Wl,-z,now
+rm -f vm/sqUnixMain.o # nuke version info
+rm -rf ../../../products/$INSTALLDIR
+# prefer make install prefix=`readlink -f \`pwd\`/../../../products/$INSTALLDIR`
+# but older linux readlinks lack the -f flag and Raspbian lacks `readlinks`
+make install prefix=`(cd ../../../;pwd)`/products/$INSTALLDIR 2>&1 | tee LOG


Property changes on: branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/mvm
___________________________________________________________________
Added: svn:executable
   + *

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.ext	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,9 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.ext
+EXTERNAL_PLUGINS = \
+LocalePlugin \
+SqueakFFIPrims \
+SqueakSSL \
+UnixOSProcessPlugin \
+UUIDPlugin \
+UnicodePlugin \
+XDisplayControlPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.int
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.int	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/build.debug/plugins.int	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,36 @@
+# Copied, perhaps edited, from ../../src/examplePlugins.int
+INTERNAL_PLUGINS = \
+ADPCMCodecPlugin \
+AioPlugin \
+AsynchFilePlugin \
+B2DPlugin \
+BitBltPlugin \
+BMPReadWriterPlugin \
+CroquetPlugin \
+ZipPlugin \
+DropPlugin \
+DSAPrims \
+FFTPlugin \
+FileCopyPlugin \
+FilePlugin \
+FloatArrayPlugin \
+FloatMathPlugin \
+JoystickTabletPlugin \
+JPEGReaderPlugin \
+JPEGReadWriter2Plugin \
+Klatt \
+LargeIntegers \
+Matrix2x3Plugin \
+MIDIPlugin \
+MiscPrimitivePlugin \
+Mpeg3Plugin \
+RePlugin \
+SecurityPlugin \
+SerialPlugin \
+SocketPlugin \
+SoundCodecPrims \
+SoundGenerationPlugin \
+SoundPlugin \
+StarSqueakPlugin \
+SurfacePlugin \
+VMProfileLinuxSupportPlugin

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/makeallclean
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/makeallclean	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/makeallclean	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,6 @@
+#!/bin/sh
+trap 'exit 2' HUP INT PIPE TERM
+for d in `dirname $0`/build*; do
+	(cd $d
+	 echo y | ./mvm "$@")
+done


Property changes on: branches/Cog/build.linux32ARM/squeak.stack.spur/makeallclean
___________________________________________________________________
Added: svn:executable
   + *

Added: branches/Cog/build.linux32ARM/squeak.stack.spur/makealldirty
===================================================================
--- branches/Cog/build.linux32ARM/squeak.stack.spur/makealldirty	                        (rev 0)
+++ branches/Cog/build.linux32ARM/squeak.stack.spur/makealldirty	2014-11-05 20:48:12 UTC (rev 3126)
@@ -0,0 +1,6 @@
+#!/bin/sh
+trap 'exit 2' HUP INT PIPE TERM
+for d in `dirname $0`/build*; do
+	(cd $d
+	 echo n | ./mvm "$@")
+done


Property changes on: branches/Cog/build.linux32ARM/squeak.stack.spur/makealldirty
___________________________________________________________________
Added: svn:executable
   + *

Modified: branches/Cog/build.linux32x86/HowToBuild
===================================================================
--- branches/Cog/build.linux32x86/HowToBuild	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/HowToBuild	2014-11-05 20:48:12 UTC (rev 3126)
@@ -11,6 +11,7 @@
 	- How to configure and build a VM on Unix
 	- Testing an external plugin has completely linked
 	- Optimization level and gcc version (please read!)
+	- Installing support libraries
 
 
 Overview
@@ -79,7 +80,10 @@
 
 Building out of the box
 -----------------------
-Install the tools (gcc, X11-devel, etc (e.g. libpng, libX11 & libxt source)).
+Install the tools (gcc, X11-devel, etc, e.g. libpng, libuuid libX11 & libxt
+source). See "Installing support libraries" below.  If the configure step fails
+when "checking for C compiler default output file name", you have yet to install
+all the necessary support packages (e.g. libuuid).
 Then cd to the build directory of your choice, e.g.
 	build.linux32x86/squeak.cog.spur/build
 Then either remove any BochsIA32Plugin line from plugins.ext or build the
@@ -87,6 +91,9 @@
 Then execute
 	./mvm
 answering "y" to perform a clean build or "n" to rebuild without recionfiguring.
+Again, if the configure step fails when "checking for C compiler default output
+file name", you have yet to install all the necessary support (e.g. lubuuid).
+
 The subdirectories confrm to the production/assert/debug x itimer vs threaded
 heartbeat x single vs multi-threaded parts of the matrix described above.  For
 example, build.linux32x86/squeak.cog.v3 includes
@@ -218,3 +225,22 @@
 	gcc version 3.4.6 20060404 (Red Hat 3.4.6-10)
 using -O2 results in a VM that segfaults early in startup.  For these compilers
 it is probably wise to use -O1, even though -O3 seems to work.
+
+
+Installing support libraries
+----------------------------
+Different linux distributions have different mechanisms for loading packages.
+Here are some examples:
+
+CentOS
+sudo yum install cairo-devel
+sudo yum install pango-devel
+sudo yum install libuuid-devel
+sudo yum install libX11-devel
+sudo yum install mesa-libGL-devel 
+
+Ubuntu
+sudo apt-get install libcairo2-dev   
+sudo apt-get install libpango1.0-dev
+
+More advice and examples for other distros gratefully received.

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build.assert/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build.assert.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build.assert.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build.assert.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build.debug/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build.debug.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build.debug.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build.debug.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.spur/build.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.spur/build.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.spur/build.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.assert/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.assert.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.assert.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.assert.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.debug/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.debug.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.debug.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.debug.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.itimerheartbeat/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.itimerheartbeat/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.itimerheartbeat/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.assert/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.debug/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.cog.v3/build.multithreaded.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -5,6 +5,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.spur/build/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.spur/build/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.spur/build/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.spur/build.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.spur/build.assert/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.spur/build.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.spur/build.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.spur/build.debug/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.spur/build.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.v3/build/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.v3/build/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.v3/build/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.v3/build.assert/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.v3/build.assert/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.v3/build.assert/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin

Modified: branches/Cog/build.linux32x86/squeak.stack.v3/build.debug/plugins.ext
===================================================================
--- branches/Cog/build.linux32x86/squeak.stack.v3/build.debug/plugins.ext	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/build.linux32x86/squeak.stack.v3/build.debug/plugins.ext	2014-11-05 20:48:12 UTC (rev 3126)
@@ -4,6 +4,7 @@
 SqueakFFIPrims \
 SqueakSSL \
 LocalePlugin \
+UnicodePlugin \
 UnixOSProcessPlugin \
 UUIDPlugin \
 XDisplayControlPlugin


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Tue Nov  4 17:11:21 PST 2014
   + Wed Nov  5 12:46:58 PST 2014

Modified: branches/Cog/platforms/unix/config/configure
===================================================================
--- branches/Cog/platforms/unix/config/configure	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/platforms/unix/config/configure	2014-11-05 20:48:12 UTC (rev 3126)
@@ -28311,6 +28311,8 @@
 
 echo "$as_me:$LINENO: checking for PangoCairo libraries" >&5
 echo $ECHO_N "checking for PangoCairo libraries... $ECHO_C" >&6
+save_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include"
 cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
 _ACEOF
@@ -28367,6 +28369,7 @@
 
 fi
 rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+CPPFLAGS="$save_CPPFLAGS"
 if test "${plibs}"; then
   llibs="${LIBS}"
   for l in ${plibs}; do

Modified: branches/Cog/platforms/unix/plugins/UnicodePlugin/Makefile.inc
===================================================================
--- branches/Cog/platforms/unix/plugins/UnicodePlugin/Makefile.inc	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/platforms/unix/plugins/UnicodePlugin/Makefile.inc	2014-11-05 20:48:12 UTC (rev 3126)
@@ -1,2 +1,2 @@
-XCPPFLAGS=	-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0  -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include
-XLDFLAGS= -lpangocairo-1.0 -lcairo -lpango-1.0 -lgobject-2.0 -lglib-2.0
+XCPPFLAGS=	-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0  -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include
+XLDFLAGS= -lpangocairo-1.0 -lcairo -lpango-1.0 -lgobject-2.0 -lglib-2.0

Modified: branches/Cog/platforms/unix/plugins/UnicodePlugin/acinclude.m4
===================================================================
--- branches/Cog/platforms/unix/plugins/UnicodePlugin/acinclude.m4	2014-11-05 01:12:31 UTC (rev 3125)
+++ branches/Cog/platforms/unix/plugins/UnicodePlugin/acinclude.m4	2014-11-05 20:48:12 UTC (rev 3126)
@@ -1,9 +1,12 @@
-# -*- sh -*-
-
-AC_MSG_CHECKING([for PangoCairo libraries])
-AC_TRY_COMPILE([#include <pango/pangocairo.h>],[{}],[
-  AC_MSG_RESULT(yes)
-],[
-  AC_MSG_RESULT(no)
-  AC_PLUGIN_DISABLE
-])
+# -*- sh -*-
+
+AC_MSG_CHECKING([for PangoCairo libraries])
+save_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include"
+AC_TRY_COMPILE([#include <pango/pangocairo.h>],[{}],[
+  AC_MSG_RESULT(yes)
+],[
+  AC_MSG_RESULT(no)
+  AC_PLUGIN_DISABLE
+])
+CPPFLAGS="$save_CPPFLAGS"



More information about the Vm-dev mailing list