diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 000000000..d5dfaab84
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "Tools/ojunit"]
+ path = Tools/ojunit
+ url = git://github.com/280north/ojunit.git
diff --git a/Rakefile b/Rakefile
index 0522a92ec..e9979f9f7 100644
--- a/Rakefile
+++ b/Rakefile
@@ -16,6 +16,9 @@ end
$DEBUG_ENV = File.join($BUILD_DIR, 'Debug', 'env')
$RELEASE_ENV = File.join($BUILD_DIR, 'Release', 'env')
+$DOXYGEN_CONFIG = File.join('Tools', 'Documentation', 'Cappuccino.doxygen')
+$DOCUMENTATION_BUILD = File.join($BUILD_DIR, 'Documentation')
+
$TOOLS_README = File.join('Tools', 'READMEs', 'TOOLS-README')
$TOOLS_EDITORS = File.join('Tools', 'Editors')
$TOOLS_INSTALLER = File.join('Tools', 'Install', 'install-tools')
@@ -71,16 +74,19 @@ task :install => [:downloads] do
system %{cd #{$TOOLS_DOWNLOAD} && sudo sh ./install-tools }
end
-=begin
-TODO: ojunit stuff:
+task :test => [:build] do
+ tests = "'" + FileList['Tests/**/*.j'].join("' '") + "'"
+ system %{ojtest #{tests} }
+end
-
-
-
-
-
-
-
+task :docs do
+ system %{doxygen #{$DOXYGEN_CONFIG} }
+ rm_rf $DOCUMENTATION_BUILD
+ mv "Documentation", $DOCUMENTATION_BUILD
+ rm "debug.txt"
+end
+
+=begin
TODO: documentation
diff --git a/Tools/Rakefile b/Tools/Rakefile
index f0e6aa416..2938ea2ea 100644
--- a/Tools/Rakefile
+++ b/Tools/Rakefile
@@ -4,7 +4,7 @@ require 'rake'
require '../common'
-subprojects = %w{bake capp nib2cib press}
+subprojects = %w{bake capp nib2cib press ojunit}
%w(build clean clobber).each do |task_name|
task task_name do
diff --git a/Tools/ojunit b/Tools/ojunit
new file mode 160000
index 000000000..bcd28cfeb
--- /dev/null
+++ b/Tools/ojunit
@@ -0,0 +1 @@
+Subproject commit bcd28cfebe29bd1556636382f6558676a2f9c6eb
diff --git a/Tools/ojunit/README b/Tools/ojunit/README
deleted file mode 100644
index ae921e68f..000000000
--- a/Tools/ojunit/README
+++ /dev/null
@@ -1,7 +0,0 @@
-OJUnit resides in a separate repository. This build.xml pulls it from that repo:
-
- git://github.com/280north/ojunit.git
-
-Project page:
-
- http://github.com/280north/ojunit
\ No newline at end of file
diff --git a/Tools/ojunit/build.xml b/Tools/ojunit/build.xml
deleted file mode 100644
index e5aaa20cf..000000000
--- a/Tools/ojunit/build.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Tools/ojunit/ojtest b/Tools/ojunit/ojtest
deleted file mode 100644
index 2bc2b99e6..000000000
--- a/Tools/ojunit/ojtest
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-
-# if OBJJ_HOME isn't set, try to determine it
-if [ -z $OBJJ_HOME ]; then
- # get path of the executable
- SELF_PATH=$(cd -P -- "$(dirname -- "$0")" && pwd -P) && SELF_PATH=$SELF_PATH/$(basename -- "$0")
-
- # resolve symlinks
- if [ -h $SELF_PATH ]; then
- SELF_PATH=`readlink $SELF_PATH`
- fi
-
- # get second ancestor directory
- SELF_DIR=`dirname $SELF_PATH`
- export OBJJ_HOME=`dirname $SELF_DIR`
-
- # check to ensure it exists, print message
- if [ -d $OBJJ_HOME ]; then
- echo "OBJJ_HOME not set, defaulting to $OBJJ_HOME" 1>&2
- else
- echo "OBJJ_HOME not set, default at $OBJJ_HOME doesn't exist, exiting" 1>&2
- exit 2
- fi
-fi
-
-OBJJ_LIB="$OBJJ_HOME/lib"
-
-OJTEST="$OBJJ_LIB/ojunit/OJTestRunnerText.j"
-
-# convert paths for Cygwin
-if [[ `uname` == CYGWIN* ]]; then
- OBJJ_HOME=`cygpath -w "$OBJJ_HOME"`
- OJTEST=`cygpath -w "$OJTEST"`
-fi
-
-objj $OJTEST $@