summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Tool/msvs.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2010-04-09 18:39:21 (GMT)
committerSteven Knight <knight@baldmt.com>2010-04-09 18:39:21 (GMT)
commit766675b428700a8f73e92f7e3de6d8d456fc2b99 (patch)
tree34ec773572713ff2f125ba74023b7466e6c4436a /src/engine/SCons/Tool/msvs.py
parent608d04e42b0de175c29b806517d4a32a594fa493 (diff)
downloadSCons-766675b428700a8f73e92f7e3de6d8d456fc2b99.zip
SCons-766675b428700a8f73e92f7e3de6d8d456fc2b99.tar.gz
SCons-766675b428700a8f73e92f7e3de6d8d456fc2b99.tar.bz2
Issue 2331: For forward compatibility, use "import pickle" and have
the SCons.compat layer import cPickle as pickle when it's available.
Diffstat (limited to 'src/engine/SCons/Tool/msvs.py')
-rw-r--r--src/engine/SCons/Tool/msvs.py25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/engine/SCons/Tool/msvs.py b/src/engine/SCons/Tool/msvs.py
index 684ca45..6986488 100644
--- a/src/engine/SCons/Tool/msvs.py
+++ b/src/engine/SCons/Tool/msvs.py
@@ -34,11 +34,14 @@ from __future__ import generators ### KEEP FOR COMPATIBILITY FIXERS
__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+import SCons.compat
+
import base64
-import cPickle
import hashlib
import ntpath
import os
+# compat layer imports "cPickle" for us if it's available.
+import pickle
import re
import sys
@@ -426,10 +429,10 @@ class _GenerateV6DSP(_DSPGenerator):
if self.nokeep == 0:
# now we pickle some data and add it to the file -- MSDEV will ignore it.
- pdata = cPickle.dumps(self.configs,1)
+ pdata = pickle.dumps(self.configs,1)
pdata = base64.encodestring(pdata)
self.file.write(pdata + '\n')
- pdata = cPickle.dumps(self.sources,1)
+ pdata = pickle.dumps(self.sources,1)
pdata = base64.encodestring(pdata)
self.file.write(pdata + '\n')
@@ -487,7 +490,7 @@ class _GenerateV6DSP(_DSPGenerator):
# OK, we've found our little pickled cache of data.
try:
datas = base64.decodestring(datas)
- data = cPickle.loads(datas)
+ data = pickle.loads(datas)
except KeyboardInterrupt:
raise
except:
@@ -506,7 +509,7 @@ class _GenerateV6DSP(_DSPGenerator):
# it has a "# " in front of it, so we strip that.
try:
datas = base64.decodestring(datas)
- data = cPickle.loads(datas)
+ data = pickle.loads(datas)
except KeyboardInterrupt:
raise
except:
@@ -688,10 +691,10 @@ class _GenerateV7DSP(_DSPGenerator):
if self.nokeep == 0:
# now we pickle some data and add it to the file -- MSDEV will ignore it.
- pdata = cPickle.dumps(self.configs,1)
+ pdata = pickle.dumps(self.configs,1)
pdata = base64.encodestring(pdata)
self.file.write('<!-- SCons Data:\n' + pdata + '\n')
- pdata = cPickle.dumps(self.sources,1)
+ pdata = pickle.dumps(self.sources,1)
pdata = base64.encodestring(pdata)
self.file.write(pdata + '-->\n')
@@ -792,7 +795,7 @@ class _GenerateV7DSP(_DSPGenerator):
# OK, we've found our little pickled cache of data.
try:
datas = base64.decodestring(datas)
- data = cPickle.loads(datas)
+ data = pickle.loads(datas)
except KeyboardInterrupt:
raise
except:
@@ -810,7 +813,7 @@ class _GenerateV7DSP(_DSPGenerator):
# OK, we've found our little pickled cache of data.
try:
datas = base64.decodestring(datas)
- data = cPickle.loads(datas)
+ data = pickle.loads(datas)
except KeyboardInterrupt:
raise
except:
@@ -937,7 +940,7 @@ class _GenerateV7DSW(_DSWGenerator):
# OK, we've found our little pickled cache of data.
try:
datas = base64.decodestring(datas)
- data = cPickle.loads(datas)
+ data = pickle.loads(datas)
except KeyboardInterrupt:
raise
except:
@@ -1042,7 +1045,7 @@ class _GenerateV7DSW(_DSWGenerator):
'\tEndGlobalSection\n')
self.file.write('EndGlobal\n')
if self.nokeep == 0:
- pdata = cPickle.dumps(self.configs,1)
+ pdata = pickle.dumps(self.configs,1)
pdata = base64.encodestring(pdata)
self.file.write(pdata + '\n')