--- /dev/null
- @@ -161,7 +161,9 @@ man1dir=
+From 441b88038e0151f77c6b7676dea64d15ab27607b Mon Sep 17 00:00:00 2001
+From: Rob Browning <rlb@defaultvalue.org>
+Date: Mon, 4 Apr 2011 22:46:24 -0500
+Subject: Remove files that appear to be incompatible with the DFSG
+
+Files that appear to be incompatible with the DFSG have been removed.
+
+A number of files have been removed from this package because their
+licenses are not compatible with the Debian Free Software Guidelines
+(DFSG), or because it wasn't completely clear that their licenses are
+compatible.
+
+In particular, all of the files which are covered under the GFDL and
+have invariant sections have been removed in accordance with this
+General Resolution: http://www.debian.org/vote/2006/vote_001.
+
+The files that have been removed, but still appear to be
+distributable, have been moved to packages in Debian's non-free
+section.
+
+Author: Rob Browning <rlb@defaultvalue.org>
+Added-by: Rob Browning <rlb@defaultvalue.org>
+Status: new
+---
+ Makefile.in | 44 +++++++++++++++++---------------------------
+ admin/update_autogen | 3 +--
+ configure.ac | 15 ++++++---------
+ doc/misc/Makefile.in | 43 +++++--------------------------------------
+ lisp/help.el | 8 ++++++++
+ 5 files changed, 37 insertions(+), 76 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index c902b46ceda..fadcf1015fe 100644
+--- a/Makefile.in
++++ b/Makefile.in
- @@ -885,8 +887,7 @@ $(1)_$(2):
++@@ -161,7 +161,9 @@ man1dir=$(mandir)/man1
+ # Where to install and expect the info files describing Emacs.
+ infodir=@infodir@
+ # Info files not in the doc/misc directory (we get those via make echo-info).
+-INFO_NONMISC=emacs.info eintr.info elisp.info
++# Debian: moved DFSG incompatible files to emacs*-common-non-dfsg
++# package (see /usr/share/doc/emacs*-common/copyright).
++INFO_NONMISC=
+
+ # Directory for local state files for all programs.
+ localstatedir=@localstatedir@
- @@ -1035,9 +1036,6 @@ info-dir:
++@@ -885,8 +887,7 @@ endef
+ ### normally don't want to recompile. For example, the 'mostlyclean'
+ ### target for GCC does not delete 'libgcc.a', because recompiling it
+ ### is rarely necessary and takes a lot of time.
+-mostlyclean_dirs = src oldXMenu lwlib lib lib-src nt doc/emacs doc/misc \
+- doc/lispref doc/lispintro test
++mostlyclean_dirs = src oldXMenu lwlib lib lib-src nt doc/misc test
+
+ $(foreach dir,$(mostlyclean_dirs),$(eval $(call submake_template,$(dir),mostlyclean)))
+
+@@ -1000,11 +1001,11 @@ test/%:
+ dist:
+ cd ${srcdir}; ./make-dist
+
+-DVIS = lispref-dvi lispintro-dvi emacs-dvi misc-dvi
+-HTMLS = lispref-html lispintro-html emacs-html misc-html
+-INFOS = lispref-info lispintro-info emacs-info misc-info
+-PDFS = lispref-pdf lispintro-pdf emacs-pdf misc-pdf
+-PSS = lispref-ps lispintro-ps emacs-ps misc-ps
++DVIS = misc-dvi
++HTMLS = misc-html
++INFOS = misc-info
++PDFS = misc-pdf
++PSS = misc-ps
+
+ DOCS = $(DVIS) $(HTMLS) $(INFOS) $(PDFS) $(PSS)
+ $(DOCS):
- @@ -1059,14 +1057,10 @@ ${srcdir}/info/dir:
++@@ -1035,9 +1036,6 @@ info-dir: ${srcdir}/info/dir
+ texi_misc = $(shell MAKEFLAGS= ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
+
+ srcdir_doc_info_dir_inputs = \
+- ${srcdir}/doc/emacs/emacs.texi \
+- ${srcdir}/doc/lispintro/emacs-lisp-intro.texi \
+- ${srcdir}/doc/lispref/elisp.texi \
+ $(addprefix ${srcdir}/doc/misc/,${texi_misc})
+ info_dir_inputs = \
+ ../build-aux/dir_top \
- @@ -1084,14 +1078,10 @@ install-pdf:
++@@ -1059,14 +1057,10 @@ ${srcdir}/info/dir: ${info_dir_deps}
+ AWK='${AWK}' ../build-aux/make-info-dir ${info_dir_inputs} \
+ ) >$@.tmp && mv $@.tmp $@
+
+-INSTALL_DVI = install-emacs-dvi install-lispref-dvi \
+- install-lispintro-dvi install-misc-dvi
+-INSTALL_HTML = install-emacs-html install-lispref-html \
+- install-lispintro-html install-misc-html
+-INSTALL_PDF = install-emacs-pdf install-lispref-pdf \
+- install-lispintro-pdf install-misc-pdf
+-INSTALL_PS = install-emacs-ps install-lispref-ps \
+- install-lispintro-ps install-misc-ps
++INSTALL_DVI = install-misc-dvi
++INSTALL_HTML = install-misc-html
++INSTALL_PDF = install-misc-pdf
++INSTALL_PS = install-misc-ps
+ INSTALL_DOC = $(INSTALL_DVI) $(INSTALL_HTML) $(INSTALL_PDF) $(INSTALL_PS)
+
+ ## Install non .info forms of the documentation.
- @@ -6049,7 +6049,7 @@ AC_DEFUN
++@@ -1084,14 +1078,10 @@ install-pdf: $(INSTALL_PDF)
+ install-ps: $(INSTALL_PS)
+
+
+-UNINSTALL_DVI = uninstall-emacs-dvi uninstall-lispref-dvi \
+- uninstall-lispintro-dvi uninstall-misc-dvi
+-UNINSTALL_HTML = uninstall-emacs-html uninstall-lispref-html \
+- uninstall-lispintro-html uninstall-misc-html
+-UNINSTALL_PDF = uninstall-emacs-pdf uninstall-lispref-pdf \
+- uninstall-lispintro-pdf uninstall-misc-pdf
+-UNINSTALL_PS = uninstall-emacs-ps uninstall-lispref-ps \
+- uninstall-lispintro-ps uninstall-misc-ps
++UNINSTALL_DVI = uninstall-misc-dvi
++UNINSTALL_HTML = uninstall-misc-html
++UNINSTALL_PDF = uninstall-misc-pdf
++UNINSTALL_PS = uninstall-misc-ps
+ UNINSTALL_DOC = $(UNINSTALL_DVI) $(UNINSTALL_HTML) $(UNINSTALL_PDF) $(UNINSTALL_PS)
+
+ $(UNINSTALL_DOC):
+diff --git a/admin/update_autogen b/admin/update_autogen
+index 5923bee22bb..44e681748af 100755
+--- a/admin/update_autogen
++++ b/admin/update_autogen
+@@ -260,8 +260,7 @@ info_dir ()
+ $topic
+ EOF
+ ## Bit faster than doc/*/*.texi.
+- for file in doc/emacs/emacs.texi doc/lispintro/*.texi \
+- doc/lispref/elisp.texi doc/misc/*.texi; do
++ for file in doc/misc/*.texi; do
+
+ ## FIXME do not ignore w32 if OS is w32.
+ case $file in
+diff --git a/configure.ac b/configure.ac
+index 660784347bb..015065e8db6 100644
+--- a/configure.ac
++++ b/configure.ac
- @@ -6104,14 +6104,11 @@ m4_define
++@@ -6049,7 +6049,7 @@ dnl config.status treats $srcdir specially, so I think this is ok...
+ AC_CONFIG_FILES([$srcdir/doc/man/emacs.1])
+
+ m4_define([subdir_makefiles],
+- [lib/Makefile lib-src/Makefile oldXMenu/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile doc/lispref/Makefile src/Makefile lwlib/Makefile lisp/Makefile leim/Makefile nextstep/Makefile nt/Makefile])
++ [lib/Makefile lib-src/Makefile oldXMenu/Makefile doc/misc/Makefile src/Makefile lwlib/Makefile lisp/Makefile leim/Makefile nextstep/Makefile nt/Makefile])
+ SUBDIR_MAKEFILES="subdir_makefiles"
+ AC_CONFIG_FILES(subdir_makefiles)
+
- @@ -63,18 +63,14 @@ INSTALL_DATA =
++@@ -6104,14 +6104,11 @@ if test ! -f src/.gdbinit && test -f "$srcdir/src/.gdbinit"; then
+ fi
+ ])
+
+-dnl Perhaps this would be better named doc-emacs-emacsver.texi?
+-dnl See comments for etc-refcards-emacsver.tex.
+-dnl Since we get a doc/emacs directory generated anyway, for the Makefile,
+-dnl it is not quite the same. But we are generating in $srcdir.
+-AC_CONFIG_COMMANDS([doc/emacs/emacsver.texi], [
+-${MAKE-make} -s --no-print-directory -C doc/emacs doc-emacsver || \
+-AC_MSG_ERROR(['doc/emacs/emacsver.texi' could not be made.])
+-])
++# This file is normally generated indirectly via
++# doc/emacs/Makefile.in, but since we've removed the other doc/emacs
++# files for the DFSG split, and we don't have any prebuilt info files,
++# generate it directly here.
++AC_CONFIG_FILES([doc/emacs/emacsver.texi])
+
+ dnl If we give this the more natural name, etc/refcards/emacsver.texi,
+ dnl then a directory etc/refcards is created in the build directory,
+diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in
+index 1e3398701fc..7c0f5694b23 100644
+--- a/doc/misc/Makefile.in
++++ b/doc/misc/Makefile.in
- @@ -185,20 +178,11 @@ info.info:
++@@ -63,18 +63,14 @@ INSTALL_DATA = @INSTALL_DATA@
+ MAKEINFO = @MAKEINFO@
+ MAKEINFO_OPTS = --force -I$(emacsdir)
+
++# Debian: moved DFSG incompatible files to emacs*-common-non-dfsg
++# package (see /usr/share/doc/emacs*-common/copyright).
++
+ ## On MS Windows, efaq-w32; otherwise blank.
+ DOCMISC_W32 = @DOCMISC_W32@
+
+ ## Info files to build and install on all platforms.
+-INFO_COMMON = auth autotype bovine calc ccmode cl \
+- dbus dired-x ebrowse ede ediff edt eieio \
+- emacs-mime epa erc ert eshell eudc efaq eww \
+- flymake forms gnus emacs-gnutls htmlfontify idlwave ido info.info \
+- mairix-el message mh-e modus-themes newsticker nxml-mode octave-mode \
+- org pcl-cvs pgg rcirc remember reftex sasl \
+- sc semantic ses sieve smtpmail speedbar srecode todo-mode transient \
+- tramp url vhdl-mode vip viper widget wisent woman
++INFO_COMMON = efaq transient
+
+ ## Info files to install on current platform.
+ INFO_INSTALL = $(INFO_COMMON) $(DOCMISC_W32)
+@@ -161,9 +157,6 @@ define info_template
+ $(1): $$(buildinfodir)/$(1).info
+ endef
+
+-## "info" is already taken.
+-info.info: $(buildinfodir)/info.info
+-
+ $(foreach ifile,$(filter-out info.info,$(INFO_TARGETS)),$(eval $(call info_template,$(ifile))))
+
+
- @@ -214,23 +198,6 @@ efaq%.pdf:
++@@ -185,20 +178,11 @@ $(foreach ifile,$(filter-out info.info,$(INFO_TARGETS)),$(eval $(call info_templ
+
+ ## Extra dependencies.
+
+-need_emacsver = calc cl dired-x efaq efaq-w32 erc ido reftex woman
++need_emacsver = efaq efaq-w32
+ need_emacsver_prefix = $(addprefix ${buildinfodir}/,${need_emacsver})
+
+ $(need_emacsver_prefix:=.info) $(need_emacsver:=.dvi) $(need_emacsver:=.pdf) $(need_emacsver:=.html) : ${emacsdir}/emacsver.texi
+
+-$(buildinfodir)/gnus.info gnus.html: ${srcdir}/gnus-faq.texi
+-
+-$(buildinfodir)/semantic.info semantic.dvi semantic.pdf semantic.html: ${srcdir}/sem-user.texi
+-
+-
+-## Please can we just rename cc-mode.texi to ccmode.texi...
+-${buildinfodir}/ccmode.info: \
+- ${srcdir}/cc-mode.texi ${gfdl} ${style} | ${buildinfodir}
+- $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ $<
+
+ ## efaq, efaq_w32 do not depend on gfdl.
+ ## Maybe we can use .SECONDEXPANSION for this.
++@@ -214,23 +198,6 @@ efaq%.pdf: ${srcdir}/efaq%.texi
+ efaq%.html: ${srcdir}/efaq%.texi
+ $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ $<
+
+-${buildinfodir}/emacs-mime.info emacs-mime.html: EXTRA_OPTS = --enable-encoding
+-
+-gnus_deps = ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl} ${style}
+-gnus.dvi: $(gnus_deps)
+- sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmpdvi.texi
+- $(ENVADD) $(TEXI2DVI) gnustmpdvi.texi
+- cp gnustmpdvi.dvi $@
+- rm gnustmpdvi.*
+-
+-gnus.pdf: $(gnus_deps)
+- sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmppdf.texi
+- $(ENVADD) $(TEXI2PDF) gnustmppdf.texi
+- cp gnustmppdf.pdf $@
+- rm gnustmppdf.*
+-
+-${buildinfodir}/tramp.info tramp.html: ${srcdir}/trampver.texi
+-
+
+ abs_top_builddir = @abs_top_builddir@
+ EMACS = ${abs_top_builddir}/src/emacs
+diff --git a/lisp/help.el b/lisp/help.el
+index fd331ac0d48..cfe6dd90740 100644
+--- a/lisp/help.el
++++ b/lisp/help.el
+@@ -357,6 +357,14 @@ view-help-file
+ (goto-address-mode 1)
+ (goto-char (point-min)))
+
++(defun debian-expand-file-name-dfsg (filename)
++ "Apply expand-file-name to FILENAME.
++If expand-file-name does not find a file, append `.dfsg' and try again."
++ (let ((file (expand-file-name filename data-directory)))
++ (if (file-exists-p file)
++ file
++ (expand-file-name (concat file ".dfsg") data-directory))))
++
+ (defun describe-distribution ()
+ "Display info on how to obtain the latest version of GNU Emacs."
+ (interactive)
--- /dev/null
- @@ -124,6 +124,7 @@ vc-bzr-test-bug9781
+From 8fe0e537224de59d034315b91f1ed6f62dcdd39e Mon Sep 17 00:00:00 2001
+From: Rob Browning <rlb@defaultvalue.org>
+Date: Sun, 16 Dec 2018 17:13:36 -0600
+Subject: Mark vc-bzr-test-fauilt-bzr-autoloads as unstable for now
+
+Currently the test fails like this:
+
+ Running 3 tests (2018-12-17 12:17:43-0600)
+ passed 1/3 vc-bzr-test-bug9726
+ Mark set
+ Press C-c C-c when you are done editing.
+ Enter a change comment. Type C-c C-c when done
+ passed 2/3 vc-bzr-test-bug9781
+ Falling back on "slow" status detection ((file-missing "Opening input file" "No such file or directory" "/tmp/vc-bzr-testVlgmsb/bzr/.bzr/checkout/dirstate"))
+ Error: (error "Running bzr status --no-classify loaddefs.el...FAILED (status 3)")
+ Warnings in `bzr' output: bzr: ERROR: invalid header line: ''
+
+ Error: (error "Running bzr status --no-classify loaddefs.el...FAILED (status 3)")
+ Warnings in `bzr' output: bzr: ERROR: invalid header line: ''
+
+ Test vc-bzr-test-faulty-bzr-autoloads backtrace:
+ logand(nil 128)
+ vc-mode-line("/tmp/vc-bzr-testVlgmsb/bzr/loaddefs.el" Bzr)
+ vc-refresh-state()
+ run-hooks(find-file-hook)
+ after-find-file(t t)
+ find-file-noselect-1(#<buffer loaddefs.el> "/tmp/vc-bzr-testVlgmsb/b
+ find-file-noselect("/tmp/vc-bzr-testVlgmsb/bzr/loaddefs.el")
+ autoload-find-generated-file()
+ update-directory-autoloads("/tmp/vc-bzr-testVlgmsb/bzr/")
+ (progn (update-directory-autoloads default-directory) t)
+ (setq value-35 (progn (update-directory-autoloads default-directory)
+ (unwind-protect (setq value-35 (progn (update-directory-autoloads de
+ (if (unwind-protect (setq value-35 (progn (update-directory-autoload
+ (let (form-description-36) (if (unwind-protect (setq value-35 (progn
+ (let ((value-35 (gensym "ert-form-evaluation-aborted-"))) (let (form
+ (progn (call-process vc-bzr-program nil nil nil "init") (let ((temp-
+ (unwind-protect (progn (call-process vc-bzr-program nil nil nil "ini
+ (let* ((homedir (make-temp-file "vc-bzr-test" t)) (bzrdir (expand-fi
+ (lambda nil (let* ((fn-30 (function executable-find)) (args-31 (cond
+ ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
+ ert-run-test(#s(ert-test :name vc-bzr-test-faulty-bzr-autoloads :doc
+ ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
+ ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
+ ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
+ ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
+ eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
+ command-line-1(("-L" ":/home/locke/tmp/main-26.1/debian/build-src/te
+ command-line()
+ normal-top-level()
+ Test vc-bzr-test-faulty-bzr-autoloads condition:
+ (wrong-type-argument number-or-marker-p nil)
+ FAILED 3/3 vc-bzr-test-faulty-bzr-autoloads
+
+ Ran 3 tests, 2 results as expected, 1 unexpected (2018-12-17 12:17:46-0600)
+
+ 1 unexpected results:
+ FAILED vc-bzr-test-faulty-bzr-autoloads
+---
+ test/lisp/vc/vc-bzr-tests.el | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/test/lisp/vc/vc-bzr-tests.el b/test/lisp/vc/vc-bzr-tests.el
+index 86d497631cb..b1171edbced 100644
+--- a/test/lisp/vc/vc-bzr-tests.el
++++ b/test/lisp/vc/vc-bzr-tests.el
++@@ -124,6 +124,7 @@
+ ;; https://lists.gnu.org/r/help-gnu-emacs/2012-04/msg00145.html
+ (ert-deftest vc-bzr-test-faulty-bzr-autoloads ()
+ "Test we can generate autoloads in a bzr directory when bzr is faulty."
++ :tags '(:unstable)
+ (skip-unless (executable-find vc-bzr-program))
+ (let* ((homedir (make-temp-file "vc-bzr-test" t))
+ (bzrdir (expand-file-name "bzr" homedir))