File tree 1 file changed +24
-0
lines changed
1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -2092,6 +2092,24 @@ impl Build {
2092
2092
cmd. push_cc_arg ( "-pthread" . into ( ) ) ;
2093
2093
}
2094
2094
}
2095
+
2096
+ if target. os == "nto" {
2097
+ // Select the target with `-V`, see qcc documentation:
2098
+ // QNX 7.1: https://www.qnx.com/developers/docs/7.1/index.html#com.qnx.doc.neutrino.utilities/topic/q/qcc.html
2099
+ // QNX 8.0: https://www.qnx.com/developers/docs/8.0/com.qnx.doc.neutrino.utilities/topic/q/qcc.html
2100
+ let arg = match target. arch {
2101
+ "i586" => "-Vgcc_ntox86_cxx" ,
2102
+ "aarch64" => "-Vgcc_ntoaarch64le_cxx" ,
2103
+ "x86_64" => "-Vgcc_ntox86_64_cxx" ,
2104
+ _ => {
2105
+ return Err ( Error :: new (
2106
+ ErrorKind :: InvalidTarget ,
2107
+ format ! ( "Unknown architecture for Neutrino QNX: {}" , target. arch) ,
2108
+ ) )
2109
+ }
2110
+ } ;
2111
+ cmd. push_cc_arg ( arg. into ( ) ) ;
2112
+ }
2095
2113
}
2096
2114
}
2097
2115
@@ -2803,6 +2821,12 @@ impl Build {
2803
2821
format ! ( "arm-kmc-eabi-{}" , gnu)
2804
2822
} else if target. arch == "aarch64" && target. vendor == "kmc" {
2805
2823
format ! ( "aarch64-kmc-elf-{}" , gnu)
2824
+ } else if target. os == "nto" {
2825
+ if self . cpp {
2826
+ "q++" . to_string ( )
2827
+ } else {
2828
+ "qcc" . to_string ( )
2829
+ }
2806
2830
} else if self . get_is_cross_compile ( ) ? {
2807
2831
let prefix = self . prefix_for_target ( & raw_target) ;
2808
2832
match prefix {
You can’t perform that action at this time.
0 commit comments