@@ -110,6 +110,7 @@ fn main() {
110110 println ! ( "cargo:rustc-link-lib=static=webrtc" ) ;
111111
112112 let target_os = env:: var ( "CARGO_CFG_TARGET_OS" ) . unwrap ( ) ;
113+ let target_arch = env:: var ( "CARGO_CFG_TARGET_ARCH" ) . unwrap ( ) ;
113114 match target_os. as_str ( ) {
114115 "windows" => {
115116 println ! ( "cargo:rustc-link-lib=dylib=msdmo" ) ;
@@ -152,16 +153,23 @@ fn main() {
152153 println ! ( "cargo:rustc-link-lib=dylib=pthread" ) ;
153154 println ! ( "cargo:rustc-link-lib=dylib=m" ) ;
154155
155- builder
156- . file ( "src/vaapi/vaapi_display_drm.cpp" )
157- . file ( "src/vaapi/vaapi_h264_encoder_wrapper.cpp" )
158- . file ( "src/vaapi/vaapi_encoder_factory.cpp" )
159- . file ( "src/vaapi/h264_encoder_impl.cpp" )
160- . file ( "src/vaapi/implib/libva-drm.so.init.c" )
161- . file ( "src/vaapi/implib/libva-drm.so.tramp.S" )
162- . file ( "src/vaapi/implib/libva.so.init.c" )
163- . file ( "src/vaapi/implib/libva.so.tramp.S" )
164- . flag ( "-std=c++2a" ) ;
156+ match target_arch. as_str ( ) {
157+ "x86_64" => {
158+ builder
159+ . file ( "src/vaapi/vaapi_display_drm.cpp" )
160+ . file ( "src/vaapi/vaapi_h264_encoder_wrapper.cpp" )
161+ . file ( "src/vaapi/vaapi_encoder_factory.cpp" )
162+ . file ( "src/vaapi/h264_encoder_impl.cpp" )
163+ . file ( "src/vaapi/implib/libva-drm.so.init.c" )
164+ . file ( "src/vaapi/implib/libva-drm.so.tramp.S" )
165+ . file ( "src/vaapi/implib/libva.so.init.c" )
166+ . file ( "src/vaapi/implib/libva.so.tramp.S" ) ;
167+ }
168+ _ => { } ,
169+
170+ }
171+
172+ builder. flag ( "-std=c++2a" ) ;
165173 }
166174 "macos" => {
167175 println ! ( "cargo:rustc-link-lib=framework=Foundation" ) ;
0 commit comments