@@ -6,7 +6,7 @@ use crate::spirv_source::{
6
6
use crate :: target_specs:: update_target_specs_files;
7
7
use crate :: { cache_dir, spirv_source:: SpirvSource } ;
8
8
use anyhow:: Context as _;
9
- use spirv_builder:: SpirvBuilder ;
9
+ use spirv_builder:: { IntoSpirvTarget , SpirvBuilder } ;
10
10
use std:: env;
11
11
use std:: path:: { Path , PathBuf } ;
12
12
@@ -33,7 +33,7 @@ impl InstalledBackend {
33
33
pub fn to_spirv_builder (
34
34
& self ,
35
35
path_to_crate : impl AsRef < Path > ,
36
- target : impl Into < String > ,
36
+ target : impl IntoSpirvTarget ,
37
37
) -> SpirvBuilder {
38
38
let mut builder = SpirvBuilder :: new ( path_to_crate, target) ;
39
39
self . configure_spirv_builder ( & mut builder)
@@ -49,10 +49,12 @@ impl InstalledBackend {
49
49
pub fn configure_spirv_builder ( & self , builder : & mut SpirvBuilder ) -> anyhow:: Result < ( ) > {
50
50
builder. rustc_codegen_spirv_location = Some ( self . rustc_codegen_spirv_location . clone ( ) ) ;
51
51
builder. toolchain_overwrite = Some ( self . toolchain_channel . clone ( ) ) ;
52
- builder. path_to_target_spec = Some ( self . target_spec_dir . join ( format ! (
53
- "{}.json" ,
54
- builder. target. as_ref( ) . context( "expect target to be set" ) ?
55
- ) ) ) ;
52
+ let file_name = builder
53
+ . target
54
+ . clone ( )
55
+ . context ( "expect target to be set" ) ??
56
+ . target_json_file_name ( ) ;
57
+ builder. path_to_target_spec = Some ( self . target_spec_dir . join ( file_name) ) ;
56
58
Ok ( ( ) )
57
59
}
58
60
}
0 commit comments