https://github.com/shader-slang/slang
Revision a2d4d447639a1860f9de4ba9e2435f1d40ff3669 authored by jsmall-nvidia on 12 December 2019, 21:14:27 UTC, committed by GitHub on 12 December 2019, 21:14:27 UTC
* CPPCompiler -> DownstreamCompiler

* Added DownstreamCompileResult to start abstraction such that we don't need files.

* * Split out slang-blob.cpp
* Made CompileResult hold a DownstreamCompileResult - for access to binary or ISlangSharedLibrary

* Keep temporary files in scope.

* Add a hash to the hex dump stream.

* Move all file tracking into DownstreamCompiler.

* WIP support for nvrtc.

* WIP: Adding support for nvrtc compiler.
Adding enum types, wiring up the nvrtc into slang.

* Fix remaining CPPCompiler references.

* Fix order issue on target string matching.

* Use ISlangSharedLibrary for nvrtc.

* Use DownstreamCompiler for nvrtc.

* WIP first pass at compilation win nvrtc.

* Added testing if file is on file system into CommandLineDownstreamCompiler.
Added sourceContentsPath.

* Make test cuda-compile.cu work by just compiling not comparing output.

* Genearlize DownstreamCompiler usage.

* Fix warning on clang.

* Remove CompilerType from DownstreamCompiler.

* Use DownstreamCompiler interface for all compilers.

NOTE for FXC, DXC and GLSLANG this doesn't mean using 'compile' - it's still extracting functions from shared library.

* Replace DownstreamCompiler::SourceType -> SlangSourceLanguage

* Replace _canCompile with something data driven.

* Fix compiling on gcc/clang for DownstreamCompiler.

* Moved some text conversions into DownstreamCompiler.

* Fix problem on non-vc builds with not having return on locateCompilers for VS.

* Change so no warning for code not reachable on locateCompilers for vs.
1 parent 1533554
Raw File
Tip revision: a2d4d447639a1860f9de4ba9e2435f1d40ff3669 authored by jsmall-nvidia on 12 December 2019, 21:14:27 UTC
Feature/source downstream compiler (#1153)
Tip revision: a2d4d44
test.bat
@echo off
setlocal
pushd %~dp0

:: Argument parsing loop, for arguments that we need to handle at the .bat level

:ARGLOOP

if "%1"=="-debug" (
	set SLANG_TEST_CONFIG=Debug
	shift
	goto :ARGLOOP
)
if "%1"=="-release" (
	set SLANG_TEST_CONFIG=Release
	shift
	goto :ARGLOOP
)
if "%1"=="-platform" (
	set SLANG_TEST_PLATFORM=%2
	shift
	shift
	goto :ARGLOOP
)
if "%1"=="-configuration" (
	set SLANG_TEST_CONFIG=%2
	shift
	shift
	goto :ARGLOOP
)

:: When done with arguments, we'll just fall through here




:: Set root directory to the directory where `test.bat` resides
:: (which should be the root of the source tree)
SET "SLANG_TEST_ROOT=%~dp0"

:: If  platform and configuration haven't been set, then set
:: them to default values.
IF "%SLANG_TEST_PLATFORM%" == "" ( SET "SLANG_TEST_PLATFORM=x86" )
IF "%SLANG_TEST_CONFIG%" == "" ( SET "SLANG_TEST_CONFIG=Debug" )

:: If the user specified a platform of "Win32" swap that to "x86"
:: to match how we are generating our output directories.
IF "%SLANG_TEST_PLATFORM%"=="Win32" ( Set "SLANG_TEST_PLATFORM=x86" )

:: Establish the directory where the binaries to be tested reside
set "SLANG_TEST_BIN_DIR=%SLANG_TEST_ROOT%bin\windows-%SLANG_TEST_PLATFORM%\%SLANG_TEST_CONFIG%\"

:: ensure that any built tools are visible
SET "PATH=%PATH%;%SLANG_TEST_BIN_DIR%"

:: TODO: Maybe we should actually invoke `msbuild` to make sure all the code is up to date?

"%SLANG_TEST_BIN_DIR%slang-test.exe" -bindir "%SLANG_TEST_BIN_DIR%\" %*
back to top