@@ -302,6 +302,9 @@ pub struct TargetOptions {
302
302
pub staticlib_suffix : String ,
303
303
/// OS family to use for conditional compilation. Valid options: "unix", "windows".
304
304
pub target_family : Option < String > ,
305
+ /// Whether the target toolchain is like OpenBSD's.
306
+ /// Only useful for compiling against OpenBSD, for configuring abi when returning a struct.
307
+ pub is_like_openbsd : bool ,
305
308
/// Whether the target toolchain is like OSX's. Only useful for compiling against iOS/OS X, in
306
309
/// particular running dsymutil and some other stuff like `-dead_strip`. Defaults to false.
307
310
pub is_like_osx : bool ,
@@ -406,6 +409,7 @@ impl Default for TargetOptions {
406
409
staticlib_prefix : "lib" . to_string ( ) ,
407
410
staticlib_suffix : ".a" . to_string ( ) ,
408
411
target_family : None ,
412
+ is_like_openbsd : false ,
409
413
is_like_osx : false ,
410
414
is_like_solaris : false ,
411
415
is_like_windows : false ,
@@ -572,6 +576,7 @@ impl Target {
572
576
key ! ( staticlib_prefix) ;
573
577
key ! ( staticlib_suffix) ;
574
578
key ! ( target_family, optional) ;
579
+ key ! ( is_like_openbsd, bool ) ;
575
580
key ! ( is_like_osx, bool ) ;
576
581
key ! ( is_like_solaris, bool ) ;
577
582
key ! ( is_like_windows, bool ) ;
@@ -733,6 +738,7 @@ impl ToJson for Target {
733
738
target_option_val ! ( staticlib_prefix) ;
734
739
target_option_val ! ( staticlib_suffix) ;
735
740
target_option_val ! ( target_family) ;
741
+ target_option_val ! ( is_like_openbsd) ;
736
742
target_option_val ! ( is_like_osx) ;
737
743
target_option_val ! ( is_like_solaris) ;
738
744
target_option_val ! ( is_like_windows) ;
0 commit comments