commit: a2984645dbb71ab7057c5c0930fab972e2cfccf5 Author: Ulrich Müller <ulm <AT> gentoo <DOT> org> AuthorDate: Tue Sep 17 11:55:16 2024 +0000 Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org> CommitDate: Tue Sep 17 13:33:00 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2984645
dev-util/quilt: Install the Emacs mode A separate package for app-emacs/quilt-el made sense in the past when it had its own upstream. This is no longer the case; nowadays the Gentoo packages are built from the same tarball. Bug: https://bugs.gentoo.org/247500 Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org> dev-util/quilt/files/50quilt-gentoo.el | 7 ++ .../files/quilt-el-0.45.4-header-window.patch | 13 ++++ dev-util/quilt/quilt-0.68-r1.ebuild | 76 ++++++++++++++++++++++ 3 files changed, 96 insertions(+) diff --git a/dev-util/quilt/files/50quilt-gentoo.el b/dev-util/quilt/files/50quilt-gentoo.el new file mode 100644 index 000000000000..e5b51e318d73 --- /dev/null +++ b/dev-util/quilt/files/50quilt-gentoo.el @@ -0,0 +1,7 @@ +(add-to-list 'load-path "@SITELISP@") +(autoload 'quilt-mode "quilt" + "Toggle quilt-mode. With positive arg, enable quilt-mode." t) +(autoload 'quilt-hook "quilt" + "Enable quilt mode for quilt-controlled files.") +(add-hook 'find-file-hook 'quilt-hook) +(add-hook 'after-revert-hook 'quilt-hook) diff --git a/dev-util/quilt/files/quilt-el-0.45.4-header-window.patch b/dev-util/quilt/files/quilt-el-0.45.4-header-window.patch new file mode 100644 index 000000000000..eae848e804f5 --- /dev/null +++ b/dev-util/quilt/files/quilt-el-0.45.4-header-window.patch @@ -0,0 +1,13 @@ +Delete window after editing is complete +Patch from flameeyes + +--- a/lib/quilt.el ++++ b/lib/quilt.el +@@ -399,6 +399,7 @@ + (cd quilt-header-directory) + (shell-command (concat "EDITOR=cat quilt -r header <" tmp)) + (kill-buffer (current-buffer)) ++ (delete-window) + (delete-file tmp))) + + (defvar quilt-header-mode-map (make-keymap)) diff --git a/dev-util/quilt/quilt-0.68-r1.ebuild b/dev-util/quilt/quilt-0.68-r1.ebuild new file mode 100644 index 000000000000..6e8b0c278193 --- /dev/null +++ b/dev-util/quilt/quilt-0.68-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit bash-completion-r1 elisp-common + +DESCRIPTION="quilt patch manager" +HOMEPAGE="https://savannah.nongnu.org/projects/quilt" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-2 GPL-1+" # any GPL version for quilt.el +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" +IUSE="emacs graphviz" +# unresolved test failures +RESTRICT="test" + +RDEPEND="!app-emacs/quilt-el + sys-apps/ed + dev-util/diffstat + graphviz? ( media-gfx/graphviz ) + elibc_Darwin? ( app-misc/getopt ) + elibc_SunOS? ( app-misc/getopt ) + >=sys-apps/coreutils-9.4-r1 + app-arch/zstd:=" + +PATCHES=( "${FILESDIR}"/${PN}-el-0.45.4-header-window.patch ) + +pkg_setup() { + use graphviz && return 0 + echo + elog "If you intend to use the folding functionality (graphical illustration of the" + elog "patch stack) then you'll need to remerge this package with USE=graphviz." + echo +} + +src_prepare() { + # Add support for USE=graphviz + use graphviz || PATCHES+=( "${FILESDIR}"/${PN}-0.66-no-graphviz.patch ) + default +} + +src_configure() { + local myconf=() + [[ ${CHOST} == *-darwin* || ${CHOST} == *-solaris* ]] \ + && myconf+=( "--with-getopt=${EPREFIX}/usr/bin/getopt-long" ) + econf "${myconf[@]}" +} + +src_compile() { + default + use emacs && elisp-compile lib/quilt.el +} + +src_install() { + emake BUILD_ROOT="${D}" install + + rm -rf "${ED}"/usr/share/doc/${P} + dodoc AUTHORS COPYING NEWS TODO "doc/README" "doc/README.MAIL" "doc/quilt.pdf" + + # Remove misplaced Emacs mode + rm -rf "${ED}"/usr/share/emacs || die + + if use emacs; then + elisp-install ${PN} lib/quilt.{el,elc} + elisp-site-file-install "${FILESDIR}"/50${PN}-gentoo.el + dodoc doc/README.EMACS + fi + + rm -rf "${ED}"/etc/bash_completion.d + newbashcomp bash_completion ${PN} + + # Remove the compat symlinks + rm -rf "${ED}"/usr/share/quilt/compat +}