Import ( ' env ' ,  ' arch ' ,  ' cereal ' ,  ' messaging ' ,  ' common ' ,  ' gpucommon ' ,  ' visionipc ' ,  ' USE_WEBCAM ' ,  ' QCOM_REPLAY ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								libs  =  [ ' m ' ,  ' pthread ' ,  common ,  ' jpeg ' ,  ' OpenCL ' ,  cereal ,  messaging ,  ' zmq ' ,  ' capnp ' ,  ' kj ' ,  visionipc ,  gpucommon ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								if  arch  ==  " aarch64 " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  libs  + =  [ ' gsl ' ,  ' CB ' ,  ' adreno_utils ' ,  ' EGL ' ,  ' GLESv3 ' ,  ' cutils ' ,  ' ui ' ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  if  QCOM_REPLAY : 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    cameras  =  [ ' cameras/camera_frame_stream.cc ' ] 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  else : 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    cameras  =  [ ' cameras/camera_qcom.cc ' ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								elif  arch  ==  " larch64 " : 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  libs  + =  [ ' atomic ' ] 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  cameras  =  [ ' cameras/camera_qcom2.cc ' ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  # no screen 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  # env = env.Clone() 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  # env.Append(CXXFLAGS = '-DNOSCREEN') 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  # env.Append(CFLAGS = '-DNOSCREEN') 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								else : 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  if  USE_WEBCAM : 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    libs  + =  [ ' opencv_core ' ,  ' opencv_highgui ' ,  ' opencv_imgproc ' ,  ' opencv_videoio ' ] 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    cameras  =  [ ' cameras/camera_webcam.cc ' ] 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    env  =  env . Clone ( ) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    env . Append ( CXXFLAGS  =  ' -DWEBCAM ' ) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    env . Append ( CFLAGS  =  ' -DWEBCAM ' ) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    env . Append ( CPPPATH  =  ' /usr/local/include/opencv4 ' ) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  else : 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    cameras  =  [ ' cameras/camera_frame_stream.cc ' ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								  if  arch  ==  " Darwin " : 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    del  libs [ libs . index ( ' OpenCL ' ) ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    del  libs [ libs . index ( gpucommon ) ] [ gpucommon . index ( ' GL ' ) ] 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    env  =  env . Clone ( ) 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    env [ ' FRAMEWORKS ' ]  =  [ ' OpenCL ' ,  ' OpenGL ' ] 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								env . SharedLibrary ( ' snapshot/visionipc ' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  [ " #selfdrive/common/visionipc.c " ,  " #selfdrive/common/ipc.c " ] ) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								env . Program ( ' camerad ' ,  [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    ' main.cc ' , 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    ' cameras/camera_common.cc ' , 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    ' transforms/rgb_to_yuv.c ' , 
 
							 
						 
					
						
							
								
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    ' imgproc/utils.cc ' , 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    cameras , 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  ] ,  LIBS = libs )