[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