|  |  |  | Import('env', 'envCython', 'arch', 'SHARED')
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if SHARED:
 | 
					
						
							|  |  |  |   fxn = env.SharedLibrary
 | 
					
						
							|  |  |  | else:
 | 
					
						
							|  |  |  |   fxn = env.Library
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | common_libs = [
 | 
					
						
							|  |  |  |   'params.cc',
 | 
					
						
							|  |  |  |   'statlog.cc',
 | 
					
						
							|  |  |  |   'swaglog.cc',
 | 
					
						
							|  |  |  |   'util.cc',
 | 
					
						
							|  |  |  |   'i2c.cc',
 | 
					
						
							|  |  |  |   'watchdog.cc',
 | 
					
						
							|  |  |  |   'ratekeeper.cc'
 | 
					
						
							|  |  |  | ]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if arch != "Darwin":
 | 
					
						
							|  |  |  |   common_libs.append('gpio.cc')
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _common = fxn('common', common_libs, LIBS="json11")
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | files = [
 | 
					
						
							|  |  |  |   'clutil.cc',
 | 
					
						
							|  |  |  | ]
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _gpucommon = fxn('gpucommon', files)
 | 
					
						
							|  |  |  | Export('_common', '_gpucommon')
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if GetOption('extras'):
 | 
					
						
							|  |  |  |   env.Program('tests/test_common',
 | 
					
						
							|  |  |  |               ['tests/test_runner.cc', 'tests/test_util.cc', 'tests/test_swaglog.cc', 'tests/test_ratekeeper.cc'],
 | 
					
						
							|  |  |  |               LIBS=[_common, 'json11', 'zmq', 'pthread'])
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Cython
 | 
					
						
							|  |  |  | envCython.Program('params_pyx.so', 'params_pyx.pyx', LIBS=envCython['LIBS'] + [_common, 'zmq', 'json11'])
 |