Index: trunk/psLib/src/sys/psConfigure.c
===================================================================
--- trunk/psLib/src/sys/psConfigure.c	(revision 23116)
+++ trunk/psLib/src/sys/psConfigure.c	(revision 23229)
@@ -47,7 +47,4 @@
 static FILE *memCheckFile = NULL;       // File to which to write results of mem check
 
-
-psString psLibVersion(void)
-{
 #ifndef PSLIB_VERSION
 #error "PSLIB_VERSION is not set"
@@ -56,13 +53,21 @@
 #error "PSLIB_BRANCH is not set"
 #endif
-    return psStringCopy(PSLIB_BRANCH "@" PSLIB_VERSION);
+#ifndef PSLIB_SOURCE
+#error "PSLIB_SOURCE is not set"
+#endif
+
+#define xstr(s) str(s)
+#define str(s) #s
+
+psString psLibVersion(void)
+{
+    char *value = NULL;
+    psStringAppend(&value, "%s@%s", xstr(PSLIB_BRANCH), xstr(PSLIB_VERSION));
+    return value;
 }
 
 psString psLibSource(void)
 {
-#ifndef PSLIB_SOURCE
-#error "PSLIB_SOURCE is not set"
-#endif
-    return psStringCopy(PSLIB_SOURCE);
+    return psStringCopy(xstr(PSLIB_SOURCE));
 }
 
