New Makefile structure; added compatibility with Windows + Visual C + nmake.
[BearSSL] / mk / mkT0.cmd
diff --git a/mk/mkT0.cmd b/mk/mkT0.cmd
new file mode 100644 (file)
index 0000000..9895562
--- /dev/null
@@ -0,0 +1,32 @@
+@echo off\r
+\r
+rem =====================================================================\r
+rem This script uses the command-line C# compiler csc.exe, which is\r
+rem provided with the .NET framework. We need framework 3.5 or later\r
+rem (some of the code uses features not available in the language version\r
+rem implemented in the compiler provided with framework 2.0.50727).\r
+rem =====================================================================\r
+\r
+if exist "%SystemRoot%\Microsoft.NET\Framework\v3.5\csc.exe" (\r
+       set CSC="%SystemRoot%\Microsoft.NET\Framework\v3.5\csc.exe"\r
+       goto do_compile\r
+)\r
+if exist "%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\csc.exe" (\r
+       set CSC="%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\csc.exe"\r
+       goto do_compile\r
+)\r
+if exist "%SystemRoot%\Microsoft.NET\Framework64\v3.5\csc.exe" (\r
+       set CSC="%SystemRoot%\Microsoft.NET\Framework64\v3.5\csc.exe"\r
+       goto do_compile\r
+)\r
+if exist "%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\csc.exe" (\r
+       set CSC="%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\csc.exe"\r
+       goto do_compile\r
+)\r
+\r
+echo C# compiler not found\r
+exit 1\r
+\r
+:do_compile\r
+%CSC% /nologo /out:T0Comp.exe /main:T0Comp /res:T0\kern.t0,t0-kernel T0\*.cs\r
+if %errorlevel% neq 0 exit /b %errorlevel%\r