mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	Add nix flake and lock file. Add nix build step. Pending nix flake update step
This commit is contained in:
		
							parent
							
								
									bdce7fac66
								
							
						
					
					
						commit
						1c89e2ab92
					
				
					 3 changed files with 118 additions and 0 deletions
				
			
		
							
								
								
									
										13
									
								
								.github/workflows/nix-github-actions.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								.github/workflows/nix-github-actions.yml
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,13 @@ | ||||||
|  | name: "build nix flake" | ||||||
|  | on: | ||||||
|  |   pull_request: | ||||||
|  |   push: | ||||||
|  | jobs: | ||||||
|  |   tests: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     steps: | ||||||
|  |     - uses: actions/checkout@v4 | ||||||
|  |       with: | ||||||
|  |        submodules: true | ||||||
|  |     - uses: cachix/install-nix-action@v25 | ||||||
|  |     - run: nix build '.?submodules=1' | ||||||
							
								
								
									
										61
									
								
								flake.lock
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								flake.lock
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,61 @@ | ||||||
|  | { | ||||||
|  |   "nodes": { | ||||||
|  |     "flake-utils": { | ||||||
|  |       "inputs": { | ||||||
|  |         "systems": "systems" | ||||||
|  |       }, | ||||||
|  |       "locked": { | ||||||
|  |         "lastModified": 1705309234, | ||||||
|  |         "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", | ||||||
|  |         "owner": "numtide", | ||||||
|  |         "repo": "flake-utils", | ||||||
|  |         "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", | ||||||
|  |         "type": "github" | ||||||
|  |       }, | ||||||
|  |       "original": { | ||||||
|  |         "owner": "numtide", | ||||||
|  |         "repo": "flake-utils", | ||||||
|  |         "type": "github" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "nixpkgs": { | ||||||
|  |       "locked": { | ||||||
|  |         "lastModified": 1708807242, | ||||||
|  |         "narHash": "sha256-sRTRkhMD4delO/hPxxi+XwLqPn8BuUq6nnj4JqLwOu0=", | ||||||
|  |         "owner": "NixOS", | ||||||
|  |         "repo": "nixpkgs", | ||||||
|  |         "rev": "73de017ef2d18a04ac4bfd0c02650007ccb31c2a", | ||||||
|  |         "type": "github" | ||||||
|  |       }, | ||||||
|  |       "original": { | ||||||
|  |         "owner": "NixOS", | ||||||
|  |         "ref": "nixos-unstable", | ||||||
|  |         "repo": "nixpkgs", | ||||||
|  |         "type": "github" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "root": { | ||||||
|  |       "inputs": { | ||||||
|  |         "flake-utils": "flake-utils", | ||||||
|  |         "nixpkgs": "nixpkgs" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "systems": { | ||||||
|  |       "locked": { | ||||||
|  |         "lastModified": 1681028828, | ||||||
|  |         "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", | ||||||
|  |         "owner": "nix-systems", | ||||||
|  |         "repo": "default", | ||||||
|  |         "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", | ||||||
|  |         "type": "github" | ||||||
|  |       }, | ||||||
|  |       "original": { | ||||||
|  |         "owner": "nix-systems", | ||||||
|  |         "repo": "default", | ||||||
|  |         "type": "github" | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   "root": "root", | ||||||
|  |   "version": 7 | ||||||
|  | } | ||||||
							
								
								
									
										44
									
								
								flake.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								flake.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,44 @@ | ||||||
|  | { | ||||||
|  |   description = "A nix flake for the Yosys synthesis suite"; | ||||||
|  | 
 | ||||||
|  |   inputs = { | ||||||
|  |     nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; | ||||||
|  |     flake-utils.url = "github:numtide/flake-utils"; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   outputs = { self, nixpkgs, flake-utils }: | ||||||
|  |     flake-utils.lib.eachDefaultSystem (system: | ||||||
|  |       let | ||||||
|  |         pkgs = import nixpkgs { | ||||||
|  |           inherit system; | ||||||
|  |         }; | ||||||
|  |         customYosys = pkgs.clangStdenv.mkDerivation { | ||||||
|  |           name = "yosys"; | ||||||
|  |           src = ./. ; | ||||||
|  |           buildInputs = with pkgs; [ clang bison flex libffi tcl readline python3 llvmPackages.libcxxClang zlib git ]; | ||||||
|  |           checkInputs = with pkgs; [ gtest ]; | ||||||
|  |           propagatedBuildInputs = with pkgs; [ abc-verifier ]; | ||||||
|  |           preConfigure = "make config-clang"; | ||||||
|  |           checkTarget = "test"; | ||||||
|  |           installPhase = '' | ||||||
|  |             make install PREFIX=$out | ||||||
|  |           ''; | ||||||
|  | 					buildPhase = '' | ||||||
|  |           make -j$(nproc) | ||||||
|  |           ''; | ||||||
|  |           meta = with pkgs.lib; { | ||||||
|  |             description = "Yosys Open SYnthesis Suite"; | ||||||
|  |             homepage = "https://yosyshq.net/yosys/"; | ||||||
|  |             license = licenses.isc; | ||||||
|  |             maintainers = with maintainers; [ ]; | ||||||
|  |           }; | ||||||
|  |         }; | ||||||
|  |       in { | ||||||
|  |         packages.default = customYosys; | ||||||
|  |         defaultPackage = customYosys; | ||||||
|  |         devShell = pkgs.mkShell { | ||||||
|  |           buildInputs = with pkgs; [ clang bison flex libffi tcl readline python3 llvmPackages.libcxxClang zlib git gtest abc-verifier ]; | ||||||
|  |         }; | ||||||
|  |       } | ||||||
|  |     ); | ||||||
|  | } | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue