Skip to content

Commit

Permalink
Replace verilog-ext-path-join with builtin function
Browse files Browse the repository at this point in the history
  • Loading branch information
gmlarumbe committed May 10, 2023
1 parent d872717 commit abbf150
Show file tree
Hide file tree
Showing 14 changed files with 73 additions and 80 deletions.
12 changes: 6 additions & 6 deletions test/verilog-ext-tests-beautify.el
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
'("axi_demux.sv"
"instances.sv"
"ucontroller.sv"))
(defvar verilog-ext-tests-beautify-dump-dir (verilog-ext-path-join verilog-ext-tests-beautify-dir "dump"))
(defvar verilog-ext-tests-beautify-dump-dir (file-name-concat verilog-ext-tests-beautify-dir "dump"))
(defvar verilog-ext-tests-beautify-dump-diff-on-error t)


Expand All @@ -42,20 +42,20 @@
(files verilog-ext-tests-beautify-test-files) ; Only files with instances are relevant
(verilog-ext-time-stamp-pattern nil)) ; Prevent auto-update of timestamp
(dolist (file files)
(copy-file (verilog-ext-path-join orig-dir file)
(verilog-ext-path-join dest-dir (verilog-ext-tests-beautify-ref-file-from-orig file)) t))
(copy-file (file-name-concat orig-dir file)
(file-name-concat dest-dir (verilog-ext-tests-beautify-ref-file-from-orig file)) t))
(verilog-ext-beautify-dir-files dest-dir)))

