diff --git a/pkgs/by-name/sh/shader-slang/package.nix b/pkgs/by-name/sh/shader-slang/package.nix index be6c60d0a977..e33e8f48b12d 100644 --- a/pkgs/by-name/sh/shader-slang/package.nix +++ b/pkgs/by-name/sh/shader-slang/package.nix @@ -13,6 +13,7 @@ unordered_dense, versionCheckHook, gitUpdater, + runCommandCC, # Required for compiling to SPIR-V or GLSL withGlslang ? true, @@ -119,9 +120,31 @@ stdenv.mkDerivation (finalAttrs: { versionCheckProgramArg = "-v"; doInstallCheck = true; - passthru.updateScript = gitUpdater { - rev-prefix = "v"; - ignoredVersions = "*-draft"; + passthru = { + updateScript = gitUpdater { + rev-prefix = "v"; + ignoredVersions = "*-draft"; + }; + tests.hello = + runCommandCC "compile-hello-world" + { + # Intermediate files generated by slangc trigger this warning + NIX_CFLAGS_COMPILE = "-Wno-error=format-security"; + } + '' + cat > hello.slang << EOF + export __extern_cpp int main() + { + printf("Hello, world!\n"); + return 0; + } + EOF + + ${lib.getExe finalAttrs.finalPackage} hello.slang -target executable -o hello + ./hello | grep "Hello, world!" + + touch $out + ''; }; meta = {