C#: Handle dotnet exec csc.dll compiler calls on Windows

This commit is contained in:
Tom Hvitved
2021-09-10 11:26:17 +02:00
parent 3e17fdcaa3
commit af0b9abab7
6 changed files with 39 additions and 34 deletions

View File

@@ -6,7 +6,9 @@
prepend --cil
**/mono*:
**/dotnet:
invoke ${config_dir}/extract-csharp.sh
invoke ${config_dir}/Semmle.Extraction.CSharp.Driver
prepend --dotnetexec
prepend --cil
**/msbuild:
**/xbuild:
replace yes

View File

@@ -1,16 +0,0 @@
#!/bin/bash
echo extract-csharp.sh: Called with arguments: "$@"
extractor="$CODEQL_EXTRACTOR_CSHARP_ROOT/tools/$CODEQL_PLATFORM/Semmle.Extraction.CSharp.Driver"
for i in "$@"
do
shift
if [[ `basename -- "$i"` =~ csc.exe|mcs.exe|csc.dll ]]
then
echo extract-csharp.sh: exec $extractor --cil $@
exec "$extractor" --compiler $i --cil $@
fi
done
echo extract-csharp.sh: Not a compiler invocation

View File

@@ -6,7 +6,9 @@
prepend --cil
**/mono*:
**/dotnet:
invoke ${config_dir}/extract-csharp.sh
invoke ${config_dir}/Semmle.Extraction.CSharp.Driver
prepend --dotnetexec
prepend --cil
**/msbuild:
**/xbuild:
replace yes

View File

@@ -1,16 +0,0 @@
#!/bin/bash
echo extract-csharp.sh: Called with arguments: "$@"
extractor="$CODEQL_EXTRACTOR_CSHARP_ROOT/tools/$CODEQL_PLATFORM/Semmle.Extraction.CSharp.Driver"
for i in "$@"
do
shift
if [[ `basename -- "$i"` =~ csc.exe|mcs.exe|csc.dll ]]
then
echo extract-csharp.sh: exec $extractor --cil $@
exec "$extractor" --compiler $i --cil $@
fi
done
echo extract-csharp.sh: Not a compiler invocation

View File

@@ -7,3 +7,7 @@
prepend --compiler
prepend "${compiler}"
prepend --cil
**\dotnet.exe:
invoke ${config_dir}\Semmle.Extraction.CSharp.Driver.exe
prepend --dotnetexec
prepend --cil