Allow to specify string parameters and defines

This commit is contained in:
Nikolay Puzanov 2022-07-08 22:10:39 +03:00
parent 72c2f9445b
commit 0d3468277f

View File

@ -441,6 +441,11 @@
(parameters '()) ; -P=X (parameters '()) ; -P=X
(other '())) (other '()))
(define (string-or-num-param x)
(if (number? x)
(format "~a" x)
(format "'\"~a\"'" x)))
(let ((opts (let ((opts
(cons (cons
iverilog-executable iverilog-executable
@ -463,11 +468,11 @@
(if (or (not top) (list? top)) (if (or (not top) (list? top))
(car x) (car x)
(format "~a.~a" top (car x))) (format "~a.~a" top (car x)))
(cadr x))) (string-or-num-param (cadr x))))
parameters) parameters)
(map (lambda (x) (map (lambda (x)
(if (list? x) (if (list? x)
(format "-D~a=~a" (car x) (cadr x)) (format "-D~a=~a" (car x) (string-or-num-param (cadr x)))
(format "-D~a" x))) (format "-D~a" x)))
defines) defines)
other other