From 51002b723dbd24805f5071c895b0c9cd6c7bf395 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Mon, 26 Nov 2018 12:42:39 +0100 Subject: [PATCH] gnu: Add emacs-clang-rename. * gnu/packages/llvm.scm (emacs-clang-rename): New variable. --- gnu/packages/llvm.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 6a452f48c6..276a89c2a0 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -460,3 +460,25 @@ (define-public emacs-clang-format to fix its formatting. @code{clang-format} is a tool that formats C/C++/Obj-C code according to a set of style options, see @url{http://clang.llvm.org/docs/ClangFormatStyleOptions.html}."))) + +(define-public emacs-clang-rename + (package + (inherit clang) + (name "emacs-clang-rename") + (build-system emacs-build-system) + (inputs + `(("clang" ,clang))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "clang"))) + (copy-file "tools/clang-rename/clang-rename.el" "clang-rename.el") + (emacs-substitute-variables "clang-rename.el" + ("clang-rename-binary" + (string-append clang "/bin/clang-rename")))) + #t))))) + (synopsis "Rename every occurrence of a symbol using clang-rename") + (description "This package renames every occurrence of a symbol at point +using @code{clang-rename}.")))