diff --git a/data/capsule-mkstublib b/data/capsule-mkstublib
index 2a85d86f223242272e8dafef7faef7400794fc75..1d5123620b6fe88edc926f64b5e630376fa64fc3 100755
--- a/data/capsule-mkstublib
+++ b/data/capsule-mkstublib
@@ -36,6 +36,7 @@ proxy_excluded=$1; shift;
 proxy_extra=$1;    shift;
 proxy_src=$1;      shift;
 ltver=$1;          shift;
+proxy_tree=$1;     shift;
 
 parse_ltver $ltver;
 
@@ -61,11 +62,11 @@ then
         do
             if [ x$V = x1 ];
             then
-                echo "  $top/capsule-symbols $pt /host" >&2;
+                echo "  $top/capsule-symbols $pt $proxy_tree" >&2;
             else
-                echo "  SYMBOLS $pt /host" >&2;
+                echo "  SYMBOLS $pt $proxy_tree" >&2;
             fi;
-            $top/capsule-symbols $pt /host || exit 1;
+            $top/capsule-symbols $pt $proxy_tree || exit 1;
         done) > $symbol_file.tmp;
     then
         mv $symbol_file.tmp $symbol_file;
@@ -152,7 +153,7 @@ cat - <<EOF
     symbol_ns = LM_ID_NEWLM;
     prefix = secure_getenv( "CAPSULE_PREFIX" );
     if( !prefix )
-        prefix = "/host";
+        prefix = "$proxy_tree";
 
     capsule_init();
 
diff --git a/data/capsule-shim.mk.in b/data/capsule-shim.mk.in
index f2b18454b3e7605f309f9a73cbb87d7bce2337ab..d29dfac3e52dd916d888f25d400f883058771805 100644
--- a/data/capsule-shim.mk.in
+++ b/data/capsule-shim.mk.in
@@ -30,7 +30,7 @@ GENSTUB    = $(GENSTUB_V$(V))
 
 # regenerate if any dependencies get updated:
 shim/lib%.so.c: shim/lib%.so.c.excluded shim/lib%.so.c.dlopen shim/lib%.so.symbols
-	$(GENSTUB)V=$V $(mkstub) $$(basename $@ .c) $@.excluded $@.shared $@ $(ltver)
+	$(GENSTUB)V=$V $(mkstub) $$(basename $@ .c) $@.excluded $@.shared $@ $(ltver) $(CAPSULE_TREE)
 
 # regenerate the exportable symbols list
 shim/lib%.so.symbols: shim/lib%.so.c.shared