You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							30 lines
						
					
					
						
							701 B
						
					
					
				
			
		
		
	
	
							30 lines
						
					
					
						
							701 B
						
					
					
				Import("env")
 | 
						|
 | 
						|
from pathlib import Path
 | 
						|
 | 
						|
generator = File("generator/generator.py")
 | 
						|
 | 
						|
source_files = [
 | 
						|
  File(str(f))
 | 
						|
  for f in Path("generator").rglob("*")
 | 
						|
  if f.is_file() and f.suffix in {".py", ".dbc"}
 | 
						|
]
 | 
						|
 | 
						|
output_files = [
 | 
						|
  f.name.replace(".dbc", "_generated.dbc")
 | 
						|
  for f in Path("generator").rglob("*.dbc")
 | 
						|
  if not f.name.startswith("_")
 | 
						|
]
 | 
						|
 | 
						|
# include DBCs generated by python scripts
 | 
						|
output_files += [
 | 
						|
  f.name.replace(".py", "_generated.dbc")
 | 
						|
  for f in Path("generator").rglob("*.py")
 | 
						|
  if not f.name.startswith(("_", "test_")) and f.name != "generator.py"
 | 
						|
]
 | 
						|
 | 
						|
generated = env.Command(
 | 
						|
  target=list(set(output_files)),
 | 
						|
  source=[generator] + source_files,
 | 
						|
  action="python3 ${SOURCES[0]}",
 | 
						|
)
 | 
						|
 |