#/bin/bash
dest=..
if ! [ -e $dest/src/Makefile ] ; then echo Makefile not found ; exit 1; fi
echo Generating Visual Studio Project files in $dest
function doit {
echo Generating $dest/$1.vcxproj
cat vcxproj.1 > $dest/$1.vcxproj
# this collects all the files needed
echo " " >> $dest/$1.vcxproj
for dir in $dirs ; do
sources="`(cd $dest/src/$dir; make sources)`"
for s in $sources ; do
if [ "$s" = "goto_instrument_main.cpp" ] && [ "$1" != "goto-instrument" ] ; then
continue
fi
echo " " >> $dest/$1.vcxproj
done
done
echo " " >> $dest/$1.vcxproj
echo " " >> $dest/$1.vcxproj
echo " " >> $dest/$1.vcxproj
cat vcxproj.2 >> $dest/$1.vcxproj
echo Generating $dest/$1.vcxproj.filters
# this produces nice "filters" (folders)
echo "" > $dest/$1.vcxproj.filters
echo "" >> $dest/$1.vcxproj.filters
echo " " >> $dest/$1.vcxproj.filters
for dir in $dirs ; do
sources="`(cd $dest/src/$dir; make sources)`"
for s in $sources ; do
echo " ${dir}" >> $dest/$1.vcxproj.filters
done
done
echo " minisat2" >> $dest/$1.vcxproj.filters
echo " minisat2" >> $dest/$1.vcxproj.filters
echo " " >> $dest/$1.vcxproj.filters
for dir in $dirs minisat2 ; do
echo " " >> $dest/$1.vcxproj.filters
done
echo "" >> $dest/$1.vcxproj.filters
}
dirs="big-int langapi util ansi-c assembler cpp json json-symtab-language xmllang solvers goto-symex analyses pointer-analysis goto-programs linking goto-checker goto-instrument cbmc"
doit cbmc
dirs="big-int langapi util ansi-c assembler cpp json xmllang goto-programs linking goto-cc"
doit goto-cc
dirs="big-int langapi util ansi-c assembler cpp json xmllang solvers goto-symex analyses pointer-analysis goto-programs linking goto-instrument"
doit goto-instrument