diff --git a/antlib.xml b/antlib.xml
index eaa140a..b396f0f 100644
--- a/antlib.xml
+++ b/antlib.xml
@@ -20,11 +20,17 @@
     <scriptdef name="generate" language="javascript">
         <element name="fileset" type="fileset"/>
         <attribute name="destDir"/>
+        <attribute name="xookidir"/>
         <attribute name="checkUpToDate"/>
         <attribute name="printerFriendly"/>
         <![CDATA[
         importClass(java.io.File);
 
+        var xookidir = attributes.get("xookidir");
+        if (xookidir == null) {
+            xookidir = project.getProperty("basedir") + "/xooki";
+        }
+
         filesets = elements.get("fileset")
         for (j = 0; j < filesets.size(); j++) {
             fs = filesets.get(j);
@@ -62,7 +68,7 @@
                 exec.setDir(new File(basedir));
                 exec.setExecutable("jrunscript");
                 exec.setTaskName("generate");
-                exec.createArg().setValue(srcDir+"/xooki/xooki.js");
+                exec.createArg().setValue(xookidir + "/xooki.js");
                 exec.createArg().setValue(filename);
                 exec.createArg().setValue(attributes.get("destdir") + "/" + filepath);
                 if (attributes.get("printerfriendly") == "true") {
