Index: trunk/ppSub/src/Makefile.am
===================================================================
--- trunk/ppSub/src/Makefile.am	(revision 23217)
+++ trunk/ppSub/src/Makefile.am	(revision 23229)
@@ -1,14 +1,14 @@
 bin_PROGRAMS = ppSub ppSubKernel
 
-PPSUB_VERSION=`if [ -e ../../VERSION ]; then cat ../../VERSION; else svnversion; fi`
-PPSUB_BRANCH=`if [ -e ../../BRANCH ]; then cat ../../BRANCH; else svn info | sed -n -e '/URL:/ h' -e '/Repository Root:/ { x; H; x; s|Repository Root: \(.*\)\nURL: \1\(.*\)|\2| ; s|^/|| ; s|/[a-zA-Z]*/src.*|| ; p }'; fi`
-PPSUB_SOURCE=`if [ -e ../../SOURCE ]; then cat ../../SOURCE; else svn info | sed -n -e 's/Repository UUID: // p'; fi`
+# PPSUB_VERSION=`if [ -e ../../VERSION ]; then cat ../../VERSION; else svnversion; fi`
+# PPSUB_BRANCH=`if [ -e ../../BRANCH ]; then cat ../../BRANCH; else svn info | sed -n -e '/URL:/ h' -e '/Repository Root:/ { x; H; x; s|Repository Root: \(.*\)\nURL: \1\(.*\)|\2| ; s|^/|| ; s|/[a-zA-Z]*/src.*|| ; p }'; fi`
+# PPSUB_SOURCE=`if [ -e ../../SOURCE ]; then cat ../../SOURCE; else svn info | sed -n -e 's/Repository UUID: // p'; fi`
+# 
+# # Force recompilation of ppSubVersion.c, since it gets the version information
+# ppSubVersion.c: FORCE
+# 	touch ppSubVersion.c
+# FORCE: ;
 
-# Force recompilation of ppSubVersion.c, since it gets the version information
-ppSubVersion.c: FORCE
-	touch ppSubVersion.c
-FORCE: ;
-
-ppSub_CPPFLAGS = $(PSLIB_CFLAGS) $(PSMODULE_CFLAGS) $(PPSTATS_CFLAGS) $(PSPHOT_CFLAGS) $(PPSUB_CFLAGS) -DPPSUB_VERSION=\"$(PPSUB_VERSION)\" -DPPSUB_BRANCH=\"$(PPSUB_BRANCH)\" -DPPSUB_SOURCE=\"$(PPSUB_SOURCE)\"
+ppSub_CPPFLAGS = $(PSLIB_CFLAGS) $(PSMODULE_CFLAGS) $(PPSTATS_CFLAGS) $(PSPHOT_CFLAGS) $(PPSUB_CFLAGS) -DPPSUB_VERSION=$(SVN_VERSION) -DPPSUB_BRANCH=$(SVN_BRANCH) -DPPSUB_SOURCE=$(SVN_SOURCE)
 ppSub_LDFLAGS  = $(PSLIB_LIBS)   $(PSMODULE_LIBS)   $(PPSTATS_LIBS)   $(PSPHOT_LIBS)   $(PPSUB_LIBS)
 
Index: trunk/ppSub/src/ppSubVersion.c
===================================================================
--- trunk/ppSub/src/ppSubVersion.c	(revision 23217)
+++ trunk/ppSub/src/ppSubVersion.c	(revision 23229)
@@ -23,6 +23,4 @@
 #include "ppSub.h"
 
-psString ppSubVersion(void)
-{
 #ifndef PPSUB_VERSION
 #error "PPSUB_VERSION is not set"
@@ -31,13 +29,21 @@
 #error "PPSUB_BRANCH is not set"
 #endif
-    return psStringCopy(PPSUB_BRANCH "@" PPSUB_VERSION);
+#ifndef PPSUB_SOURCE
+#error "PPSUB_SOURCE is not set"
+#endif
+
+#define xstr(s) str(s)
+#define str(s) #s
+
+psString ppSubVersion(void)
+{
+    char *value = NULL;
+    psStringAppend(&value, "%s@%s", xstr(PPSUB_BRANCH), xstr(PPSUB_VERSION));
+    return value;
 }
 
 psString ppSubSource(void)
 {
-#ifndef PPSUB_SOURCE
-#error "PPSUB_SOURCE is not set"
-#endif
-    return psStringCopy(PPSUB_SOURCE);
+    return psStringCopy(xstr(PPSUB_SOURCE));
 }
 
