summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-05-24 16:25:55 -0700
committerBoris Kolpackov <boris@codesynthesis.com>2014-05-24 16:25:55 -0700
commitc328f7a7602d2fbc875c7f5301bdfaee496da325 (patch)
treef892a627ba5ee984d03c9980296afe758d3095a4
parentc995248fc8bd605c2dee03e799e72d89872aa917 (diff)
Add scripts for converting VC10 to VC11 and VC11 to VC12 projects
-rwxr-xr-xbin/vc11convert.sh63
-rwxr-xr-xbin/vc12convert.sh65
2 files changed, 128 insertions, 0 deletions
diff --git a/bin/vc11convert.sh b/bin/vc11convert.sh
new file mode 100755
index 0000000..b0404b5
--- /dev/null
+++ b/bin/vc11convert.sh
@@ -0,0 +1,63 @@
+#! /usr/bin/env bash
+
+# Convert VC10 project files to VC11.
+#
+# -i <ver> encoded input VC version, '10.0' by default
+# -o <ver> encoded output VC version, '11.0' by default
+#
+
+trap 'exit 1' ERR
+
+function error ()
+{
+ echo "$*" 1>&2
+}
+
+wd=`pwd`
+vi=10.0
+vo=11.0
+
+while [ $# -gt 0 ]; do
+ case $1 in
+ -i)
+ shift
+ vi=$1
+ shift
+ ;;
+ -o)
+ shift
+ vo=$1
+ shift
+ ;;
+ *)
+ error "unknown option: $1"
+ exit 1
+ ;;
+ esac
+done
+
+files=`find . -name "*-$vi.vcxproj" -type f`
+
+for p in $files; do
+
+ d=`dirname $p`
+ f=`basename $p -$vi.vcxproj`
+
+ cd $d
+
+ cp $f-$vi.vcxproj.filters $f-$vo.vcxproj.filters
+
+ sed \
+ -e "s#<CharacterSet>#<PlatformToolset>v110</PlatformToolset>\n <CharacterSet>#" \
+ $f-$vi.vcxproj >$f-$vo.vcxproj
+
+ todos $f-$vo.vcxproj
+
+ if [ `wc -c <$f-$vi.vcxproj` -eq `wc -c <$f-$vo.vcxproj` ]; then
+ error "no changes made in $d"
+ cd $wd
+ exit 1
+ fi
+
+ cd $wd
+done
diff --git a/bin/vc12convert.sh b/bin/vc12convert.sh
new file mode 100755
index 0000000..752ed2a
--- /dev/null
+++ b/bin/vc12convert.sh
@@ -0,0 +1,65 @@
+#! /usr/bin/env bash
+
+# Convert VC11 project files to VC12.
+#
+# -i <ver> encoded input VC version, '11.0' by default
+# -o <ver> encoded output VC version, '12.0' by default
+#
+
+trap 'exit 1' ERR
+
+function error ()
+{
+ echo "$*" 1>&2
+}
+
+wd=`pwd`
+vi=11.0
+vo=12.0
+
+while [ $# -gt 0 ]; do
+ case $1 in
+ -i)
+ shift
+ vi=$1
+ shift
+ ;;
+ -o)
+ shift
+ vo=$1
+ shift
+ ;;
+ *)
+ error "unknown option: $1"
+ exit 1
+ ;;
+ esac
+done
+
+files=`find . -name "*-$vi.vcxproj" -type f`
+
+for p in $files; do
+
+ d=`dirname $p`
+ f=`basename $p -$vi.vcxproj`
+
+ cd $d
+
+ cp $f-$vi.vcxproj.filters $f-$vo.vcxproj.filters
+
+ sed \
+ -e "s#ToolsVersion=\"4.0\"#ToolsVersion=\"12.0\"#" \
+ -e "s#<PlatformToolset>v110#<PlatformToolset>v120#" \
+ -e "s#</ClCompile># <SDLCheck>true</SDLCheck>\n </ClCompile>#" \
+ $f-$vi.vcxproj >$f-$vo.vcxproj
+
+ todos $f-$vo.vcxproj
+
+ if [ `wc -c <$f-$vi.vcxproj` -eq `wc -c <$f-$vo.vcxproj` ]; then
+ error "no changes made in $d"
+ cd $wd
+ exit 1
+ fi
+
+ cd $wd
+done