diff --git a/src/all-nacl.bash b/src/all-nacl.bash
old mode 100644
new mode 100755
index b022b4341e..dce9e62545
--- a/src/all-nacl.bash
+++ b/src/all-nacl.bash
@@ -5,6 +5,9 @@
# TODO(rsc): delete in favor of all.bash once nacl support is complete
+export GOARCH=386
+export GOOS=nacl
+
set -e
bash make.bash
@@ -22,6 +25,14 @@ make install
make install
) || exit $?
+(xcd pkg/exp/4s
+make
+) || exit $?
+
+(xcd pkg/exp/spacewar
+make
+) || exit $?
+
(xcd ../test
./run-nacl
) || exit $?
diff --git a/src/make.bash b/src/make.bash
index c3e7c6c257..eb537eae97 100755
--- a/src/make.bash
+++ b/src/make.bash
@@ -82,7 +82,7 @@ bash clean.bash
for i in lib9 libbio libmach cmd pkg libcgo cmd/cgo cmd/ebnflint cmd/godoc cmd/gofmt cmd/goyacc cmd/hgpatch
do
case "$i-$GOOS" in
- libcgo-nacl)
+ libcgo-nacl | cmd/*-nacl)
;;
*)
# The ( ) here are to preserve the current directory
diff --git a/src/pkg/Makefile b/src/pkg/Makefile
index dd2a8584e8..7643bee955 100644
--- a/src/pkg/Makefile
+++ b/src/pkg/Makefile
@@ -50,6 +50,7 @@ DIRS=\
encoding/pem\
exec\
exp/datafmt\
+ exp/draw\
exp/eval\
exp/exception\
exp/iterable\
@@ -105,6 +106,7 @@ DIRS=\
NOTEST=\
debug/proc\
+ exp/draw\
go/ast\
go/doc\
go/token\
diff --git a/src/pkg/exp/4s/4s.go b/src/pkg/exp/4s/4s.go
index f230572016..ffd9d53705 100644
--- a/src/pkg/exp/4s/4s.go
+++ b/src/pkg/exp/4s/4s.go
@@ -5,6 +5,8 @@
// This is a simple demo of Go running under Native Client.
// It is a tetris clone built on top of the exp/nacl/av and exp/draw
// packages.
+//
+// See ../nacl/README for how to run it.
package main
import (
diff --git a/src/pkg/exp/4s/4s.html b/src/pkg/exp/4s/4s.html
index 3a4a3956ab..924f8b1182 100644
--- a/src/pkg/exp/4s/4s.html
+++ b/src/pkg/exp/4s/4s.html
@@ -1,10 +1,26 @@
-
-
-Go in Native Client
-
-
-games/4s
-