(defun verilog-ext-test-beautify-file (file)
(let ((debug nil)
(dump-file (verilog-ext-path-join verilog-ext-tests-beautify-dump-dir file)))
(dump-file (file-name-concat verilog-ext-tests-beautify-dump-dir file)))
(cl-letf (((symbol-function 'message)
(lambda (FORMAT-STRING &rest ARGS)
nil))) ; Mock `message' to silence all the indentation reporting
(with-temp-file dump-file
(when debug
(clone-indirect-buffer-other-window "*debug*" t))
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir file))
;; Remove alignments between port connections
(verilog-ext-replace-regexp-whole-buffer (concat "\\(?1:^\\s-*\\." verilog-identifier-re "\\)\\(?2:\\s-*\\)(") "\\1(")
;; Beautify
Expand All @@ -67,7 +67,7 @@
"Compare beautified FILE.
Reference beautified version: file.beauty.sv in beautify dir."
(let ((filename-beautified (verilog-ext-test-beautify-file file)) ; Dump file
(filename-ref (verilog-ext-path-join verilog-ext-tests-beautify-dir (verilog-ext-tests-beautify-ref-file-from-orig file))))
(filename-ref (file-name-concat verilog-ext-tests-beautify-dir (verilog-ext-tests-beautify-ref-file-from-orig file))))
(if (equal (with-temp-buffer
(insert-file-contents filename-beautified)
(buffer-substring-no-properties (point-min) (point-max)))
Expand Down
6 changes: 3 additions & 3 deletions test/verilog-ext-tests-font-lock.el
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
;; `faceup-write-file' calls internally `font-lock-fontify-region' so
;; it's more consistent
(font-lock-fontify-region (point-min) (point-max))
(faceup-write-file (verilog-ext-path-join verilog-ext-tests-faceup-dir
(faceup-write-file (file-name-concat verilog-ext-tests-faceup-dir
(concat (file-name-nondirectory file)
(when tree-sitter
".ts")
Expand All @@ -58,8 +58,8 @@
'verilog-mode))
result)
(setq result (faceup-test-font-lock-file mode
(verilog-ext-path-join verilog-ext-tests-common-dir file)
(verilog-ext-path-join verilog-ext-tests-faceup-dir (concat file
(file-name-concat verilog-ext-tests-common-dir file)
(file-name-concat verilog-ext-tests-faceup-dir (concat file
(when tree-sitter
".ts")
".faceup"))))
Expand Down
2 changes: 1 addition & 1 deletion test/verilog-ext-tests-hierarchy.el
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
(require 'verilog-ext-workspace)

(defun verilog-ext-test-hierarchy ()
(let* ((test-file (verilog-ext-path-join verilog-ext-tests-common-dir "instances.sv"))
(let* ((test-file (file-name-concat verilog-ext-tests-common-dir "instances.sv"))
(verilog-library-directories `(,verilog-ext-tests-jump-parent-dir
,verilog-ext-tests-common-dir))
(verilog-library-files `(,test-file))
Expand Down
2 changes: 1 addition & 1 deletion test/verilog-ext-tests-imenu.el
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
(defmacro verilog-ext-test-imenu-file (file)
(declare (indent 1))
`(with-temp-buffer
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir ,file))
(verilog-mode)
(let ((imenu-use-markers nil)
(print-level nil)
Expand Down
10 changes: 5 additions & 5 deletions test/verilog-ext-tests-indent.el
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@

(defvar verilog-ext-tests-indent-test-files
(append (directory-files verilog-ext-tests-common-dir t ".s?vh?$")
(directory-files (verilog-ext-path-join verilog-ext-tests-files-dir "verilog-mode") t ".s?vh?$")))
(defvar verilog-ext-tests-indent-dump-dir (verilog-ext-path-join verilog-ext-tests-indent-dir "dump"))
(directory-files (file-name-concat verilog-ext-tests-files-dir "verilog-mode") t ".s?vh?$")))
(defvar verilog-ext-tests-indent-dump-dir (file-name-concat verilog-ext-tests-indent-dir "dump"))
(defvar verilog-ext-tests-indent-dump-diff-on-error t)


Expand Down Expand Up @@ -64,7 +64,7 @@
"Update .indent files manually."
(save-window-excursion
(dolist (file verilog-ext-tests-indent-test-files)
(let ((indented-file (verilog-ext-path-join verilog-ext-tests-indent-dir
(let ((indented-file (file-name-concat verilog-ext-tests-indent-dir
(verilog-ext-tests-indent-ref-file-from-orig file tree-sitter)))
(verilog-align-typedef-regexp (concat "\\<" verilog-identifier-re "_\\(t\\)\\>")))
(message "Processing %s" file)
Expand All @@ -75,7 +75,7 @@
(defun verilog-ext-test-indent-file (file &optional tree-sitter)
"Expects FILE absolute path."
(let* ((verbose nil)
(dump-file (verilog-ext-path-join verilog-ext-tests-indent-dump-dir
(dump-file (file-name-concat verilog-ext-tests-indent-dump-dir
(file-name-nondirectory file))))
(when verbose
(message "Indenting %s..." file))
Expand All @@ -92,7 +92,7 @@
Reference indented version: file.indent.sv in indent dir."
(let* ((verbose nil)
(filename-indented (verilog-ext-test-indent-file file tree-sitter))
(filename-ref (verilog-ext-path-join verilog-ext-tests-indent-dir
(filename-ref (file-name-concat verilog-ext-tests-indent-dir
(verilog-ext-tests-indent-ref-file-from-orig file tree-sitter))))
(when verbose
(message "Comparing %s" file))
Expand Down
8 changes: 4 additions & 4 deletions test/verilog-ext-tests-misc.el
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
(insert (mapconcat #'identity (directory-files-recursively default-directory "\.s?vh?$" nil nil t) "\n")))
(ggtags-create-tags default-directory)
;; Enable ggtags and run body
(find-file (verilog-ext-path-join verilog-ext-tests-examples-dir ,file))
(find-file (file-name-concat verilog-ext-tests-examples-dir ,file))
(ggtags-mode 1)
(goto-char (point-min))
,@body)))
Expand All @@ -69,7 +69,7 @@ for verbosity purposes."
(ggtags-create-tags default-directory)
(message (shell-command-to-string "ls -al"))
;; Enable ggtags and run body
(find-file (verilog-ext-path-join verilog-ext-tests-examples-dir ,file))
(find-file (file-name-concat verilog-ext-tests-examples-dir ,file))
(ggtags-mode 1)
(goto-char (point-min))
,@body))
Expand All @@ -82,7 +82,7 @@ for verbosity purposes."
;; Tested many things and changed many others but it seemed to be random and related to xref more than to any other thing
;; It works fine though if run in a subshell
(xref-find-definitions (thing-at-point 'symbol :no-props)) ; `xref-find-definitions' could hang the ERT interactive test
(should (string= buffer-file-name (verilog-ext-path-join verilog-ext-tests-examples-dir "jump-parent/block0.sv")))
(should (string= buffer-file-name (file-name-concat verilog-ext-tests-examples-dir "jump-parent/block0.sv")))
(should (equal (point) 15))))

(ert-deftest navigation::jump-to-module-at-point ()
Expand All @@ -94,7 +94,7 @@ for verbosity purposes."
;; Tested many things and changed many others but it seemed to be random and related to xref more than to any other thing
;; It works fine though if run in a subshell
(verilog-ext-jump-to-module-at-point)
(should (string= buffer-file-name (verilog-ext-path-join verilog-ext-tests-examples-dir "jump-parent/block0.sv")))
(should (string= buffer-file-name (file-name-concat verilog-ext-tests-examples-dir "jump-parent/block0.sv")))
(should (equal (point) 15))))

;; INFO: The analogous `navigation::jump-to-parent-module-ag' test works fine also in GitHub actions
Expand Down
4 changes: 2 additions & 2 deletions test/verilog-ext-tests-navigation.el
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
(eval-expression-print-level nil)
(eval-expression-print-length nil)
(default-directory (file-name-as-directory verilog-ext-tests-common-dir)))
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir ,file))
(verilog-mode)
,@body)))

Expand Down Expand Up @@ -119,7 +119,7 @@ It did work locally though."
(eval-expression-print-level nil)
(eval-expression-print-length nil)
(default-directory (file-name-as-directory verilog-ext-tests-jump-parent-dir)))
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-jump-parent-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-jump-parent-dir ,file))
(verilog-mode)
,@body)))

Expand Down
4 changes: 2 additions & 2 deletions test/verilog-ext-tests-tags.el
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ Return differences get a better explanation of the errors in ERT testsuites."
(declare (indent 1) (debug t))
`(let ((table (make-hash-table :test #'equal)))
(with-temp-buffer
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir ,file))
(verilog-mode)
;; Avoid errors in desc when there are tabs and trailing whitespaces
(untabify (point-min) (point-max))
Expand All @@ -65,7 +65,7 @@ Return differences get a better explanation of the errors in ERT testsuites."
(declare (indent 1) (debug t))
`(let ((table (make-hash-table :test #'equal)))
(with-temp-buffer
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir ,file))
(verilog-mode)
;; Avoid errors in desc when there are tabs and trailing whitespaces
(untabify (point-min) (point-max))
Expand Down
2 changes: 1 addition & 1 deletion test/verilog-ext-tests-utils.el
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
(defmacro verilog-ext-test-utils-file (file &rest body)
(declare (indent 1) (debug t))
`(with-temp-buffer
(insert-file-contents (verilog-ext-path-join verilog-ext-tests-common-dir ,file))
(insert-file-contents (file-name-concat verilog-ext-tests-common-dir ,file))
(verilog-mode)
,@body))

Expand Down
24 changes: 12 additions & 12 deletions test/verilog-ext-tests-workspace.el
Original file line number Diff line number Diff line change
Expand Up @@ -27,23 +27,23 @@

(defun verilog-ext-test-workspace-get-expected-files ()
(let* ((verilog-ext-workspace-root-dir verilog-ext-tests-test-dir)
(verilog-ext-workspace-ignore-dirs `(,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/indent")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/verilog-mode")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/bugs")))
(verilog-ext-workspace-ignore-files `(,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/axi_demux.beauty.sv")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/instances.beauty.sv")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/ucontroller.beauty.sv"))))
(verilog-ext-workspace-ignore-dirs `(,(file-name-concat verilog-ext-workspace-root-dir "files/indent")
,(file-name-concat verilog-ext-workspace-root-dir "files/verilog-mode")
,(file-name-concat verilog-ext-workspace-root-dir "files/bugs")))
(verilog-ext-workspace-ignore-files `(,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/axi_demux.beauty.sv")
,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/instances.beauty.sv")
,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/ucontroller.beauty.sv"))))
(mapcar (lambda (file) (string-remove-prefix (concat verilog-ext-workspace-root-dir "/") file))
(verilog-ext-workspace-files))))

(ert-deftest workspace::files ()
(let* ((verilog-ext-workspace-root-dir verilog-ext-tests-test-dir)
(verilog-ext-workspace-ignore-dirs `(,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/indent")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/verilog-mode")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/bugs")))
(verilog-ext-workspace-ignore-files `(,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/axi_demux.beauty.sv")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/instances.beauty.sv")
,(verilog-ext-path-join verilog-ext-workspace-root-dir "files/beautify/ucontroller.beauty.sv"))))
(verilog-ext-workspace-ignore-dirs `(,(file-name-concat verilog-ext-workspace-root-dir "files/indent")
,(file-name-concat verilog-ext-workspace-root-dir "files/verilog-mode")
,(file-name-concat verilog-ext-workspace-root-dir "files/bugs")))
(verilog-ext-workspace-ignore-files `(,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/axi_demux.beauty.sv")
,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/instances.beauty.sv")
,(file-name-concat verilog-ext-workspace-root-dir "files/beautify/ucontroller.beauty.sv"))))
(should (equal (mapcar (lambda (file) (string-remove-prefix (concat verilog-ext-workspace-root-dir "/") file))
(verilog-ext-workspace-files))
'("files/common/axi_demux.sv"
Expand Down
16 changes: 8 additions & 8 deletions test/verilog-ext-tests.el
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,15 @@ Otherwise, byte-compile."
(require 'verilog-ext)

(defvar verilog-ext-tests-test-dir (if (bound-and-true-p straight-base-dir)
(verilog-ext-path-join (expand-file-name straight-base-dir) "straight/repos/verilog-ext/test")
(file-name-concat (expand-file-name straight-base-dir) "straight/repos/verilog-ext/test")
(file-name-directory (or load-file-name (buffer-file-name)))))
(defvar verilog-ext-tests-files-dir (verilog-ext-path-join verilog-ext-tests-test-dir "files"))
(defvar verilog-ext-tests-beautify-dir (verilog-ext-path-join verilog-ext-tests-files-dir "beautify"))
(defvar verilog-ext-tests-common-dir (verilog-ext-path-join verilog-ext-tests-files-dir "common"))
(defvar verilog-ext-tests-faceup-dir (verilog-ext-path-join verilog-ext-tests-files-dir "faceup"))
(defvar verilog-ext-tests-indent-dir (verilog-ext-path-join verilog-ext-tests-files-dir "indent"))
(defvar verilog-ext-tests-jump-parent-dir (verilog-ext-path-join verilog-ext-tests-files-dir "jump-parent"))
(defvar verilog-ext-tests-hierarchy-dir (verilog-ext-path-join verilog-ext-tests-files-dir "hierarchy"))
(defvar verilog-ext-tests-files-dir (file-name-concat verilog-ext-tests-test-dir "files"))
(defvar verilog-ext-tests-beautify-dir (file-name-concat verilog-ext-tests-files-dir "beautify"))
(defvar verilog-ext-tests-common-dir (file-name-concat verilog-ext-tests-files-dir "common"))
(defvar verilog-ext-tests-faceup-dir (file-name-concat verilog-ext-tests-files-dir "faceup"))
(defvar verilog-ext-tests-indent-dir (file-name-concat verilog-ext-tests-files-dir "indent"))
(defvar verilog-ext-tests-jump-parent-dir (file-name-concat verilog-ext-tests-files-dir "jump-parent"))
(defvar verilog-ext-tests-hierarchy-dir (file-name-concat verilog-ext-tests-files-dir "hierarchy"))

(unless (member verilog-ext-tests-test-dir load-path)
(add-to-list 'load-path verilog-ext-tests-test-dir))
Expand Down
12 changes: 6 additions & 6 deletions verilog-ext-flycheck.el
Original file line number Diff line number Diff line change
Expand Up @@ -198,8 +198,8 @@ See URL `https://github.com/chipsalliance/verible'."
;;;; Slang
(flycheck-def-config-file-var flycheck-verilog-slang-command-file verilog-slang "slang.f")

(defvar verilog-ext-flycheck-slang-include-path nil) ; e.g. (list (verilog-ext-path-join (getenv "UVM_HOME") "src"))
(defvar verilog-ext-flycheck-slang-file-list nil) ; e.g. (list (verilog-ext-path-join (getenv "UVM_HOME") "src/uvm_pkg.sv"))
(defvar verilog-ext-flycheck-slang-include-path nil) ; e.g. (list (file-name-concat (getenv "UVM_HOME") "src"))
(defvar verilog-ext-flycheck-slang-file-list nil) ; e.g. (list (file-name-concat (getenv "UVM_HOME") "src/uvm_pkg.sv"))

(flycheck-define-checker verilog-slang
"SystemVerilog Language Services.
Expand All @@ -226,8 +226,8 @@ See URL `https://github.com/MikePopoloski/slang'."
(flycheck-def-config-file-var flycheck-verilog-svlint-config-file verilog-svlint ".svlint.toml")

;; Variables are needed since svlint doesn't allow both source and -f command file at the same time
(defvar verilog-ext-flycheck-svlint-include-path nil) ; e.g. (list (verilog-ext-path-join (getenv "UVM_HOME") "src"))
(defvar verilog-ext-flycheck-svlint-file-list nil) ; e.g. (list (verilog-ext-path-join (getenv "UVM_HOME") "src/uvm_pkg.sv"))
(defvar verilog-ext-flycheck-svlint-include-path nil) ; e.g. (list (file-name-concat (getenv "UVM_HOME") "src"))
(defvar verilog-ext-flycheck-svlint-file-list nil) ; e.g. (list (file-name-concat (getenv "UVM_HOME") "src/uvm_pkg.sv"))

(flycheck-define-checker verilog-svlint
"A Verilog syntax checker using svlint.
Expand Down Expand Up @@ -308,8 +308,8 @@ Plus, the :command key arg of `flycheck-define-command-checker' assumes each
of the strings are arguments. If something such as \"&&\" \"cat\" is used to
try to display the logfile in stdout , it would throw an xrun fatal error as
\"&&\" would not be recognized as a file."
(let* ((log-path (verilog-ext-path-join verilog-ext-flycheck-hal-directory verilog-ext-flycheck-hal-log-name))
(script-path (verilog-ext-path-join verilog-ext-flycheck-hal-directory verilog-ext-flycheck-hal-script-name))
(let* ((log-path (file-name-concat verilog-ext-flycheck-hal-directory verilog-ext-flycheck-hal-log-name))
(script-path (file-name-concat verilog-ext-flycheck-hal-directory verilog-ext-flycheck-hal-script-name))
(script-code (concat "#!/bin/bash
args=\"${@}\"
xrun -hal $args
Expand Down
7 changes: 0 additions & 7 deletions verilog-ext-utils.el
Original file line number Diff line number Diff line change
Expand Up @@ -184,13 +184,6 @@ Same function `while' but returning t after last condition for use in ands."
t))

;;;; String/regexp
(defun verilog-ext-path-join (arg1 arg2)
"Join path of ARG1 and ARG2."
(if (and arg1 arg2)
(concat (file-name-as-directory arg1) arg2)
(error "Cannot join path with nil arguments")
nil))

(defun verilog-ext-replace-regexp (regexp to-string start end)
"Wrapper function for programatic use of `replace-regexp'.
Replace REGEXP with TO-STRING from START to END."
Expand Down
Loading

0 comments on commit abbf150

Please sign in to comment.