Avoid constructing a library name with variables without
proper escaping when SHLIBNAME is '$LIBNAME'

Found by: philip

* SConstruct
  Handle special case that should have been caught by scons.

git-svn-id: https://svn.apache.org/repos/asf/serf/trunk@1727295 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/SConstruct b/SConstruct
index c7494c1..41d2983 100644
--- a/SConstruct
+++ b/SConstruct
@@ -230,11 +230,15 @@
 if sys.platform != 'sunos5':
   env['SHLIBVERSION'] = '%d.%d.%d' % (MAJOR, MINOR, 0)
 
-SHLIBNAME = '%sserf-%d' % (env['SHLIBPREFIX'], MAJOR)
-LIBNAME   = '%sserf-%s' % (env['LIBPREFIX'], MAJOR)
+LIBNAME   = '%sserf-%d' % (env['LIBPREFIX'], MAJOR)
 if sys.platform == 'win32':
   # On Win32 SHLIBPREFIX and LIBPREFIX are empty and both produce a .lib file.
   SHLIBNAME = 'libserf-%d' % (MAJOR, )
+elif env['SHLIBPREFIX'] == '$LIBPREFIX':
+  # Let's avoid constructing '$LIBPREFIXserf...' which evaluates to ''
+  SHLIBNAME = LIBNAME
+else:
+  SHLIBNAME = '%sserf-%d' % (env['SHLIBPREFIX'], MAJOR)
 
 env.Append(RPATH=[libdir],
            PDB='${TARGET.filebase}.pdb')