diff --git a/support/bin/rtcds.in b/support/bin/rtcds.in
index 764c23cb92675f0b86c8d72f79e30b1073b5749a..e1828df8c20fd8979f6f84c3bdd4fdf0259d0d49 100755
--- a/support/bin/rtcds.in
+++ b/support/bin/rtcds.in
@@ -17,6 +17,10 @@ while (( "$#" )); do
             USERLAND_FLAG=0
             shift
             ;;
+        --no-kernel-space)
+            NOKERNELSPACE_FLAG=0
+            shift
+            ;;
         -f)
             FOLLOW_FLAG=0
             shift
@@ -75,7 +79,7 @@ CDS_IFO_SRC=${CDS_IFO_SRC:-$CDS_SRC}
 
 # add RCG module source to lib path
 # FIXME: rename RCG_MOD_PATH
-RCG_LIB_PATH=$RCG_LIB_PATH:${RCG_SRC}/src/epics/simLink/:${RCG_SRC}/src/epics/simLink/lib
+RCG_LIB_PATH=$RCG_LIB_PATH:${RCG_SRC}/src/epics/simLink/:${RCG_SRC}/src/epics/simLink/lib:${RCG_SRC}/src/epics/util/lib
 
 #options from environment variables
 ALLOW_MODEL_ENABLE=${ALLOW_MODEL_ENABLE:-true}
@@ -197,18 +201,30 @@ check_host_sys_inactive() {
 
 ########
 
+setup_make_args() {
+    make_args=''
+    if [[ $USERLAND_FLAG ]] ; then
+        make_args='RCG_BUILD_USP=YES'
+    fi
+    if [[ $NOKERNELSPACE_FLAG ]] ; then
+        make_args="$make_args RCG_BUILD_NO_KOBJ=YES"
+    fi
+}
+
 build_sys() {
     cd $RCG_BUILDD
     for sys ; do
 	log "### building $sys..."
-	make $sys
+    setup_make_args
+	make $sys $make_args
     done
 }
 
 build_world() {
     cd $RCG_BUILDD
     log "### building world..."
-    make -i World
+    setup_make_args
+    make -i World $make_args
 }
 
 install_sys() {
@@ -413,7 +429,8 @@ Advanced LIGO Real Time System control interface.
 Available commands:
 
   build|make <sys>...|--all  build system
-    --user-space|--userland  build for user space instead of kernel space
+    --user-space|--userland  build model in userland (user space)
+    --no-kernel-space        do not build kernel space model
   install <sys>...|--all     install system
 
   list|ls                    list systems for host