diff --git a/configure.ac b/configure.ac index bb3d947535..00e7c7b4bc 100644 --- a/configure.ac +++ b/configure.ac @@ -206,6 +206,7 @@ AC_CONFIG_FILES([pre-inst-env], [chmod +x pre-inst-env]) AC_CONFIG_FILES([test-env], [chmod +x test-env]) dnl Emacs interface. +AC_PATH_PROG([DOT_USER_PROGRAM], [dot], [dot]) AM_PATH_LISPDIR AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"]) diff --git a/emacs/guix-config.el.in b/emacs/guix-config.el.in index 16434cecea..c7affb8c6d 100644 --- a/emacs/guix-config.el.in +++ b/emacs/guix-config.el.in @@ -1,6 +1,7 @@ ;;; guix-config.el --- Compile-time configuration of Guix. ;; Copyright © 2015 Mathieu Lirzin +;; Copyright © 2015 Alex Kost ;; This file is part of GNU Guix. @@ -35,6 +36,9 @@ strings of the form: Where ARGS is a list of arguments to the guile program.") +(defconst guix-config-dot-program "@DOT_USER_PROGRAM@" + "Name of the 'dot' executable defined at configure time.") + (provide 'guix-config) ;;; guix-config.el ends here diff --git a/emacs/guix-external.el b/emacs/guix-external.el index 580676ef91..cf4bd26ac7 100644 --- a/emacs/guix-external.el +++ b/emacs/guix-external.el @@ -23,11 +23,16 @@ ;;; Code: +(require 'guix-config) + (defgroup guix-external nil "Settings for external programs." :group 'guix) -(defcustom guix-dot-program (executable-find "dot") +(defcustom guix-dot-program + (if (file-name-absolute-p guix-config-dot-program) + guix-config-dot-program + (executable-find "dot")) "Name of the 'dot' executable." :type 'string :group 'guix-external)