--- ess-17.11.orig/debian/changelog +++ ess-17.11/debian/changelog @@ -1,9 +1,21 @@ -ess (16.10-2) unstable; urgency=medium +ess (17.11-2) unstable; urgency=medium + + * lisp/ess-utils.el: Synced with updated upstream per issue #465 + * lisp/ess-site.el: Ditto (Closes: #882042) + + -- Dirk Eddelbuettel Mon, 20 Nov 2017 17:08:32 -0600 + +ess (17.11-1) unstable; urgency=medium + + * New upstream version released today * debian/emacsen-install: Improvement suggested in #850041 install * debian/control: Increased Standards-Version: to current version + + * debian/control: Increased Standards-Version: to current version + * debian/compat: Increased to 9 - -- + -- Dirk Eddelbuettel Mon, 13 Nov 2017 20:29:44 -0600 ess (16.10-1) unstable; urgency=medium --- ess-17.11.orig/debian/compat +++ ess-17.11/debian/compat @@ -1 +1 @@ -7 +9 --- ess-17.11.orig/debian/control +++ ess-17.11/debian/control @@ -2,7 +2,7 @@ Section: gnu-r Priority: optional Maintainer: Dirk Eddelbuettel -Standards-Version: 3.9.8 +Standards-Version: 4.1.1 Build-Depends: debhelper (>= 7.0.0) Build-Depends-Indep: texlive-base, texlive-latex-base, texlive-latex-recommended, texlive-latex-extra, texlive-generic-recommended, texlive-extra-utils, texlive-fonts-recommended, texinfo, autotools-dev Homepage: http://ess.r-project.org --- ess-17.11.orig/lisp/ess-site.el +++ ess-17.11/lisp/ess-site.el @@ -75,13 +75,22 @@ ;; A nice default (directory-file-name (file-name-directory - (if (and (boundp 'load-file-name) load-file-name) + (if load-file-name (file-truename load-file-name) (locate-library "ess-site") ))) "Directory containing ess-site.el(c) and other ESS lisp files.") +(defvar ess-etc-directory nil + "Location of the ESS etc/ directory. +The ESS etc directory stores various auxillary files that are useful +for ESS, such as icons.") + + +;; Depending on how ESS is loaded the `load-path' might not contain +;; the `lisp' directory. For this reason we need to add it before we +;; start requiring ESS files (add-to-list 'load-path (file-name-as-directory ess-lisp-directory)) -(require 'ess-utils);; <<- _not_ in load-path typically for traditional setup +(require 'ess-utils) (ess-message (format "[ess-site:] ess-lisp-directory = '%s'" ess-lisp-directory)) --- ess-17.11.orig/lisp/ess-utils.el +++ ess-17.11/lisp/ess-utils.el @@ -35,7 +35,11 @@ ;;*;; Internal ESS tools and variables (defvar ess-lisp-directory - (directory-file-name (file-name-directory (locate-library "ess-site"))) + (directory-file-name + (file-name-directory + (if load-file-name + (file-truename load-file-name) + (locate-library "ess-utils") ))) "Directory containing ess-site.el(c) and other ESS lisp files.") (defvar ess-etc-directory nil @@ -43,25 +47,24 @@ The ESS etc directory stores various auxillary files that are useful for ESS, such as icons.") -(defvar ess-etc-directory-list - '("../etc/ess/" "../etc/" "../../etc/ess/" "./etc/") - "List of directories, relative to `ess-lisp-directory', to search for etc.") - -(while (and (listp ess-etc-directory-list) (consp ess-etc-directory-list)) - (setq ess-etc-directory - (expand-file-name (concat ess-lisp-directory "/" - (car ess-etc-directory-list)))) - (if (file-directory-p ess-etc-directory) - (setq ess-etc-directory-list nil) - (setq ess-etc-directory nil) - (setq ess-etc-directory-list (cdr ess-etc-directory-list)) - (when (null ess-etc-directory-list) - (beep 0) (beep 0) - (message (concat - "ERROR:ess-site.el:ess-etc-directory\n" - "Relative to ess-lisp-directory, one of the following must exist:\n" - "../etc/ess, ../etc, ../../etc/ess or ./etc")) - (sit-for 4)))) +;; Try to detect the `etc' folder only if not alread set up by distribution +(unless ess-etc-directory + (let ((path-list '("../etc/ess/" "../etc/" "../../etc/ess/" "./etc/"))) + (while (and (listp path-list) (consp path-list)) + (setq ess-etc-directory + (expand-file-name (concat ess-lisp-directory "/" + (car path-list)))) + (if (file-directory-p ess-etc-directory) + (setq path-list nil) + (setq ess-etc-directory nil) + (setq path-list (cdr path-list)) + (when (null path-list) + (beep 0) (beep 0) + (message (concat + "ERROR:ess-etc-directory\n" + "Relative to ess-lisp-directory, one of the following must exist:\n" + "../etc/ess, ../etc, ../../etc/ess or ./etc")) + (sit-for 4)))))) (defun ess-message (format-string &rest args) "Shortcut for \\[message] only if `ess-show-load-messages' is non-nil."