diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2014-05-24 16:25:55 -0700 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2014-05-24 16:25:55 -0700 |
commit | c328f7a7602d2fbc875c7f5301bdfaee496da325 (patch) | |
tree | f892a627ba5ee984d03c9980296afe758d3095a4 | |
parent | c995248fc8bd605c2dee03e799e72d89872aa917 (diff) |
Add scripts for converting VC10 to VC11 and VC11 to VC12 projects
-rwxr-xr-x | bin/vc11convert.sh | 63 | ||||
-rwxr-xr-x | bin/vc12convert.sh | 65 |
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 |