summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCayetano Santos <csantosb@inventati.org>2026-06-23 13:48:42 +0200
committerCayetano Santos <csantosb@inventati.org>2026-06-25 10:51:54 +0200
commit65f0dc7468d5232a1c6ced0eb62814a6f3dcdc6e (patch)
treeb58d9ebbcdf40a2bca3e5564361256c6ff41ee93
parentfefbdf7a71eacd9460b9c0361a897b3c3ec1ef57 (diff)
gnu: yosys-slang: Unbundle dependencies.
* gnu/packages/electronics.scm (sv-lang-for-yosys-slang): New variable. * gnu/packages/electronics.scm (yosys-slang)[source]: Disable ’recursive?. [arguments]: Update #:configure-flags; add ’unbundle-sv-lang #:phase. [native-inputs]: Add boost, fmt-11, and sv-lang-for-yosys-slang; delete python-minimal-wrapper. Merges guix/guix!9479
-rw-r--r--gnu/packages/electronics.scm39
1 files changed, 34 insertions, 5 deletions
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 31e55eeb95e..7dd1ed73fb6 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -4993,6 +4993,24 @@ tools, simulators, linters, code editors, and refactoring tools.")
4993 (home-page "https://sv-lang.com/") 4993 (home-page "https://sv-lang.com/")
4994 (license license:expat))) 4994 (license license:expat)))
4995 4995
4996(define sv-lang-for-yosys-slang
4997 (let ((commit "f04e81565793c768b747a8fd058f3e7aeceee1b5") ;sync with yosys-slang
4998 (revision "0"))
4999 (package
5000 (inherit sv-lang)
5001 (name "sv-lang")
5002 (version (git-version "10.0" revision commit))
5003 (source
5004 (origin
5005 (method git-fetch)
5006 (uri (git-reference
5007 (url "https://github.com/MikePopoloski/slang")
5008 (commit commit)))
5009 (file-name (git-file-name name version))
5010 (sha256
5011 (base32
5012 "135ghdw7wm9544mpnq91vsjag2r1sk81shd3r1cw513jsjhjvim4")))))))
5013
4996(define-public systemc 5014(define-public systemc
4997 (package 5015 (package
4998 (name "systemc") 5016 (name "systemc")
@@ -5467,18 +5485,26 @@ for various application domains, including FPGAs and ASICs.")
5467 (method git-fetch) 5485 (method git-fetch)
5468 (uri (git-reference 5486 (uri (git-reference
5469 (url "https://github.com/povik/yosys-slang") 5487 (url "https://github.com/povik/yosys-slang")
5470 (commit commit) 5488 (commit commit)))
5471 (recursive? #t))) ;TODO: unvendor slang and fmt
5472 (file-name (git-file-name name version)) 5489 (file-name (git-file-name name version))
5473 (sha256 5490 (sha256
5474 (base32 "1gckr30dir80jhp80jlvis2b1ccpf3pc9m2bxj00fxbrs1swyw3v")))) 5491 (base32 "11p8i6ja0da0j3a64pa3h69pqfkcsibmia82kf9y7z9vjj2c20ck"))))
5475 (build-system cmake-build-system) 5492 (build-system cmake-build-system)
5476 (arguments 5493 (arguments
5477 (list 5494 (list
5478 #:configure-flags 5495 #:configure-flags
5479 #~(list (string-append "-DYOSYS_SLANG_REVISION=" #$version)) 5496 #~(list (string-append "-DYOSYS_SLANG_REVISION=" #$version)
5497 (string-append "-DSLANG_REVISION="
5498 #$(package-version sv-lang-for-yosys-slang))
5499 "-DUSE_EXTERNAL_FMT=ON")
5480 #:phases 5500 #:phases
5481 #~(modify-phases %standard-phases 5501 #~(modify-phases %standard-phases
5502 (add-after 'unpack 'unbundle-sv-lang
5503 (lambda _
5504 (substitute* "CMakeLists.txt"
5505 (("add_subdirectory\\(third_party\\/slang\\)")
5506 "find_package(slang CONFIG QUIET)")
5507 (("slang_slang") ""))))
5482 (replace 'install 5508 (replace 'install
5483 (lambda _ 5509 (lambda _
5484 (let ((install-dir 5510 (let ((install-dir
@@ -5486,7 +5512,10 @@ for various application domains, including FPGAs and ASICs.")
5486 (mkdir-p install-dir) 5512 (mkdir-p install-dir)
5487 (install-file "slang.so" install-dir))))))) 5513 (install-file "slang.so" install-dir)))))))
5488 (native-inputs 5514 (native-inputs
5489 (list python-minimal-wrapper yosys)) 5515 (list boost
5516 fmt-11 ;11.2.0 required
5517 sv-lang-for-yosys-slang
5518 yosys))
5490 (native-search-paths 5519 (native-search-paths
5491 (list (search-path-specification 5520 (list (search-path-specification
5492 (variable "YOSYS_PLUGIN_PATH") 5521 (variable "YOSYS_PLUGIN_PATH")