Index: trunk/ippTools/src/disttool.c
===================================================================
--- trunk/ippTools/src/disttool.c	(revision 26005)
+++ trunk/ippTools/src/disttool.c	(revision 26015)
@@ -371,10 +371,11 @@
                 new_label,
                 outroot,
+                NULL,     // outdir
                 clean,
                 no_magic,
                 "new",
-                NULL,   // time_stamp
+                NULL,    // time_stamp
                 0,       // fault
-                set_note    // note does not propagate
+                set_note // note does not propagate
                 );
 
@@ -430,4 +431,5 @@
     PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false);
     PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false);
+    PXOPT_LOOKUP_STR(outdir, config->args, "-set_outdir", false, false);
     PXOPT_LOOKUP_S16(fault, config->args, "-fault", false, false);
 
@@ -440,4 +442,7 @@
     psString query = psStringCopy("UPDATE distRun SET time_stamp = UTC_TIMESTAMP()");
 
+    if (outdir) {
+        psStringAppend(&query, " , outdir = '%s'", outdir);
+    }
     if (state) {
         psStringAppend(&query, " , state = '%s'", state);
@@ -652,7 +657,8 @@
     PXOPT_LOOKUP_S32(bytes, config->args, "-bytes", require_fileinfo, false);
     PXOPT_LOOKUP_STR(md5sum, config->args, "-md5sum", require_fileinfo, false);
+    PXOPT_LOOKUP_STR(outdir, config->args, "-outdir", require_fileinfo, false);
     PXOPT_LOOKUP_STR(name, config->args, "-name", require_fileinfo, false);
 
-    if (!distComponentInsert(config->dbh, dist_id, component, bytes, md5sum, "full", name, fault)) {
+    if (!distComponentInsert(config->dbh, dist_id, component, bytes, md5sum, "full", outdir, name, fault)) {
         psError(PS_ERR_UNKNOWN, false, "database error");
         return false;
Index: trunk/ippTools/src/disttoolConfig.c
===================================================================
--- trunk/ippTools/src/disttoolConfig.c	(revision 26005)
+++ trunk/ippTools/src/disttoolConfig.c	(revision 26015)
@@ -70,4 +70,5 @@
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "new value for state", NULL);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "new value for label", NULL);
+    psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_outdir", 0, "new value for outdir", NULL);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-stage",     0, "value for stage", NULL);
     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state",     0, "value for state", NULL);
@@ -98,4 +99,5 @@
     psMetadataAddS64(addprocessedcomponentArgs, PS_LIST_TAIL, "-dist_id", 0, "define dist_id", 0);
     psMetadataAddStr(addprocessedcomponentArgs, PS_LIST_TAIL, "-component", 0, "define component (required)", NULL);
+    psMetadataAddStr(addprocessedcomponentArgs, PS_LIST_TAIL, "-outdir", 0, "define output directory", NULL);
     psMetadataAddStr(addprocessedcomponentArgs, PS_LIST_TAIL, "-name", 0, "define file name", NULL);
     psMetadataAddS32(addprocessedcomponentArgs, PS_LIST_TAIL, "-bytes", 0, "define file size", 0);
