mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/usr/bin/env python3
 | |
| # Copyright (C) 2024 Efabless Corporation
 | |
| #
 | |
| # Permission to use, copy, modify, and/or distribute this software for any
 | |
| # purpose with or without fee is hereby granted, provided that the above
 | |
| # copyright notice and this permission notice appear in all copies.
 | |
| #
 | |
| # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | |
| # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | |
| # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | |
| # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | |
| # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | |
| # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 | |
| # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | |
| """
 | |
| This runs the cibuildwheel step from the wheels workflow locally.
 | |
| """
 | |
| 
 | |
| import os
 | |
| import yaml
 | |
| import platform
 | |
| import subprocess
 | |
| 
 | |
| __dir__ = os.path.dirname(os.path.abspath(__file__))
 | |
| 
 | |
| 
 | |
| workflow = yaml.safe_load(open(os.path.join(os.path.dirname(__dir__), "wheels.yml")))
 | |
| 
 | |
| env = os.environ.copy()
 | |
| 
 | |
| steps = workflow["jobs"]["build_wheels"]["steps"]
 | |
| cibw_step = None
 | |
| for step in steps:
 | |
|     if (step.get("uses") or "").startswith("pypa/cibuildwheel"):
 | |
|         cibw_step = step
 | |
|         break
 | |
| 
 | |
| for key, value in cibw_step["env"].items():
 | |
|     if key.endswith("WIN") or key.endswith("MAC"):
 | |
|         continue
 | |
|     env[key] = value
 | |
| 
 | |
| env["CIBW_ARCHS"] = os.getenv("CIBW_ARCHS") or platform.machine()
 | |
| subprocess.check_call(["cibuildwheel"], env=env)
 |