From 6fc10e5a7d486a80b7434049e26d78f6207ae9a75db35486cf886990c7ba969e Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Mon, 17 Mar 2025 16:33:13 +0000 Subject: [PATCH 1/2] Accepting request 1253869 from home:jdelvare:branches:devel:tools:scm - Fix 2 bugs in "quilt setup" caused by the update to rpm 4.20 (boo#1236907). - New "quilt setup" option to preprocess spec files which do not comply with the standard (boo#1236907). - Install the bash completion file to the right directory (reported by rpmlint). OBS-URL: https://build.opensuse.org/request/show/1253869 OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/quilt?expand=0&rev=136 --- .gitattributes | 23 + .gitignore | 1 + fix-two-exit-values.patch | 35 + ...s-fix-exit-operator-precedence-error.patch | 36 + inspect-wrapper-fix-rpm-4.20.patch | 38 + quilt-0.68.tar.xz | 3 + quilt-support-vimdiff.patch | 40 + quilt.changes | 1636 +++++++++++++++++ quilt.spec | 134 ++ setup-implement-a-spec-filter-library.patch | 82 + setup-new-option-spec-filter.patch | 80 + ...e-to-rpmbuild-instead-of-eval-define.patch | 59 + suse-start-quilt-mode.el | 6 + suse-workaround-pseudo-release.patch | 27 + 14 files changed, 2200 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 fix-two-exit-values.patch create mode 100644 guards-fix-exit-operator-precedence-error.patch create mode 100644 inspect-wrapper-fix-rpm-4.20.patch create mode 100644 quilt-0.68.tar.xz create mode 100644 quilt-support-vimdiff.patch create mode 100644 quilt.changes create mode 100644 quilt.spec create mode 100644 setup-implement-a-spec-filter-library.patch create mode 100644 setup-new-option-spec-filter.patch create mode 100644 setup-pass-define-to-rpmbuild-instead-of-eval-define.patch create mode 100644 suse-start-quilt-mode.el create mode 100644 suse-workaround-pseudo-release.patch diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/fix-two-exit-values.patch b/fix-two-exit-values.patch new file mode 100644 index 0000000..3b8a187 --- /dev/null +++ b/fix-two-exit-values.patch @@ -0,0 +1,35 @@ +From: Jean Delvare +Date: Mon, 10 Feb 2025 11:33:41 +0100 +Subject: Fix two exit values +Git-commit: 8a9068f90ee08e2b8672c788363c357656cddd3e +Patch-mainline: yes + +In perl, "exit" is considered a named unary operator, and these have +higher precedence than the ternary ?: opertor. Therefore parentheses +are required to properly evaluate the exit value before returning it. + +Signed-off-by: Jean Delvare +--- + quilt/scripts/dependency-graph.in | 2 +- + test/run | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +--- a/quilt/scripts/dependency-graph.in ++++ b/quilt/scripts/dependency-graph.in +@@ -112,7 +112,7 @@ SYNOPSIS: $basename [-h] [--patcher] [-- + Check the ranges of lines that the patches modify for computing + dependencies. Include up to num lines of context. + EOF +- exit $help ? 0 : 1; ++ exit ($help ? 0 : 1); + } + + my @nodes; +--- a/test/run ++++ b/test/run +@@ -331,4 +331,4 @@ if (isatty(fileno(STDOUT))) { + } + print_footer "$status\n"; + flush_output; +-exit $failed ? 1 : 0; ++exit ($failed ? 1 : 0); diff --git a/guards-fix-exit-operator-precedence-error.patch b/guards-fix-exit-operator-precedence-error.patch new file mode 100644 index 0000000..4d96a3d --- /dev/null +++ b/guards-fix-exit-operator-precedence-error.patch @@ -0,0 +1,36 @@ +From 99e4ab70434c7156a82155c68d9f753e22926d8e Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Mon, 10 Feb 2025 11:33:37 +0100 +Subject: guards: fix exit operator precedence error +Git-commit: 99e4ab70434c7156a82155c68d9f753e22926d8e +Patch-mainline: yes + +The perl expression: + exit $problems ? 1 : 0; +will now throw a warning with newer versions of perl: + Possible precedence issue with control flow operator (exit) at /usr/bin/guards line 198. +as it properly catches that the control flow is NOT being evaluated +here. For more details on the issue, please see this 10-year-old perl +blog post: + https://blogs.perl.org/users/buddy_burden/2014/06/when-a-failure-is-not-a-failure.html + +Fix this up by providing the proper "evaluate this expression and THEN +return the value" logic that the code was expecting: + +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Jean Delvare +--- + bin/guards.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/bin/guards.in ++++ b/bin/guards.in +@@ -195,7 +195,7 @@ if ($check) { + # This is not an error if the entries are mutually exclusive... + } + } +- exit $problems ? 1 : 0; ++ exit ($problems ? 1 : 0); + + } elsif ($list) { + parse($fh, sub { diff --git a/inspect-wrapper-fix-rpm-4.20.patch b/inspect-wrapper-fix-rpm-4.20.patch new file mode 100644 index 0000000..71c1968 --- /dev/null +++ b/inspect-wrapper-fix-rpm-4.20.patch @@ -0,0 +1,38 @@ +From: Jean Delvare +Subject: setup: Fix for rpm 4.20's RPM_BUILD_ROOT change +Patch-mainline: submitted 2025-03-16, https://lists.gnu.org/archive/html/quilt-dev/2025-03/msg00010.html +References: bsc#1236907 + +rpm 4.20 creates a working directory (named +${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-build) inside _builddir +and RPM_BUILD_DIR points to that directory instead of _builddir as +it used to. This confuses the inspect-wrapper script which assumes +that RPM_BUILD_DIR points to _builddir. + +Detect this case and make RPM_BUILD_DIR point to _builddir again so +that the rest of the code keeps working. + +Signed-off-by: Jean Delvare +--- + quilt/scripts/inspect-wrapper.in | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +--- quilt.orig/quilt/scripts/inspect-wrapper.in 2025-02-12 14:12:31.065020150 +0100 ++++ quilt/quilt/scripts/inspect-wrapper.in 2025-02-14 13:28:37.751790147 +0100 +@@ -239,6 +239,16 @@ PATH=${PATH#*:} + # If we are called too early, pass through without processing + [ -n "$RPM_BUILD_DIR" ] || exec $command "$@" + ++# rpm 4.20 creates a working directory (named ++# ${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-build) inside _builddir ++# and RPM_BUILD_DIR points to that directory instead of _builddir as ++# it used to. Detect this case and make RPM_BUILD_DIR point to ++# _builddir again so that the rest of the code keeps working. ++if echo "$RPM_BUILD_DIR" | grep -q '/build/[^/]*-build$' ++then ++ RPM_BUILD_DIR=${RPM_BUILD_DIR%/*} ++fi ++ + tmpdir=${RPM_BUILD_DIR%/*} + case $command in + patch) diff --git a/quilt-0.68.tar.xz b/quilt-0.68.tar.xz new file mode 100644 index 0000000..897d263 --- /dev/null +++ b/quilt-0.68.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa4f3f1ddcdbd135bfd99df26159a1fe65a1d6b571afb5b063995184c490eaa3 +size 468692 diff --git a/quilt-support-vimdiff.patch b/quilt-support-vimdiff.patch new file mode 100644 index 0000000..137d568 --- /dev/null +++ b/quilt-support-vimdiff.patch @@ -0,0 +1,40 @@ +From: Jean Delvare +Subject: Fix interaction between quilt and vimdiff +References: bnc#749563 + +Using vimdiff as a diff viewer in quilt breaks if QUILT_PAGER is set. +So inhibit the pager in that case. Other diff viewers may be affected +as well but I don't know how to fix this in a generic way, short of +inhibiting the pager as soon as option --diff is passed to the diff +command. Not sure if this desirable though, as I presume +non-interactive alternative diff viewers must exist too. +--- + quilt/diff.in | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) +--- a/quilt/diff.in ++++ b/quilt/diff.in +@@ -53,7 +53,9 @@ included. + + --diff=utility + Use the specified utility for generating the diff. The utility +- is invoked with the original and new file name as arguments. ++ is invoked with the original and new file name as arguments. If ++ using an interactive text-mode diff viewer that is not known to ++ quilt, you will have to unset QUILT_PAGER for proper result. + + --color[=always|auto|never] + Use syntax coloring (auto activates it only if the output is a tty). +@@ -214,6 +216,13 @@ fi + + QUILT_DIFF_OPTS="$QUILT_DIFF_OPTS $opt_format" + ++# Inhibit pager for interactive text-mode diff viewers ++case "$(basename $opt_diff)" in ++vimdiff) ++ QUILT_PAGER= ++ ;; ++esac ++ + opt_files=( $(for file in "$@"; do echo "$SUBDIR${file#./}" ; done) ) + + if [ $[0$opt_combine + 0$opt_snapshot + 0$opt_relative] -gt 1 ] diff --git a/quilt.changes b/quilt.changes new file mode 100644 index 0000000..bc96740 --- /dev/null +++ b/quilt.changes @@ -0,0 +1,1636 @@ +------------------------------------------------------------------- +Mon Mar 17 15:27:54 UTC 2025 - Jean Delvare + +- Drop obsolete suse version checks (reported by rpmlint). + +------------------------------------------------------------------- +Mon Mar 17 14:34:07 UTC 2025 - Jean Delvare + +- guards-fix-exit-operator-precedence-error.patch, + fix-two-exit-values.patch: Avoid a perl warning due to missing + parentheses when using the ?: operator to compute an exit value. +- setup-pass-define-to-rpmbuild-instead-of-eval-define.patch: Fix + building noarch packages with rpm >= 4.20 (boo#1236907). +- setup-new-option-spec-filter.patch, + setup-implement-a-spec-filter-library.patch: Make it possible to + preprocess spec files which do not comply with the standard. Most + notably multibuild OBS spec files need to be preprocessed. Use + option "--spec-filter=obs" for these (boo#1236907). +- inspect-wrapper-fix-rpm-4.20.patch: Detect the change of build + root path hierarchy introduced by rpm 4.20 (boo#1236907). +- Drop suse-workaround-pseudo-release.patch, superseded by new + option --spec-filter. +- Install the bash completion file to the right directory (reported + by rpmlint). + +------------------------------------------------------------------- +Thu Mar 28 13:37:03 UTC 2024 - Jean Delvare + +- Update to version 0.68: + * Add support for zstd archives + * Documentation: Massive formatting update of the manual page + * Documentation: Reword some sections of the manual page + * Fix compatibility with GNU awk version 5.0.0 and later + * Test suite: Fix various race conditions (savannah#63651) + * patches: Find file name with a space in unapplied patches + (savannah#41708) + * pop: Hint at diff -z on failure + * setup: Better explain the limitation of spec file support + * Obsoletes avoid-warnings-with-grep-3.8.patch + * Obsoletes setup-document-the-limitation-of-spec-file-support.patch + * Obsoletes test-faildiff-workaround-order-bug.patch +- Drop expand.diff. This extra command was written 19 years ago + but was never added upstream, and recent upstream changes broke + it. I never used it, I think we can live without it. If anyone + really misses the functionality then the patch should be sent + upstream and get properly reviewed there. +- Recommend unzip, as the setup command may need it (bsc#1201950). +- Recommend zstd when available, now that it is supported. + +------------------------------------------------------------------- +Tue Feb 20 14:05:15 UTC 2024 - Dominique Leuenberger + +- Use %autosetup macro. Allows to eliminate the usage of deprecated + %patchN + +------------------------------------------------------------------- +Thu Oct 6 16:57:34 UTC 2022 - Jean Delvare + +- setup-document-the-limitation-of-spec-file-support.patch: + Document the fact that "quilt setup" does not support arbitrary + %prep sections and some adjustments to the spec file may be + needed (boo#1203791). + +------------------------------------------------------------------- +Fri Sep 9 08:18:31 UTC 2022 - Jean Delvare + +- avoid-warnings-with-grep-3.8.patch: Avoid warnings with grep + 3.8. GNU grep version 3.8 became more strict about needless + quoting in patterns. There was an occurrence of that in quilt, + which broke the test suite (boo#1203230). + +------------------------------------------------------------------- +Tue Feb 15 14:07:30 UTC 2022 - Jean Delvare + +- Update to version 0.67: + * Call pager with original LANG environment variable + * Consistently complain early if no series file is found + * Tighten the patch format parsing + * Reuse the shell (performance) + * Document the series file format further + * Document that quilt loads /etc/quilt.quiltrc + * series: Minor optimizations + * setup: Don't obey the settings of any englobing .pc + * setup: Default to fast mode + * quilt.el: Fix documentation of quilt-pc-directory + * quilt.el: Load /etc/quilt.quiltrc if ~/.quiltrc doesn't exist + * quilt.el: Fix quilt-editable when QUILT_PATCHES_PREFIX is set + * Obsoletes backup-files-restore-symbolic-links.patch + * Obsoletes inspect-handle-link-in-path.patch +- Refresh quilt-support-vimdiff.patch (offsets only) +- Refresh suse-workaround-pseudo-release.patch (offsets only) + +------------------------------------------------------------------- +Wed Dec 9 14:15:38 UTC 2020 - Jean Delvare + +- backup-files-restore-symbolic-links.patch: Handle git-generated + patches which include symbolic link manipulation (savannah bug + #59479). +- quilt.spec: Recommend "ed", as the annotate command requires it. + +------------------------------------------------------------------- +Tue Nov 24 14:37:49 UTC 2020 - Jean Delvare + +- inspect-handle-link-in-path.patch: inspect-wrapper: procfs + resolves links, so we must do the same (bsc#1179023) + +------------------------------------------------------------------- +Fri Mar 29 16:06:38 UTC 2019 - Jean Delvare + +- test-faildiff-workaround-order-bug.patch: Avoid false-positive + test suite failures in the build service. + +------------------------------------------------------------------- +Fri Mar 29 15:34:44 UTC 2019 - Jean Delvare + +- Update to version 0.66: + * Add support for lzip archives and patches + * Document QUILT_PC as user-settable + * configure: Don't require md5sum + * Test suite: Allow keeping the working directory on failure + * Test suite: Fix /bin/sh filtering + * Test suite: Run tests again if test.quiltrc changes + * Test suite: Handle alternative QUILT_PATCHES values + * Test suite: Increase code path coverage + * Test suite: Be verbose on directory error + * Test suite: Clean up when interrupted + * Test suite: Prevent test cases from escaping + * diff: Add missing quotes in basename call + * header: Fix corruption when trailing newline is missing + * mail: Remove Content-Disposition headers + * mail: Complain when a patch doesn't exist + * new: Fix corruption when trailing newline is missing + * refresh: Add missing quotes in basename call + * setup: Add basic support for p7zip (.7z) archives + * setup: Align --fast on --slow for series files + * quilt.el: Define quilt-edit-top-only before it's used + * quilt.el: Stop using deprecated toggle-read-only + * quilt.el: Don't strip directory in quilt-top-patch + * quilt.el: Fix emacs compatibility issue + * quilt.el: Read QUILT_PC from config file + * guards: Mention it in quilt manual page + * compat/getopt: Handle a second separator + * compat/getopt: Allow non-digit parameter embedded in short option + * Obsoletes mail-fix-patch-set-threading.patch + * Obsoletes patch-wrapper-rpm.diff + * Obsoletes perl-526.patch + * Obsoletes quilt-translations.patch + * Obsoletes quiltrc-support-all-patch-formats-by-default.patch +- Refresh suse-workaround-pseudo-release.patch + +------------------------------------------------------------------- +Thu May 3 08:53:20 CEST 2018 - jdelvare@suse.de + +- quiltrc-support-all-patch-formats-by-default.patch: quiltrc: + Support all patch formats by default (bsc#1088281). + +------------------------------------------------------------------- +Sun Sep 24 10:00:18 UTC 2017 - coolo@suse.com + +- add perl-526.patch to work with perl 5.26 + +------------------------------------------------------------------- +Fri Jul 21 17:11:23 UTC 2017 - olaf@aepfle.de + +- Correct fold -R helptext in german locale with quilt-translations.patch + +------------------------------------------------------------------- +Mon May 29 11:24:01 UTC 2017 - jdelvare@suse.de + +- Add missing bug number in changes file (bsc#1041323). + +------------------------------------------------------------------- +Fri Apr 14 13:56:29 CEST 2017 - jdelvare@suse.de + +- Change the rpm group. Quilt is a development tool, not a text + file editor. +- We don't need procmail to build quilt. +- patch-wrapper-rpm.diff: Add a decription and upstream reference. +- mail-fix-patch-set-threading.patch: mail: Fix patch set threading + (regression in version 0.64, savannah bug #50775.) + +------------------------------------------------------------------- +Thu Nov 10 10:34:09 CET 2016 - jdelvare@suse.de + +- Update to version 0.65: + * Project settings have priority + * Fix a race condition in diff_file + * Performance: Optimizations to the setup command + * Performance: Optimizations to the bash completion script + * Test suite: Improve the edit test case + * Test suite: Test backup failure + * Test suite: Test the header command with hard links + * diff: Report diff failures + * mail: Fix the help text + * push: Fix the synopsis + * refresh: Do not remove symlinks + * refresh: Break links to read-only patch files + * refresh: Always preserve modification time + * setup: Report failed look-ups in inspect-wrapper + * quilt.el: Fix quilt-editable when patches are stored in subdirs + * bash_completion: Handle spaces in file names + * bash_completion: Update the list of commands + * bash_completion: Add new command options + * bash_completion: Fix handling of mail, new, push options + * guards: Simplify the help text + * guards: Include the file name also in the "Not found" case + * guards: Add support for an external filelist in --check mode + * guards: Report which config file has problem in --check mode + * guards: Documentation update + * guards: Clarify a user message + * Obsoletes edit-01-test-file-creation.patch + * Obsoletes edit-02-call-remove-not-revert.patch + * Obsoletes edit-03-fix-corner-case.patch + * Obsoletes translation-fixes-01.patch + * Obsoletes translation-fixes-02.patch + * Obsoletes translation-fixes-03.patch + * Obsoletes translation-fixes-04.patch + * Obsoletes reject-binary-files-in-patches.patch +- Pass --sysconfdir to configure so that the configuration files + are installed in the right place. +- Update package description. +- Refresh suse-workaround-pseudo-release.patch + +------------------------------------------------------------------- +Fri Sep 16 09:24:13 UTC 2016 - jdelvare@suse.de + +- reject-binary-files-in-patches.patch: Since diffutils version + 3.4, diff no longer returns an error code for binary files. Parse + the first line of the output to detect this case and raise our + own error. +- Remove fix-faildiff-test-for-diffutils-3.4.patch, use the + upstream fix instead. + +------------------------------------------------------------------- +Fri Sep 9 11:05:04 CEST 2016 - jdelvare@suse.de + +- fix-faildiff-test-for-diffutils-3.4.patch: Since diffutils + version 3.4, diff no longer returns an error code for binary + files. Remove this test from faildiff.test. + +------------------------------------------------------------------- +Mon Feb 16 17:22:51 CET 2015 - jdelvare@suse.de + +Translation fixes: +- translation-fixes-01.patch: Make gettext happy (needed so that + following patches apply cleanly.) +- translation-fixes-02.patch: Missing escape in Japanese + translation. +- translation-fixes-03.patch: Improve the German translation + (including a number of important fixes.) +- translation-fixes-04.patch: Fix translation of main usage message + (all languages.) + +Fixes to the "edit" command: +- edit-01-test-file-creation.patch: edit: Improve the test case + (needed so that following patches apply cleanly.) +- edit-02-call-remove-not-revert.patch: edit: Use command "remove" + to remove files. +- edit-03-fix-corner-case.patch: edit: Fix a corner case. + +------------------------------------------------------------------- +Mon Feb 16 15:43:04 CET 2015 - jdelvare@suse.de + +- Update to version 0.64: + * Performance: Several optimizations + * Test suite: Several fixes and coverage improvements + * Test suite: Run the tests in predictable order + * files: Add support for unapplied patches + * graph: Check for graphviz availability + * mail: Remove procmail dependency + * push: Do not use interactive mode with -f + * Obsoletes dont-substitute-release.patch + * Obsoletes hackweek-11-01-comment-update.patch + * Obsoletes hackweek-11-02-cleanups.patch + * Obsoletes hackweek-11-03-inspect-list-all-options.patch + * Obsoletes hackweek-11-04-pass-through.patch + * Obsoletes hackweek-11-05-no-explicit-rm.patch + * Obsoletes hackweek-11-06-exclude-from-md5sums.patch + * Obsoletes hackweek-11-07-normalize-path.patch + * Obsoletes hackweek-11-08-inspect-split-wrapper-script.patch + * Obsoletes hackweek-11-09-inspect-temporary-data-file.patch + * Obsoletes hackweek-11-10-setup-fix-path-to-extra-patches.patch + * Obsoletes hackweek-11-11-setup-trace-call-first.patch + * Obsoletes hackweek-11-12-setup-alternative-implementation-v2.patch + * Obsoletes hackweek-11-13-setup-let-normalize_path-deal-with-dot.patch + * Obsoletes hackweek-11-14-setup-fix-link-creation.patch + * Obsoletes hackweek-11-15-setup-missing-escape-in-normalize_path.patch + * Obsoletes hackweek-11-16-setup-fix-create_symlink-corner-case.patch + * Obsoletes inspect-skip-version-check.patch + * Obsoletes pop-add-auto-refresh.patch + * Obsoletes push-add-auto-refresh.patch + * Obsoletes quilt-check-modified-series-rearm.patch + * Obsoletes quilt-check-modified-series.patch + * Obsoletes quilt-el-fix-patch-select-completion.patch + * Obsoletes quilt-el-fix-tramp-support.patch + * Obsoletes quilt-format-options-pass-through.patch + * Obsoletes setup-check-for-rpmbuild.patch + * Obsoletes setup-fix-tar-with-long-options.patch + * Obsoletes setup-skip-version-check.patch +- Refresh suse-workaround-pseudo-release.patch + +------------------------------------------------------------------- +Wed Feb 4 08:52:03 CET 2015 - jdelvare@suse.de + +- dont-substitute-release.patch: Update upstream reference. +- hackweek-11-15-setup-missing-escape-in-normalize_path.patch: + setup: Fix removal of "." components in normalize_path. +- hackweek-11-16-setup-fix-create_symlink-corner-case.patch: setup: + Fix a corner case in create_symlink (boo#916007). + +------------------------------------------------------------------- +Wed Jan 28 12:15:51 CET 2015 - jdelvare@suse.de + +- dont-substitute-release.patch: mail: Don't include the release + number in User-Agent. + +------------------------------------------------------------------- +Wed Jan 28 11:40:19 CET 2015 - jdelvare@suse.de + +- Update upstream references. +- quilt-el-fix-tramp-support.patch: quilt-el: Fix tramp support. +- quilt-el-fix-patch-select-completion.patch: quilt-el: Fix patch + select completion. +- hackweek-11-13-setup-let-normalize_path-deal-with-dot.patch: + setup: Let normalize_path deal with ".". +- hackweek-11-14-setup-fix-link-creation.patch: setup: Fix link + creation. + +------------------------------------------------------------------- +Mon Dec 8 10:39:42 CET 2014 - jdelvare@suse.de + +- Update upstream references. +- hackweek-11-11-setup-alternative-implementation.patch: Delete, + replaced with new implementation. +- hackweek-11-11-setup-trace-call-first.patch: inspect-wrapper: + Trace calls earlier. +- hackweek-11-12-setup-alternative-implementation-v2.patch: New + implementation of "setup --fast" option. + +------------------------------------------------------------------- +Tue Nov 4 13:30:30 CET 2014 - jdelvare@suse.de + +- quilt.spec: Only use Recommends for SUSE targets, as it was not + supported upstream until very recently so it breaks the build + on Fedora_18, RHEL_6 and CentOS_6. + +------------------------------------------------------------------- +Mon Nov 3 14:09:31 CET 2014 - jdelvare@suse.de + +- quilt-check-modified-series.patch: Add upstream reference. +- quilt-check-modified-series-rearm.patch: pop: Rearm consistency + check if needed. +- hackweek-11-01-comment-update.patch: inspect: Comment update. +- hackweek-11-02-cleanups.patch: setup/inspect: Cleanups. +- hackweek-11-03-inspect-list-all-options.patch: inspect: List all + options in usage text. +- hackweek-11-04-pass-through.patch: inspect: Pass through the + wrappers when appropriate. +- hackweek-11-05-no-explicit-rm.patch: inspect: Don't explicitly + delete the temporary data file. +- hackweek-11-06-exclude-from-md5sums.patch: inspect: Exclude more + files from md5sums. +- hackweek-11-07-normalize-path.patch: setup: Introduce function + normalize_path. +- hackweek-11-08-inspect-split-wrapper-script.patch: inspect: Split + the patch/tar/unzip wrapper to a separate script. +- hackweek-11-09-inspect-temporary-data-file.patch: + inspect-wrapper: Minor code optimization. +- hackweek-11-10-setup-fix-path-to-extra-patches.patch: setup: Fix + path to extra patches in series file. +- hackweek-11-11-setup-alternative-implementation.patch: setup: Add + --fast option. + +------------------------------------------------------------------- +Tue Oct 14 13:07:53 CEST 2014 - jdelvare@suse.de + +- quilt-check-modified-series.patch: Check for series file + consistency. +- setup-fix-tar-with-long-options.patch, + inspect-skip-version-check.patch: Update upstream status. + +------------------------------------------------------------------- +Thu Oct 9 15:00:35 CEST 2014 - jdelvare@suse.de + +- inspect-skip-version-check.patch: Skip version check when + running "quilt setup" on a spec file. The previous fix only + worked when running "quilt setup" on a series file. + +------------------------------------------------------------------- +Wed Oct 1 14:10:22 CEST 2014 - jdelvare@suse.de + +- setup-fix-tar-with-long-options.patch: Update to new upstream + version. This fixes handling of corner cases. +- quilt-format-options-pass-through.patch, + pop-add-auto-refresh.patch, push-add-auto-refresh.patch: + Implement auto-refreshing when applying or unapplying patches, as + suggested by Tomas Cech and Takashi Iwai. + +------------------------------------------------------------------- +Thu Jul 31 18:47:10 CEST 2014 - jdelvare@suse.de + +- setup-skip-version-check.patch: setup: Skip version check + (bsc#891332). +- setup-fix-tar-with-long-options.patch: inspect: Handle long + options passed to tar. + +------------------------------------------------------------------- +Mon Jun 9 15:46:01 CEST 2014 - jdelvare@suse.de + +- Fix setup-check-for-rpmbuild.patch: echo was used where printf + was intended (bnc#873817); also update upstream reference + +------------------------------------------------------------------- +Mon Jun 9 14:45:46 CEST 2014 - jdelvare@suse.de + +- update to 0.63 + * Option -E is no longer passed to patch by default + * Return 2 when there is nothing to do, contrasting with errors + (ret=1) + * Exit with an error when diff's retcode=2 (error) on patch + refresh + * bash_completion: cleanups and performance improvement + (Savannah's #27111) + * Add some tests to our testsuite, for a better coverage + * Bug fix: Patches emptying files should work now + * Bug fix: Check for duplicate patch in series (Savannah's + #20628) + * Obsoletes quilt-bash_completion-fix-completion-of-patch-names.patch + * Obsoletes quilt-boost-the-speed-of-series-applied-and-unapplied.patch + * Obsoletes quilt-enable-patch-wrapper-test.patch + * Obsoletes quilt-files-return-nothing-if-there-are-no-files.patch + * Obsoletes quilt-fix-quilt-diff-z-on-files-with-spaces-in-name.patch + * Obsoletes quilt-patches-fix-heuristic-for-unapplied-patches-with-timestamps.patch + * Obsoletes quilt-patches-optimize-processing-of-unapplied-patches.patch + * Obsoletes quilt-patches-optimize-the-multiple-files-case.patch + * Obsoletes quilt-refresh-fix-error-message.patch +- Refresh patch-wrapper-rpm.diff +- Refresh quilt-support-vimdiff.patch + +------------------------------------------------------------------- +Fri Apr 25 18:16:09 CEST 2014 - jdelvare@suse.de + +- quilt-bash_completion-fix-completion-of-patch-names.patch: Fix + bash completion of patch names (bnc#872719) +- quilt-boost-the-speed-of-series-applied-and-unapplied.patch: + Performance boost for series, applied and unapplied commands + (bnc#872719) +- quilt-enable-patch-wrapper-test.patch: Re-enable testing of + patch-wrapper (bnc#872719) +- quilt-files-return-nothing-if-there-are-no-files.patch: Fix quilt + files output when there are no files (bnc#872719) +- quilt-fix-quilt-diff-z-on-files-with-spaces-in-name.patch: Fix + quilt diff -z on file names including spaces (bnc#872719) +- quilt-patches-fix-heuristic-for-unapplied-patches-with-timestamps.patch: + Fix patches heuristic for unapplied patches with timestamps + (bnc#872719) +- quilt-patches-optimize-processing-of-unapplied-patches.patch, + quilt-patches-optimize-the-multiple-files-case.patch: Fix + performance regression in quilt patches (bnc#872719) +- quilt-refresh-fix-error-message.patch: Fix refresh error message + (bnc#872719) + +------------------------------------------------------------------- +Thu Apr 17 10:49:29 CEST 2014 - jdelvare@suse.de + +- setup-check-for-rpmbuild.patch: setup: Check for rpmbuild + availability (bnc#873817) +- Add recommends: rpmbuild (bnc#873817) + +------------------------------------------------------------------- +Fri Mar 21 09:42:03 CET 2014 - ohering@suse.de + +- quilt requires less, unless PAGER is set + +------------------------------------------------------------------- +Mon Dec 9 13:36:41 CET 2013 - jdelvare@suse.de + +- Recompress the source archive with bzip2 (to remove a rpmlint + warning.) + +------------------------------------------------------------------- +Mon Dec 9 11:20:32 CET 2013 - jdelvare@suse.de + +- Change bzip2 from required to recommended. Quilt works just fine + without it and xz compression if becoming more popular than + bzip2. + +------------------------------------------------------------------- +Mon Dec 9 10:44:43 CET 2013 - jdelvare@suse.de + +- update to 0.61 + * No new feature, but almost two years of fixes and minor + improvements. + * Many fixes and improvements to quilt.el (emacs integration.) + * Many fixes and improvements to the setup command, which we + already had as patches. + * Parameter quoting fixes to many commands. + * Several fixes and improvements to remove-trailing-ws, together + with a dedicated test case. + * Various fixes to the pop, push, refresh and patches commands. + * Translation fixes and updates. + * Obsoletes quilt-find-quoting-style.patch. + * Obsoletes quilt-makefile-fix-configure-with-xargs.patch. + * Obsoletes quilt-makefile-fix-find-perm-usage.patch. + * Obsoletes quilt-setup-01-check-existing-files-after-unpack.patch. + * Obsoletes quilt-setup-02-try-alternative-names.patch. + * Obsoletes quilt-setup-03-remember-alternative-names.patch. + * Obsoletes quilt-setup-04-handle-zip-files.patch. + * Obsoletes quilt-setup-05-fix-check_for_existing_files.patch. + * Obsoletes quilt-setup-06-check-for-directories-too.patch. + * Obsoletes quilt-stable-rebuild.patch. + +------------------------------------------------------------------- +Mon Sep 30 14:36:03 CEST 2013 - jdelvare@suse.de + +- quilt-makefile-fix-find-perm-usage.patch: Makefile: Fix "find + -perm" usage. +- quilt-makefile-fix-configure-with-xargs.patch: Makefile: Fix + support for "./configure --with-xargs". +- quilt-find-quoting-style.patch: delete.test: Cope with new + quoting style in find error message. + +------------------------------------------------------------------- +Fri Apr 5 12:49:39 UTC 2013 - idonmez@suse.com + +- Cleanup spec file +- Add Source URL, see https://en.opensuse.org/SourceUrls + +------------------------------------------------------------------- +Fri Oct 19 14:17:34 CEST 2012 - jdelvare@suse.de + +- quilt.spec: Add myself as an author. + +------------------------------------------------------------------- +Fri Oct 19 11:15:16 CEST 2012 - jdelvare@suse.de + +- quilt-setup-04-handle-zip-files.patch: Refresh from upstream. +- quilt-setup-05-fix-check_for_existing_files.patch: Fix handling + of directory names including white spaces by + check_for_existing_files. +- quilt-setup-06-check-for-directories-too.patch: Check for + existing directories before unpacking. + +------------------------------------------------------------------- +Wed Oct 17 21:42:44 CEST 2012 - jdelvare@suse.de + +- quilt-setup-04-handle-zip-files.patch: Let quilt setup handle + zip archives referenced in spec files (bnc#768332). + +------------------------------------------------------------------- +Tue Oct 16 13:13:36 CEST 2012 - jdelvare@suse.de + +- quilt-setup-01-check-existing-files-after-unpack.patch: setup: + Check for existing files after unpacking (bnc#785167). +- quilt-setup-02-try-alternative-names.patch: setup: Try + alternative patches/series names (bnc#785167). +- quilt-setup-03-remember-alternative-names.patch: setup: Run + create_db (bnc#785167). + +------------------------------------------------------------------- +Fri Mar 2 14:20:24 CET 2012 - jdelvare@suse.de + +- Fix interaction between quilt and vimdiff (bnc#749563). + +------------------------------------------------------------------- +Thu Mar 1 21:29:26 CET 2012 - jdelvare@suse.de + +- Fix build (/usr/lib/quilt is gone.) +- Turn into a noarch package. + +------------------------------------------------------------------- +Thu Mar 1 21:11:18 CET 2012 - jdelvare@suse.de + +- update to 0.60 + * Includes a rewrite of backup-files from C to bash, making it + possible to turn quilt into a noarch package. + * Includes several fixes to the mail command. + * Obsoletes fix-relative-import.patch. + * Obsoletes grep-support-spaces.patch. + +------------------------------------------------------------------- +Sat Feb 25 23:50:59 CET 2012 - meissner@suse.de + +- make rebuilding stable by sorting the README reference entries. + +------------------------------------------------------------------- +Wed Feb 1 16:01:36 CET 2012 - jdelvare@suse.de + +- Fix license string to make rpmlint happy. + +------------------------------------------------------------------- +Mon Jan 30 13:49:59 CET 2012 - jdelvare@suse.de + +- fix-relative-import.patch: Fix import of relative patches + (savannah#35244). + +------------------------------------------------------------------- +Sun Jan 29 20:22:18 CET 2012 - jdelvare@suse.de + +- update to 0.51 + * Obsoletes change-docdir-definition.patch. + * Obsoletes fix-inspect.patch. + * Obsoletes inspect-check-if-wrapper-executable.patch. + * Obsoletes inspect-remap-outputs.patch. + * Obsoletes mail-fix-delivery-address-checking.patch. + * Obsoletes patchfns-non-exec.patch. + * Obsoletes substitute-docdir-in-man-page.patch. + +------------------------------------------------------------------- +Tue Jan 17 21:34:30 CET 2012 - jdelvare@suse.de + +- inspect-remap-outputs.patch, + inspect-check-if-wrapper-executable.patch: inspect: Report if + patch/tar wrapper can't be executed (quilt setup). + +------------------------------------------------------------------- +Fri Dec 16 14:41:39 CET 2011 - jdelvare@suse.de + +- Fix two rpmlint warnings. + +------------------------------------------------------------------- +Fri Dec 16 11:53:53 CET 2011 - jdelvare@suse.de + +- Don't call autoconf during build, assume configure script is + already up-to-date. This avoids problems when version of autoconf + is too old. + +------------------------------------------------------------------- +Thu Dec 15 15:18:04 CET 2011 - jdelvare@suse.de + +- Delete docdir.diff, replaced with + substitute-docdir-in-man-page.patch and + change-docdir-definition.patch. Upstream solution for the same + problem. + +------------------------------------------------------------------- +Wed Dec 7 23:26:56 CET 2011 - jdelvare@suse.de + +- fix-inspect.patch: Fix inspect (quilt setup). + +------------------------------------------------------------------- +Wed Dec 7 20:53:56 CET 2011 - jdelvare@suse.de + +- mail-fix-delivery-address-checking.patch: quilt mail: Fix + delivery address checking. + +------------------------------------------------------------------- +Tue Dec 6 14:24:24 CET 2011 - jdelvare@suse.de + +- update to 0.50 + * Obsoletes fix-test-create-delete.diff. + * Obsoletes hide-git-desc-error.diff. + * Obsoletes mail-dont-use-equal-tilde.diff. + * Obsoletes revert-should-not-hard-link.diff. + * Obsoletes fix-fr-import-message.diff. + * Obsoletes lzma-xz-support.patch, except expand part which was + merged in expand.diff. + * Obsoletes inspect-lzma-xz.patch. + * Obsoletes fix-patch-version-detection.patch. + * Obsoletes setup-add-fuzz-parameter.patch. + * Obsoletes setup-support-reverse-patch.patch. + * Obsoletes completion-revert.patch. + * Obsoletes inspect-shell-syntax-errors.patch. + * Obsoletes mail-fix-a-temporary-directory-leak.patch. + * Too many upstream changes in 34 months to list. +- Add missing requires: findutils. +- Add recommends: xz. + +------------------------------------------------------------------- +Thu Dec 1 16:23:20 CET 2011 - jdelvare@suse.de + +- suse-workaround-pseudo-release.patch: Filter invalid characters + in release field (bnc#628258). + +------------------------------------------------------------------- +Thu Nov 10 21:00:07 CET 2011 - jdelvare@suse.de + +- grep-support-spaces.patch: grep: Accept file names with spaces. +- mail-fix-a-temporary-directory-leak.patch: mail: Fix a temporary + directory leak. + +------------------------------------------------------------------- +Thu Nov 10 12:25:27 CET 2011 - pth@suse.de + +- Newer file changed the output for xz compressed data so + adapt to it. + +------------------------------------------------------------------- +Thu Oct 6 18:53:45 CEST 2011 - ohering@suse.de + +- inspect-shell-syntax-errors.patch: Quote strings in inspect + helper script to avoid flood of shell syntax errors during + quilt setup -v *.spec. + +------------------------------------------------------------------- +Tue Nov 2 18:47:20 CET 2010 - jdelvare@suse.de + +- Fix bash completion after the removal of the "remove" command and + the addition of the "revert" command (bnc#330753). + +------------------------------------------------------------------- +Mon Oct 25 15:52:36 CEST 2010 - jdelvare@suse.de + +- Compile quilt.el for faster emacs startup (bnc#617673). + +------------------------------------------------------------------- +Mon Jun 21 12:12:58 CEST 2010 - jdelvare@suse.de + +- fix-patch-version-detection.patch: Update so that we don't break + the build on all older distributions. + +------------------------------------------------------------------- +Sun Jun 20 22:22:41 CEST 2010 - jdelvare@suse.de + +- setup-add-fuzz-parameter.patch: Add a --fuzz parameter to quilt + setup and inspect (bnc#615073). +- setup-support-reverse-patch.patch: Handle reverted patches in + spec files (bnc#615065). + +------------------------------------------------------------------- +Wed May 19 10:01:44 UTC 2010 - puzel@novell.com + +- add fix-patch-version-detection.patch: fix build + +------------------------------------------------------------------- +Tue Dec 8 00:34:00 CET 2009 - jengelh@medozas.de + +- enable parallel building + +------------------------------------------------------------------- +Fri Nov 27 13:56:32 CET 2009 - jdelvare@suse.de + +- lzma-xz-support.patch: Add support for lzma/xz-compressed files + (bnc#555273). Patch from Philipp Thomas. +- inspect-lzma-xz.patch: Add support for lzma/xz-compressed files + to inspect (bnc#555273). +- Add dependency on "file", inspect (and thus "quilt setup") needs + it. + +------------------------------------------------------------------- +Wed Sep 9 11:41:28 CEST 2009 - jdelvare@suse.de + +- Fix a French translation that was saying the exact opposite of + the original message. + +------------------------------------------------------------------- +Wed Jul 29 14:25:16 CEST 2009 - jdelvare@suse.de + +- Fix data loss by quilt revert in some cases. + +------------------------------------------------------------------- +Tue Jun 30 11:01:50 CEST 2009 - jdelvare@suse.de + +- Fix test on Suse version. + +------------------------------------------------------------------- +Wed Jun 17 16:34:58 CEST 2009 - jdelvare@suse.de + +- Include /etc/bash_completion.d/quilt.sh only once in file list. + +------------------------------------------------------------------- +Wed Jun 17 14:21:26 CEST 2009 - jdelvare@suse.de + +- hide-git-desc-error.diff: Avoid error messages when building due + to missing git-desc file. +- mail-dont-use-equal-tilde.diff: Older versions of bash do not + support the =~ construct, so stop using it. + +------------------------------------------------------------------- +Tue Jun 9 18:59:16 CEST 2009 - jdelvare@suse.de + +- update to 0.48 + * Obsoletes quilt-fix-completion.diff. + * Obsoletes quilt-improve-formail-error.diff. +- fix-test-create-delete.diff: Fix error in create-delete.test in + Factory. +- Don't use Recommends on SLES9, rpm doesn't know about it there. + +------------------------------------------------------------------- +Mon Nov 10 13:04:10 CET 2008 - bwalle@suse.de + +- Remove "Recommends: bash-completion" (bnc#443203). + +------------------------------------------------------------------- +Tue Oct 28 13:33:44 CET 2008 - bwalle@suse.de + +- Use 'type' instead of 'which' in last change to avoid dependency + of 'which' package. + +------------------------------------------------------------------- +Mon Oct 27 22:36:14 CET 2008 - bwalle@suse.de + +- Only recommend 'procmail' (contains the 'formail' binary) instead + of requiring it. It's only needed for the 'mail' command. + +------------------------------------------------------------------- +Thu Aug 21 15:18:12 CEST 2008 - bwalle@suse.de + +- update to 0.47 + * quilt/scripts/patchfns.in (cat_series): Handle lines properly + that only contain whitespace. + * Add a new "publish" makefile target for pushing releases to + savannah.nongnu.org. +- mark /etc/bash_completion.d/quilt.sh as %config (rpmlint) + +------------------------------------------------------------------- +Mon Aug 18 11:18:19 CEST 2008 - schwab@suse.de + +- Fix name of completions file. + +------------------------------------------------------------------- +Tue Aug 12 16:50:26 CEST 2008 - bwalle@suse.de + +- fix completion of "quilt fold" (bnc#415762) +- mark /etc/quilt.quiltrc as %config (rpmlint) +- mark /etc/bash_completion.d/quilt as %config (rpmlint) + +------------------------------------------------------------------- +Fri Jun 13 15:16:05 CEST 2008 - bwalle@suse.de + +- recommend bash-completion (bnc#399615) + +------------------------------------------------------------------- +Fri Jun 13 11:50:30 CEST 2008 - agruen@suse.de + +- quilt/import.in: When importing multiple patches at once, make + sure that they won't end up in the series file in reverse order. + This happened because each new patch was inserted before the + "next" patch, which made it the new "next" patch. + +------------------------------------------------------------------- +Tue May 20 09:30:33 CEST 2008 - agruen@suse.de + +- Stop using cp -l: it doesn't fall back to doing a regular copy + when hardlinks are not supported; on some types of filesystems + like AFS and in some situtions, this is annoying. + +------------------------------------------------------------------- +Wed Mar 26 00:11:27 CET 2008 - agruen@suse.de + +- Assume patches are in unified format by default when applying + them. (For working with other patch formats, make sure to remove + "--unified" from QUILT_PATCH_OPTS in ~/.quiltrc or + /etc/quilt.quiltrc.) + +------------------------------------------------------------------- +Tue Feb 12 19:40:38 CET 2008 - jeffm@suse.com + +- Added dependency on procmail (formail) + +------------------------------------------------------------------- +Mon Nov 5 17:37:35 CET 2007 - bwalle@suse.de + +- quilt/mail.in: Remove the Recipient-* and Replace-* headers + used internally from the resulting emails; not sure how that + was missed so far. +- Fix `make snapshot'. +- Make the changelog file chronological again. + +------------------------------------------------------------------- +Mon Oct 29 20:46:46 CET 2007 - agruen@suse.de + +- quilt mail: Work around a ``Broken pipe'' problem in + quilt_mail_patch_filter(). + +------------------------------------------------------------------- +Wed Oct 26 11:56:55 CEST 2007 - bwalle@suse.de + +- change version to '0.46_cvs20071026' to make it clear to the + user that this is a CVS version +- fix some rpmlint warnings + +------------------------------------------------------------------- +Thu Oct 25 14:07:46 CEST 2007 - agruen@suse.de + +- quilt/mail.in: Make sure that shell meta-characters like * in + subjects won't get expanded by accident (this was broken). Add + test case. +- quilt/mail.in: ``formail -x Foo'' will extract all Foo* headers, + so use ``formail -x Foo:'' instead. +- quilt/mail.in: Recognize sequences of common subject prefixes + like Fwd:, Fw:, Re:, Aw:, Tr:, [foo] only at the beginning of + subjects. + +------------------------------------------------------------------- +Mon Oct 15 15:51:48 CEST 2007 - agruen@suse.de + +- Update to latest CVS version. + +------------------------------------------------------------------- +Thu Jul 26 14:06:57 CEST 2007 - agruen@suse.de + +- quilt diff: don't colorize the output when the --diff=... option + is used (allows diff utilities to use terminal IO). +- QUILT_SERIES and series file search algorithm bugfix. + +------------------------------------------------------------------- +Sat Apr 28 16:01:08 CEST 2007 - agruen@suse.de + +- mail: allow to specify a range of patches. +- remove: rename this command to revert. +- push, fold: clean up the force-apply and interactive logic. + +------------------------------------------------------------------- +Wed Apr 18 13:40:40 CEST 2007 - agruen@suse.de + +- Add emacs quilt mode. + +------------------------------------------------------------------- +Mon Mar 26 15:24:05 CEST 2007 - agruen@suse.de + +- Quilt refresh: fix existing patch check. + +------------------------------------------------------------------- +Thu Feb 15 20:43:22 CET 2007 - olh@suse.de + +- force mandir to fix build in sles10 + +------------------------------------------------------------------- +Thu Oct 19 20:47:06 CEST 2006 - agruen@suse.de + +- Switch to the upstream 0.46 tarball. +- Add a few missing pieces in the "refresh -z" patch. + +------------------------------------------------------------------- +Wed Oct 11 15:44:47 CEST 2006 - agruen@suse.de + +- Update to version 0.46. +- Add patch for "refresh -z". + +------------------------------------------------------------------- +Wed Sep 27 16:20:45 CEST 2006 - agruen@suse.de + +- Remove a duplicate hunk from the last update. + +------------------------------------------------------------------- +Thu Sep 21 18:39:22 CEST 2006 - agruen@suse.de + +- Fix the docdir in the man page. + +------------------------------------------------------------------- +Wed May 31 17:21:43 CEST 2006 - agruen@suse.de + +- Fix `quilt setup' in build environments. + +------------------------------------------------------------------- +Mon Apr 24 15:25:28 CEST 2006 - jdelvare@suse.de + +- import-compressed.diff: Fix replacement of compressed patches. + +------------------------------------------------------------------- +Wed Apr 19 15:00:27 CEST 2006 - agruen@suse.de + +- pop-error-path-fix.diff: Fix bogus error message. + +------------------------------------------------------------------- +Sat Mar 25 21:09:08 CET 2006 - agruen@suse.de + +- mail command: Use -gt instead of > in [ ... ] expression. + Fix quoting of recipients. + +------------------------------------------------------------------- +Tue Mar 21 16:55:34 CET 2006 - agruen@suse.de + +- edit2.diff: The last fix broke another way of using edit. + +------------------------------------------------------------------- +Wed Mar 15 20:36:38 CET 2006 - agruen@suse.de + +- edit.diff: Fix editing files in subdirectories. + +------------------------------------------------------------------- +Thu Feb 16 09:15:28 CET 2006 - agruen@suse.de + +- Setup command: also recognize archive files passed to tar on the + command line. + +------------------------------------------------------------------- +Wed Feb 15 09:52:26 CET 2006 - agruen@suse.de + +- Bump to official version to 0.44. +- Stop using bash's =~ operator: older versions don't support it. +- Translation update. +- patch-wrapper-rpm.diff: Some fixes to make the patch names that + quilt shows more convenient. +- Remove unnecessary gawk wrapper. + +------------------------------------------------------------------- +Tue Feb 14 05:16:59 CET 2006 - agruen@suse.de + +- Fix a critical bug in the push command that causes parts of + patches to end up half-reversed. + +------------------------------------------------------------------- +Mon Feb 13 00:35:11 CET 2006 - agruen@suse.de + +- quiltrc.diff: Change the default patch options to + --ignore-whitespace --unified-reject. + +------------------------------------------------------------------- +Sun Feb 12 01:09:09 CET 2006 - agruen@suse.de + +- Fix two bash 3.1 compatibility bugs. +- Run the test suite after building. + +------------------------------------------------------------------- +Sat Feb 11 16:22:59 CET 2006 - agruen@suse.de + +- Fix bug when working in subdirectories. +- setup command: Improvements when a series file is given. +- Improve help of new command, add two test cases. +- Fix expand command. + +------------------------------------------------------------------- +Wed Feb 8 02:59:10 CET 2006 - agruen@suse.de + +- GNU patch wrapper: Fix permissions of installed file. Call + GNU patch by absolute patch to avoid recursion. Don't print an + error message when a patch contains no files. +- setup command: Improve recognition of patch's -i and --input + options. + +------------------------------------------------------------------- +Mon Feb 6 12:05:16 CET 2006 - agruen@suse.de + +- Add GNU patch wrapper for Autobuild. + +------------------------------------------------------------------- +Sat Feb 4 08:39:25 CET 2006 - agruen@suse.de + +- aclocal.m4 is missing from the tarball. +- quilt mail: Remove a broken check. + +------------------------------------------------------------------- +Wed Feb 1 16:21:37 CET 2006 - agruen@suse.de + +- Update to version 0.43. +- Translations update; more portability improvements. + +------------------------------------------------------------------- +Mon Jan 30 00:08:39 CET 2006 - agruen@suse.de + +- Mail command: add heuristic for automatically extracting + subjects. Check for duplicate subjects. Add some checks. +- Lots of smaller fixes and portability improvements here and + there. + +------------------------------------------------------------------- +Wed Jan 25 21:41:03 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Mon Jan 23 21:46:29 CET 2006 - agruen@suse.de + +- When a patch doesn't apply, check and report when it applies + in the reverse order (which probably means it already has been + applied). +- Put "---" markers above when inserting a diffstat section. +- A lot more portability fixes. + +------------------------------------------------------------------- +Sun Jan 22 02:53:45 CET 2006 - agruen@suse.de + +- Lots of improvements: command parameter handling, input command, + portability, test suite. + +------------------------------------------------------------------- +Wed Jan 18 14:19:22 CET 2006 - agruen@suse.de + +- setup command: add heuristic to check for input files specified + on the command line in the tar/patch wrapper. +- Translation update. +- Fix heuristic for splitting a patch into header and body for + git. +- Makefile and test suite improvements. + +------------------------------------------------------------------- +Mon Jan 9 00:46:26 CET 2006 - agruen@suse.de + +- Use the --with-sendmail configure option for sendmail, instead + of the removed --with-mta. + +------------------------------------------------------------------- +Thu Dec 1 12:34:52 CET 2005 - agruen@suse.de + +- Specify where diffstat will end up so that it will be supported + even though it is missing in the build environment. + +------------------------------------------------------------------- +Mon Nov 28 04:54:41 CET 2005 - agruen@suse.de + +- CVS update, including a bugfix with -p0 style patches that + remove files. +- Add an expand command that is not yet upstream. + +------------------------------------------------------------------- +Thu Sep 29 11:57:56 CEST 2005 - agruen@suse.de + +- Add README.MAIL and fix the documentation path that appears in + quilt(1). + +------------------------------------------------------------------- +Wed Sep 28 16:17:34 CEST 2005 - meissner@suse.de + +- use RPM_OPT_FLAGS + +------------------------------------------------------------------- +Sun Sep 18 18:49:42 CEST 2005 - agruen@suse.de + +- CVS update. +- doc/quilt.quiltrc no longer exists. +- Skip the dead-symlink check: the mta symlink points to sendmail, + which we don't want to depend on. + +------------------------------------------------------------------- +Fri Sep 16 18:41:23 CEST 2005 - agruen@suse.de + +- Remove obsolete doc/sample.quiltrc. + +------------------------------------------------------------------- +Thu Sep 15 15:26:56 CEST 2005 - agruen@suse.de + +- CVS update. + +------------------------------------------------------------------- +Wed Aug 24 16:57:29 CEST 2005 - agruen@suse.de + +- CVS update. + +------------------------------------------------------------------- +Wed Aug 17 12:32:36 CEST 2005 - agruen@suse.de + +- CVS update. + +------------------------------------------------------------------- +Wed Jul 27 18:15:20 CEST 2005 - agruen@suse.de + +- Update to version 0.42. + +------------------------------------------------------------------- +Mon Jul 18 17:06:11 CEST 2005 - agruen@suse.de + +- Update to version 0.41: new header command, several fixes. + +------------------------------------------------------------------- +Fri Jun 17 17:43:42 CEST 2005 - agruen@suse.de + +- cvs.diff: Update to CVS head. +- annotate.diff: Add experimental annotate command. + +------------------------------------------------------------------- +Fri Apr 29 09:39:45 CEST 2005 - agruen@suse.de + +- Update to version 0.40. + +------------------------------------------------------------------- +Fri Feb 25 14:00:33 CET 2005 - agruen@suse.de + +- Remove unneeded requirement on the gettext package. + +------------------------------------------------------------------- +Fri Feb 18 11:01:57 CET 2005 - agruen@suse.de + +- quilt add: Add check to ensure that no files below patches/ + or .pc/ will be added. + +------------------------------------------------------------------- +Thu Feb 10 11:50:39 CET 2005 - agruen@suse.de + +- Update to version 0.39. + +------------------------------------------------------------------- +Wed Feb 2 01:35:51 CET 2005 - agruen@suse.de + +- Use color defaults so that QUILT_COLORS can be used to only + override some colors. +- When checking for remaining changes (refresh forgotten), use + $QUILT_PATCH_OPTS as in the push command to get identical + results. Don't generate the actually diff; it doesn't get + printed anyway. This should speed up things. + +------------------------------------------------------------------- +Tue Jan 25 13:53:23 CET 2005 - agruen@suse.de + +- Fix pop command for recent coreutils (cp dir dir2/ no longer + works if dir2 doesn't yet exist). + +------------------------------------------------------------------- +Mon Jan 24 15:42:17 CET 2005 - agruen@suse.de + +- Make "vi" an alias for the edit command. + +------------------------------------------------------------------- +Sun Jan 23 19:28:40 CET 2005 - agruen@suse.de + +- Add color support for push command output and allow to customize + colors via the QUILT_COLORS environment variable (for reverse + video, etc.). + +------------------------------------------------------------------- +Sun Jan 23 05:08:18 CET 2005 - agruen@suse.de + +- Add mail command, doc/README.MAIL and example ``mail'' command + filter in quilt.quiltrc. +- Bump version to 0.38. + +------------------------------------------------------------------- +Tue Jan 11 04:11:14 CET 2005 - agruen@suse.de + +- Add a default /etc/quilt.quiltrc file that is sourced if no + ~/.quiltrc file exists. + +------------------------------------------------------------------- +Fri Nov 19 13:05:08 CET 2004 - agruen@suse.de + +- Push command: Write out output of patch process immediately + instead of reading into a variable and then printing that + variable. This helps to see what's happening with large patches. + +------------------------------------------------------------------- +Wed Nov 17 17:33:56 CET 2004 - agruen@suse.de + +- Get rid of the apatch and rpatch helper scripts: Integrate them + in the push and pop commands. This should bring a small + performance improvement. + +------------------------------------------------------------------- +Mon Nov 15 21:15:43 CET 2004 - agruen@suse.de + +- Fix extra trailing space in series file after quilt refresh + (David Vrabel ). +- Missing quotation in bash_completion + (Axel Grossklaus ). +- Fix patches command (Brent Casavant ). + +------------------------------------------------------------------- +Sun Oct 17 18:48:59 CEST 2004 - agruen@suse.de + +- Touch timestamps of files in ``quilt pop'' so that tools like + make don't get confused. +- Various minor fixes; update to version 0.37. + +------------------------------------------------------------------- +Wed Sep 22 14:26:37 CEST 2004 - agruen@suse.de + +- Various fixes; update to version 0.36. + +------------------------------------------------------------------- +Fri Sep 3 18:07:55 CEST 2004 - agruen@suse.de + +- Fix ``quilt setup'' command when used inside Autobuild: Make + sure rpmbuild does not reset PATH. + +------------------------------------------------------------------- +Fri Aug 13 20:14:03 CEST 2004 - agruen@suse.de + +- Improvements to setup command. + +------------------------------------------------------------------- +Thu Jul 15 04:00:03 CEST 2004 - agruen@suse.de + +- Improve messages and update translations. +- Update and improve the bash completion script. +- Add syntax coloring to diff command. +- Add support for QUILT_${COMMAND}_ARGS in .quiltrc. +- Add QUILT_PATCHES_PREFIX option to .quiltrc. +- Support combined diff format and allow the user to adjust + the number of context lines. +- Re-add diffstat support to refresh command. +- Documentation update. +- Bump version to 0.35. + +------------------------------------------------------------------- +Thu Jun 10 22:08:07 CEST 2004 - agruen@suse.de + +- Add meta-data version check/upgrade code from Martin Quinson and + me; new `quilt upgrade' command. +- Handle new/removed files correctly in generated patches: If the + old or new file is missing, the file name in the patch should + be /dev/null. Fix test suite accordingly, and add + test/create-delete.diff. GNU patch recognizes this, and does + additional file existance tests when a patch creates/deletes a + file. Also use the --label option of GNU diff instead of + hand-editing file name headers. +- Add test/Makefile for running the test suite. Note: The tests + run against the installed version of quilt! +- Bump version to 0.34. + +------------------------------------------------------------------- +Sun Jun 6 20:16:44 CEST 2004 - agruen@suse.de + +- Preserve the order of files in patches in the diff and refresh + commands. Files added to a patch appear at the end of a patch. + The files command also lists the files in the order in which + they appear in patches. +- Update to version 0.33. + +------------------------------------------------------------------- +Sun Jun 6 12:21:11 CEST 2004 - agruen@suse.de + +- dependency-graph: Fix for --lines option in patcher mode; + restrict to applied patches. + +------------------------------------------------------------------- +Sun Jun 6 03:35:32 CEST 2004 - agruen@suse.de + +- import: Create patches/ and parent directories to patch to be + imported. Insert the correct patch name in the series file. + +------------------------------------------------------------------- +Sun Jun 6 02:02:32 CEST 2004 - agruen@suse.de + +- backup-file.c: Add code to recursively search .pc directories. + Add a "no-op" mode as default, and allow to just unlink files. +- apatch/rpatch: let backup-files search .pc directories instead + of generating temporary file lists. +- rpatch/pop: unlink files of topmost patch after popping instead + of unlinking at each step. +- If QUILTRC is set in the environment, use this as the + configuration file. + +------------------------------------------------------------------- +Sat Jun 5 16:12:17 CEST 2004 - agruen@suse.de + +- Return exit status 2 when commands go beyond the series (top + with no series, push/next when all patches are applied, pop/ + previous when no patches are applied). +- From John Lenz : Add compatibility + code to the dependency-graph script for reading the meta-data + of Holger Schurig's patcher tool, + http://www.holgerschurig.de/patcher.html. +- Update German translation. + +------------------------------------------------------------------- +Tue Jun 1 22:59:41 CEST 2004 - agruen@suse.de + +- Fix from Dean Roehrich : Preserve file mode + of original file when creating backup files. + +------------------------------------------------------------------- +Tue Jun 1 10:23:01 PDT 2004 - mquinson@tuxfamily.org + +- document common options to all scripts (--trace and --quiltrc) +- update french translation + +------------------------------------------------------------------- +Mon May 31 17:29:45 CEST 2004 - agruen@suse.de + +- Rewrite spec2series to return what the new `quilt setup' needs, + and rename it to inspect. +- `quilt setup': Rewrite so that it supports multiple archives + per spec file. Always make the patches directory a symlink to + the original patch files instead of copying the patches. + +------------------------------------------------------------------- +Sun May 16 01:33:50 CEST 2004 - agruen@suse.de + +- Allow passing path arguments to `quilt grep' as well. + +------------------------------------------------------------------- +Mon May 10 17:21:53 CEST 2004 - agruen@suse.de + +- Add `quilt grep': Grep over all files, recursively, skipping + the $QUILT_PATCHES and $QUILT_PC directories. + +------------------------------------------------------------------- +Wed Apr 28 00:46:31 CEST 2004 - agruen@suse.de + +- Fix `quilt fork': It destroys .pc/applied patches; that bug got + introduced when reverting it to its previous semantics. + +------------------------------------------------------------------- +Sat Mar 20 21:17:47 CET 2004 - agruen@suse.de + +- Fix an algorithmic bug in `quilt graph --lines': Edges were + sometimes lost. + +------------------------------------------------------------------- +Mon Mar 15 00:10:58 CET 2004 - agruen@suse.de + +- CVS update: + + Add `quilt graph' command for generating a dependency graph + between patches. This requires the graphviz package for + removing transitive edges (optional) and for rendering the + graph. Please note that the graph command itself is minimal, + while the underlying scripts/dependency+graph is more + flexible. + + Complete one more detail in scripts/dependency-graph. + + Revert `quilt fork' to how it originally worked: fork the + *topmost* patch, not the next unapplied patch. Adapt the + test suite accordingly. + + Add flag to backup-files.c to make sure that files in the + working tree have a link count of at most one. Use this where + appropriate. + + Fix a bug in `quilt snapshot': Taking snapshots caused files + to get link counts bigger than one, so modifying them could + cause multiple files to get modified. Speed up the command, + too. + + Update the documentation. Add example1.test from the + documentation. + + Change `quilt import' to allow importing multiple patches + at once. + + Update to version 0.32. + +------------------------------------------------------------------- +Wed Mar 10 11:20:09 CET 2004 - agruen@suse.de + +- Quilt push/pop: exit with a non-zero status when beyond series. +- Ignore empty lines in series file. +- Add man page to tarball and to spec file; add make dependencies. +- Sort the commands in the man page command reference. +- Add completion to the edit command in bash +- Add a man page (generated automatically from -h) +- Sub-directory support: `quilt setup' could get confused, too. + +------------------------------------------------------------------- +Tue Mar 9 02:03:00 CET 2004 - agruen@suse.de + +- Fix typo: use chmod instead of chown... + +------------------------------------------------------------------- +Fri Mar 5 13:33:45 CET 2004 - agruen@suse.de + +- Make files writeable in `quilt add' (and `quilt edit') for + working with read-only trees. + +------------------------------------------------------------------- +Fri Feb 20 15:32:06 CET 2004 - agruen@suse.de + +- Sub-directory support: + + Fix another bug that triggers when /patches exists. + + Working in sub-directories: Force `quilt new' to always create + the new patch in the current working directory even if there + is a patches/ sub-directory further up the directory tree. + This should restore the behavior from before Jan 28 very well. +- quilt files, diff, refresh: Sort the files in the patch + alphabetically. +- Update to version 0.31. + +------------------------------------------------------------------- +Wed Feb 4 10:39:59 CET 2004 - agruen@suse.de + +- Add --quiltrc={rcfile|-} option. Remove some superfluous quoting + from quilt wrapper. +- Extra tests in `quilt refresh' did not check if the old patch + was missing. + +------------------------------------------------------------------- +Mon Feb 2 14:17:24 CET 2004 - agruen@suse.de + +- Update from CVS (several improvements and fixes). + +------------------------------------------------------------------- +Wed Jan 28 02:48:33 CET 2004 - agruen@suse.de + +- Fix bugs introduced while merging Chris's patch. +- Update to version 0.30. + +------------------------------------------------------------------- +Wed Jan 28 01:13:16 CET 2004 - agruen@suse.de + +- Patch from Chris Mason : Add support for working + in subdirectories of the base directory that contains patches/ + and .pc/. In the unlikely case that quilt shall operate in the + sub-directory itself, it is sufficient to create a patches/ + directory there. +- Add a small testcase for subdirectory support. + +------------------------------------------------------------------- +Sun Jan 25 00:00:34 CET 2004 - agruen@suse.de + +- Add QUILT_PATCH_OPTS setting. + +------------------------------------------------------------------- +Wed Jan 21 19:17:11 CET 2004 - agruen@suse.de + +- Add QUILT_NO_DIFF_TIMESTAMPS option in .quiltrc. + +------------------------------------------------------------------- +Thu Jan 8 03:53:18 CET 2004 - agruen@suse.de + +- Also accept `quilt diff -z ./file' (ignore the ./ prefix that + is often produced by find etc.) + +------------------------------------------------------------------- +Wed Dec 24 16:36:48 CET 2003 - agruen@suse.de + +- Minor documentation tweak. + +------------------------------------------------------------------- +Thu Nov 27 17:08:47 CET 2003 - agruen@suse.de + +- `quilt fold' did not create directories for additional files, + and the code for recovering from failures was wrong. + +------------------------------------------------------------------- +Wed Nov 26 14:50:13 CET 2003 - agruen@suse.de + +- Update from CVS. + +------------------------------------------------------------------- +Tue Nov 25 15:51:05 CET 2003 - agruen@suse.de + +- Error check for `quilt diff -z filelist' was too strict; relax. +- Add sample.quiltrc file in /usr/share/doc/packages/quilt. +- Update quilt paper. + +------------------------------------------------------------------- +Mon Nov 17 20:39:56 CET 2003 - agruen@suse.de + +- Update from CVS: Adds fold command; minor fixes and cleanups. + +------------------------------------------------------------------- +Wed Nov 12 01:52:58 CET 2003 - agruen@suse.de + +- Update to version 0.29 (adds quilt.pdf, Introduction to Quilt). + +------------------------------------------------------------------- +Tue Nov 4 18:01:57 CET 2003 - agruen@suse.de + +- cvs.diff: Fix check for modified patches in `quilt pop'. + +------------------------------------------------------------------- +Sat Nov 1 20:28:19 CET 2003 - agruen@suse.de + +- Update to version 0.28. + +------------------------------------------------------------------- +Tue Oct 28 14:57:08 CET 2003 - agruen@suse.de + +- Update to version 0.27. + +------------------------------------------------------------------- +Tue Oct 28 11:34:08 CET 2003 - agruen@suse.de + +- Update to remove-pc-files-3.diff patch (minor fixes). + +------------------------------------------------------------------- +Mon Oct 27 12:58:44 CET 2003 - agruen@suse.de + +- Update to remove-pc-files-2.diff patch (minor fixes). + +------------------------------------------------------------------- +Mon Oct 27 03:18:26 CET 2003 - agruen@suse.de + +- Sync with CVS: + + Add `quilt edit' command. + + Get rid of patches_per_file cache. +- Add remove-pc-files.diff patch. + +------------------------------------------------------------------- +Sun Oct 26 17:53:53 CET 2003 - agruen@suse.de + +- Get rid of patches_per cache_in `quilt patches'. Remove + patches_per_file and associated functions. `quilt patches' + now is a bit slow for unapplied patches. + +------------------------------------------------------------------- +Sun Oct 26 14:45:08 CET 2003 - agruen@suse.de + +- Rename snapshot directory from ".snap0" to ".snap". +- `quilt diff: Speed up file list generation in `quilt diff'. + Don't use modified_files anymore. Instead, add first_modified_by + function. I want to get rid of the patches_per_file cache; + it sometimes was not brought up to date. Some cleanups. +- Add test/snapshot.test. +- Fix two errors in the date format in quilt.changes. + +------------------------------------------------------------------- +Fri Oct 24 00:50:08 CEST 2003 - agruen@suse.de + +- `quilt add': Return exit code 2 when a file has already been + added. +- Add `quilt edit' command: Does a `quilt add' and then invokes + $EDITOR (fallback is `vi'). Files that don't exist after editing + are again removed from the patch. + +------------------------------------------------------------------- +Wed Oct 22 01:53:54 CEST 2003 - agruen@suse.de + +- Change semantics of `quilt fork', and fix a bug in updating the + series file. + +------------------------------------------------------------------- +Tue Oct 21 20:15:59 CEST 2003 - agruen@suse.de + +- Update to version 0.26. This adds `quilt fork' and + `quilt snapshot'. + +------------------------------------------------------------------- +Tue Sep 2 15:24:51 CEST 2003 - agruen@suse.de + +- Pipe rpmbuild output to /dev/null in spec2series (seems to be + necessary since rpm4). + +------------------------------------------------------------------- +Mon Jul 28 18:25:56 CEST 2003 - agruen@suse.de + +- Remove obsolete #neededforbuild entry bash-completion. + +------------------------------------------------------------------- +Mon Jul 28 00:52:06 CEST 2003 - agruen@suse.de + +- Update to version 0.24 + cvs. +- Install /etc/bash_completions.d/quilt. + +------------------------------------------------------------------- +Wed Jun 11 05:15:54 CEST 2003 - kukuk@suse.de + +- Use %{find_lang} macro + +------------------------------------------------------------------- +Fri May 16 20:49:48 CEST 2003 - agruen@suse.de + +- Include recent changes from CVS head. + +------------------------------------------------------------------- +Fri Apr 11 17:22:10 CEST 2003 - agruen@suse.de + +- Include recent changes from CVS head. + +------------------------------------------------------------------- +Mon Apr 7 16:23:21 CEST 2003 - agruen@suse.de + +- Include head -1 / tail -1 fixes from CVS head. + +------------------------------------------------------------------- +Mon Mar 24 12:36:09 CET 2003 - agruen@suse.de + +- Include recent CVS changes. + +------------------------------------------------------------------- +Fri Feb 14 15:53:52 CET 2003 - agruen@suse.de + +- Initial package. diff --git a/quilt.spec b/quilt.spec new file mode 100644 index 0000000..d127c2e --- /dev/null +++ b/quilt.spec @@ -0,0 +1,134 @@ +# +# spec file for package quilt +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: quilt +Version: 0.68 +Release: 0 +Summary: A Tool for Working with Many Patches +License: GPL-2.0-or-later +Group: Development/Tools/Version Control +BuildRequires: bash-completion-devel +BuildRequires: diffstat +BuildRequires: ed +BuildRequires: emacs-nox +BuildRequires: pkg-config +BuildRequires: xz +Requires: coreutils +Requires: diffstat +Requires: diffutils +Requires: file +Requires: findutils +Requires: gzip +Requires: less +Requires: mktemp +Requires: patch +Requires: perl +URL: http://savannah.nongnu.org/projects/quilt +Source: %{name}-%{version}.tar.xz +Source1: suse-start-quilt-mode.el +Patch1: guards-fix-exit-operator-precedence-error.patch +Patch2: fix-two-exit-values.patch +Patch3: setup-pass-define-to-rpmbuild-instead-of-eval-define.patch +Patch4: setup-new-option-spec-filter.patch +Patch5: setup-implement-a-spec-filter-library.patch +Patch6: inspect-wrapper-fix-rpm-4.20.patch +Patch82: quilt-support-vimdiff.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildArch: noarch +%if 0%{?suse_version} +Recommends: /usr/bin/rpmbuild +Recommends: bzip2 +Recommends: ed +Recommends: procmail +Recommends: unzip +Recommends: xz +Recommends: zstd +%endif + +%description +Quilt allows you to easily manage large numbers of patches by keeping +track of the changes each patch makes. Patches can be applied, +un-applied, refreshed, and more. + +%prep +%autosetup -p1 + +%build +# --with-rpmbuild=/usr/lib/rpm/rpmb: +# +# SUSE Autobuild uses a version of /usr/bin/rpmbuild that sources +# /etc/profile to reset the PATH. We must not do that: the +# inspect script needs to pass an additional path component to +# rpmbuild for the tar and patch wrappers. +CFLAGS="%{optflags}" \ +./configure --prefix=/usr \ + --mandir=%{_mandir} \ + --docdir=%{_docdir}/%{name}%{!?suse_version:-%{version}} \ + --sysconfdir=%{_sysconfdir} \ + --with-sendmail=/usr/sbin/sendmail \ + --with-diffstat=/usr/bin/diffstat \ + --with-patch-wrapper \ + --with-patch=/usr/bin/patch \ + --with-rpmbuild=/usr/lib/rpm/rpmb +make %{?_smp_mflags} +# Compile quilt.el for faster emacs startup (bnc#617673) +pushd lib +emacs -batch -q --no-site -f batch-byte-compile quilt.el +popd + +%check +make check + +%install +# /usr/share/quilt/compat/mta will be a stale symlink: we don't want to add +# sendmail to neededforbuild just because of this. +export NO_BRP_STALE_LINK_ERROR=yes +make install BUILD_ROOT=%{buildroot} +install -m 644 lib/quilt.elc \ + %{buildroot}%{_datadir}/emacs/site-lisp/ +%define completionsdir %(pkg-config --variable completionsdir bash-completion) +install -m 755 -d %{buildroot}%{completionsdir} +mv %{buildroot}%{_sysconfdir}/bash_completion.d/quilt %{buildroot}%{completionsdir}/quilt +# We only needed the /usr/bin/patch compatibility symlink for the +# test suite. +[ %{buildroot}%{_datadir}/quilt/compat/patch -ef /usr/bin/patch ] \ + && rm -f %{buildroot}%{_datadir}/quilt/compat/patch +[ %{buildroot}%{_datadir}/quilt/compat/awk -ef /usr/bin/awk ] \ + && rm -f %{buildroot}%{_datadir}/quilt/compat/awk +%{find_lang} %{name} +# Make "vi" an alias for the edit command +ln -s edit %{buildroot}%{_datadir}/quilt/vi +# Autoload quilt-mode in the SuSE emacs package +install -m 644 %_sourcedir/suse-start-quilt-mode.el \ + %{buildroot}%{_datadir}/emacs/site-lisp/ + +%files -f %{name}.lang +%defattr(-, root, root) +%{_bindir}/guards +%{_bindir}/quilt +%{_datadir}/quilt/ +%{_datadir}/emacs/ +%{completionsdir}/quilt +%config %{_sysconfdir}/quilt.quiltrc +%doc %{_mandir}/man1/guards.1.gz +%doc %{_mandir}/man1/quilt.1.gz +%doc doc/README +%doc doc/README.MAIL +%doc doc/quilt.pdf + +%changelog diff --git a/setup-implement-a-spec-filter-library.patch b/setup-implement-a-spec-filter-library.patch new file mode 100644 index 0000000..09b87ad --- /dev/null +++ b/setup-implement-a-spec-filter-library.patch @@ -0,0 +1,82 @@ +From: Jean Delvare +Date: Fri, 14 Mar 2025 17:33:07 +0100 +Subject: setup: Implement a spec filter library +Git-commit: 27075e81586fa1b7378caab4162ba6e8e4f45f99 +Patch-mainline: yes +References: bsc#1236907 + +Include spec file filters directly in quilt, so that the most +popular filters can be maintained collectively. + +The first spec file filter is for OBS, based on a script by Matěj +Cepl and an old SUSE-specific quilt patch. + +Signed-off-by: Jean Delvare +--- + Makefile.in | 10 +++++++++- + contrib/spec-filters/obs | 7 +++++++ + quilt/setup.in | 8 +++++--- + 3 files changed, 21 insertions(+), 4 deletions(-) + +--- a/Makefile.in ++++ b/Makefile.in +@@ -117,6 +117,9 @@ DIRT += po/*.mo po/*~ + + SRC += $(wildcard test/*.test) test/run test/test.quiltrc + ++SPEC_FILTERS := $(patsubst contrib/spec-filters/%,%,$(wildcard contrib/spec-filters/*)) ++SRC += $(wildcard contrib/spec-filters/*) ++ + NON_EXEC_IN := doc/quilt.1 doc/README quilt/scripts/patchfns quilt/scripts/utilfns + + GIT_DESC := $(shell ./git-desc | sed -e 's:^v::') +@@ -357,7 +360,12 @@ ifneq ($(COMPAT_PROGRAMS),) + endif + endif + +-install: install-main install-compat ++install-contrib: ++ $(INSTALL) -d $(BUILD_ROOT)$(datadir)/$(PACKAGE)/spec-filters ++ $(INSTALL) -m 755 $(SPEC_FILTERS:%=contrib/spec-filters/%) \ ++ $(BUILD_ROOT)$(datadir)/$(PACKAGE)/spec-filters ++ ++install: install-main install-compat install-contrib + + uninstall :: + rm -rf $(BIN:%=$(BUILD_ROOT)$(bindir)/%) \ +--- /dev/null ++++ b/contrib/spec-filters/obs +@@ -0,0 +1,7 @@ ++#!/usr/bin/sh ++# Basic spec file filter for OBS packages ++# https://build.opensuse.org/ ++ ++sed -e '/^%.*@BUILD_FLAVOR@/s/@BUILD_FLAVOR@//' \ ++ -e '/^%lua_provides/d' \ ++ -e '/^Release:/s/[<>]//g' +--- a/quilt/setup.in ++++ b/quilt/setup.in +@@ -244,10 +244,10 @@ inspect() + # Apply filtering to the spec file if requested + if [ -n "$spec_filter" ] + then +- # Make sure PATH isn't used ++ # If only a file name, read from the shared directory + if [[ ! "$spec_filter" =~ / ]] + then +- spec_filter="./$spec_filter" ++ spec_filter="$QUILT_DIR/spec-filters/$spec_filter" + fi + if [ -x "$spec_filter" ] + then +@@ -299,7 +299,9 @@ Initializes a source tree from an rpm sp + Before passing the spec file to rpmbuild for processing, apply a + filter to it. FILTER must be an executable script which reads the + original spec file from stdin and writes the filtered spec file +- to stdout. ++ to stdout. FILTER can be specified as a path to a custom script, ++ or as a simple name, in which case it references one of the ++ filter scripts shipped with quilt. + + --slow Use the original, slow method to process the spec file. In this mode, + rpmbuild generates a working tree in a temporary directory while all diff --git a/setup-new-option-spec-filter.patch b/setup-new-option-spec-filter.patch new file mode 100644 index 0000000..94b55ce --- /dev/null +++ b/setup-new-option-spec-filter.patch @@ -0,0 +1,80 @@ +From: Jean Delvare +Date: Fri, 14 Mar 2025 17:32:59 +0100 +Subject: setup: New option --spec-filter +Git-commit: 65cda3275f16944f232fc9930fbb137a07479bc0 +Patch-mainline: yes +References: bsc#1236907 + +Some build systems (such as OBS) don't work with compliant rpm spec +files. Instead, they use templates, which they preprocess before +passing them to rpmbuild. In order to be able to use "quilt setup" +on these spec files, we need to perform the same kind of +preprocessing. + +For this purpose, introduce a new option to the setup command, +--spec-filter. This lets the user provide a customer filtering script +to preprocess their spec file before rpmbuild gets called on it. + +Signed-off-by: Jean Delvare +--- + quilt/setup.in | 28 +++++++++++++++++++++++++++- + 1 file changed, 27 insertions(+), 1 deletion(-) + +--- a/quilt/setup.in ++++ b/quilt/setup.in +@@ -241,6 +241,23 @@ inspect() + fi + export -f normalize_path dir_to_dir + ++ # Apply filtering to the spec file if requested ++ if [ -n "$spec_filter" ] ++ then ++ # Make sure PATH isn't used ++ if [[ ! "$spec_filter" =~ / ]] ++ then ++ spec_filter="./$spec_filter" ++ fi ++ if [ -x "$spec_filter" ] ++ then ++ "$spec_filter" < "$specdir/$specfile" > "$tmpdir/$specfile" ++ specdir=$tmpdir ++ else ++ printf $"Warning: can't execute filter %s\n" "$spec_filter" >&2 ++ fi ++ fi ++ + # let rpm do all the dirty specfile stuff ... + echo -n "### rpmbuild: " >&4 + +@@ -278,6 +295,12 @@ Initializes a source tree from an rpm sp + --fuzz=N + Set the maximum fuzz factor (needs rpm 4.6 or later). + ++--spec-filter FILTER ++ Before passing the spec file to rpmbuild for processing, apply a ++ filter to it. FILTER must be an executable script which reads the ++ original spec file from stdin and writes the filtered spec file ++ to stdout. ++ + --slow Use the original, slow method to process the spec file. In this mode, + rpmbuild generates a working tree in a temporary directory while all + its actions are recorded, and then everything is replayed from scratch +@@ -306,7 +329,7 @@ and lastly applying the patches. + fi + } + +-options=`getopt -o d:vh --long sourcedir:,fuzz:,slow,fast -- "$@"` ++options=`getopt -o d:vh --long sourcedir:,fuzz:,spec-filter:,slow,fast -- "$@"` + + if [ $? -ne 0 ] + then +@@ -338,6 +361,9 @@ do + # Only works with rpm 4.6 and later + DEFINE_FUZZ=( "--define" "_default_patch_fuzz $2" ) + shift 2 ;; ++ --spec-filter) ++ spec_filter=$2 ++ shift 2 ;; + --slow) + QUILT_SETUP_FAST= + shift ;; diff --git a/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch b/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch new file mode 100644 index 0000000..7e7873a --- /dev/null +++ b/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch @@ -0,0 +1,59 @@ +From: Jean Delvare +Date: Fri, 14 Mar 2025 17:32:45 +0100 +Subject: setup: Pass --define to rpmbuild instead of --eval "%define ..." +Git-commit: ff2210b24772bd675987930cde359a1078b89012 +Patch-mainline: yes +References: bsc#1236907 + +Changes in rpmbuild 4.20 break defining macros using --eval "%define +..." for noarch packages. While this is a bug, it is possible and +recommended to define macros using option --define instead, so let's +just do that. + +Signed-off-by: Jean Delvare +--- + quilt/setup.in | 19 ++++++++++--------- + 1 file changed, 10 insertions(+), 9 deletions(-) + +--- a/quilt/setup.in ++++ b/quilt/setup.in +@@ -245,14 +245,14 @@ inspect() + echo -n "### rpmbuild: " >&4 + + PATH="$tmpdir/bin:$PATH" \ +- rpmbuild --eval "%define _sourcedir $abs_sourcedir" \ +- --eval "%define _specdir $specdir" \ +- --eval "%define _builddir $tmpdir/build" \ +- --eval "%define __patch $tmpdir/bin/patch" \ +- --eval "%define __tar $tmpdir/bin/tar" \ +- --eval "%define __unzip $tmpdir/bin/unzip" \ +- --eval "%define __7zip $tmpdir/bin/7z" \ +- --eval "$DEFINE_FUZZ" \ ++ rpmbuild --define "_sourcedir $abs_sourcedir" \ ++ --define "_specdir $specdir" \ ++ --define "_builddir $tmpdir/build" \ ++ --define "__patch $tmpdir/bin/patch" \ ++ --define "__tar $tmpdir/bin/tar" \ ++ --define "__unzip $tmpdir/bin/unzip" \ ++ --define "__7zip $tmpdir/bin/7z" \ ++ "${DEFINE_FUZZ[@]}" \ + --nodeps \ + -bp "$specdir/$specfile" < /dev/null >&5 2>&5 + status=$? +@@ -318,6 +318,7 @@ eval set -- "$options" + export QUILT_SETUP_FAST=1 + prefix= + sourcedir= ++declare -a DEFINE_FUZZ + + while true + do +@@ -335,7 +336,7 @@ do + shift 2 ;; + --fuzz) + # Only works with rpm 4.6 and later +- DEFINE_FUZZ="%define _default_patch_fuzz $2" ++ DEFINE_FUZZ=( "--define" "_default_patch_fuzz $2" ) + shift 2 ;; + --slow) + QUILT_SETUP_FAST= diff --git a/suse-start-quilt-mode.el b/suse-start-quilt-mode.el new file mode 100644 index 0000000..77c29a8 --- /dev/null +++ b/suse-start-quilt-mode.el @@ -0,0 +1,6 @@ +;; /usr/share/emacs/site-lisp/suse-start-quilt-mode.el + +(autoload 'quilt-mode "quilt" + "Toggle quilt-mode. With positive arg, enable quilt-mode." t) + +;; /usr/share/emacs/site-lisp/suse-start-quilt-mode.el ends here diff --git a/suse-workaround-pseudo-release.patch b/suse-workaround-pseudo-release.patch new file mode 100644 index 0000000..94e686a --- /dev/null +++ b/suse-workaround-pseudo-release.patch @@ -0,0 +1,27 @@ +Upstream: Never + +Old Suse spec files have a pseudo release string which uses characters +newer versions of rpmbuild don't like. Filter them out to make rpmbuild +happy again. Packages in openSUSE 11.4 and later no longer need this. + +--- + quilt/setup.in | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/quilt/setup.in ++++ b/quilt/setup.in +@@ -213,6 +213,14 @@ inspect() + ln -s $QUILT_DIR/scripts/inspect-wrapper $tmpdir/bin/unzip + ln -s $QUILT_DIR/scripts/inspect-wrapper $tmpdir/bin/7z + ++ # Older versions of Suse packages have a symbolic release number, and ++ # rpmbuild won't like that, so change it to something compliant. ++ if grep -q '^Release:.*[<>]' "$specdir/$specfile" ++ then ++ sed -e '/^Release:/s/[<>]//g' < "$specdir/$specfile" > $tmpdir/"$specfile" ++ specdir=$tmpdir ++ fi ++ + # Redirect file descriptors + # 5 is used in verbose mode, 4 in non-verbose mode, and 2 for both (real errors) + if [ -n "$verbose" ] -- 2.51.1 From c9cce0c0edca11eaf88f7a827b14642e099be38f4967413b4dc596819c54dd76 Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Tue, 29 Apr 2025 13:28:00 +0000 Subject: [PATCH 2/2] - Update to version 0.69: * Fix escaping of % and backslash in patch names * new: Stop claiming support of option -p ab * patches: Several performance optimizations * series: Simplify the code * Obsoletes fix-two-exit-values.patch * Obsoletes guards-fix-exit-operator-precedence-error.patch * Obsoletes inspect-wrapper-fix-rpm-4.20.patch * Obsoletes setup-implement-a-spec-filter-library.patch * Obsoletes setup-new-option-spec-filter.patch * Obsoletes setup-pass-define-to-rpmbuild-instead-of-eval-define.patch - setup-deal-with-ExclusiveArch.patch: Make it possible to run "quilt setup" on a spec file which excludes the local architecture (boo#1238516). OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/quilt?expand=0&rev=138 --- fix-two-exit-values.patch | 35 -------- ...s-fix-exit-operator-precedence-error.patch | 36 -------- inspect-wrapper-fix-rpm-4.20.patch | 38 --------- quilt-0.68.tar.xz | 3 - quilt-0.69.tar.xz | 3 + quilt.changes | 18 ++++ quilt.spec | 9 +- setup-deal-with-ExclusiveArch.patch | 71 ++++++++++++++++ setup-implement-a-spec-filter-library.patch | 82 ------------------- setup-new-option-spec-filter.patch | 80 ------------------ ...e-to-rpmbuild-instead-of-eval-define.patch | 59 ------------- 11 files changed, 94 insertions(+), 340 deletions(-) delete mode 100644 fix-two-exit-values.patch delete mode 100644 guards-fix-exit-operator-precedence-error.patch delete mode 100644 inspect-wrapper-fix-rpm-4.20.patch delete mode 100644 quilt-0.68.tar.xz create mode 100644 quilt-0.69.tar.xz create mode 100644 setup-deal-with-ExclusiveArch.patch delete mode 100644 setup-implement-a-spec-filter-library.patch delete mode 100644 setup-new-option-spec-filter.patch delete mode 100644 setup-pass-define-to-rpmbuild-instead-of-eval-define.patch diff --git a/fix-two-exit-values.patch b/fix-two-exit-values.patch deleted file mode 100644 index 3b8a187..0000000 --- a/fix-two-exit-values.patch +++ /dev/null @@ -1,35 +0,0 @@ -From: Jean Delvare -Date: Mon, 10 Feb 2025 11:33:41 +0100 -Subject: Fix two exit values -Git-commit: 8a9068f90ee08e2b8672c788363c357656cddd3e -Patch-mainline: yes - -In perl, "exit" is considered a named unary operator, and these have -higher precedence than the ternary ?: opertor. Therefore parentheses -are required to properly evaluate the exit value before returning it. - -Signed-off-by: Jean Delvare ---- - quilt/scripts/dependency-graph.in | 2 +- - test/run | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - ---- a/quilt/scripts/dependency-graph.in -+++ b/quilt/scripts/dependency-graph.in -@@ -112,7 +112,7 @@ SYNOPSIS: $basename [-h] [--patcher] [-- - Check the ranges of lines that the patches modify for computing - dependencies. Include up to num lines of context. - EOF -- exit $help ? 0 : 1; -+ exit ($help ? 0 : 1); - } - - my @nodes; ---- a/test/run -+++ b/test/run -@@ -331,4 +331,4 @@ if (isatty(fileno(STDOUT))) { - } - print_footer "$status\n"; - flush_output; --exit $failed ? 1 : 0; -+exit ($failed ? 1 : 0); diff --git a/guards-fix-exit-operator-precedence-error.patch b/guards-fix-exit-operator-precedence-error.patch deleted file mode 100644 index 4d96a3d..0000000 --- a/guards-fix-exit-operator-precedence-error.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 99e4ab70434c7156a82155c68d9f753e22926d8e Mon Sep 17 00:00:00 2001 -From: Greg Kroah-Hartman -Date: Mon, 10 Feb 2025 11:33:37 +0100 -Subject: guards: fix exit operator precedence error -Git-commit: 99e4ab70434c7156a82155c68d9f753e22926d8e -Patch-mainline: yes - -The perl expression: - exit $problems ? 1 : 0; -will now throw a warning with newer versions of perl: - Possible precedence issue with control flow operator (exit) at /usr/bin/guards line 198. -as it properly catches that the control flow is NOT being evaluated -here. For more details on the issue, please see this 10-year-old perl -blog post: - https://blogs.perl.org/users/buddy_burden/2014/06/when-a-failure-is-not-a-failure.html - -Fix this up by providing the proper "evaluate this expression and THEN -return the value" logic that the code was expecting: - -Signed-off-by: Greg Kroah-Hartman -Signed-off-by: Jean Delvare ---- - bin/guards.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/bin/guards.in -+++ b/bin/guards.in -@@ -195,7 +195,7 @@ if ($check) { - # This is not an error if the entries are mutually exclusive... - } - } -- exit $problems ? 1 : 0; -+ exit ($problems ? 1 : 0); - - } elsif ($list) { - parse($fh, sub { diff --git a/inspect-wrapper-fix-rpm-4.20.patch b/inspect-wrapper-fix-rpm-4.20.patch deleted file mode 100644 index 71c1968..0000000 --- a/inspect-wrapper-fix-rpm-4.20.patch +++ /dev/null @@ -1,38 +0,0 @@ -From: Jean Delvare -Subject: setup: Fix for rpm 4.20's RPM_BUILD_ROOT change -Patch-mainline: submitted 2025-03-16, https://lists.gnu.org/archive/html/quilt-dev/2025-03/msg00010.html -References: bsc#1236907 - -rpm 4.20 creates a working directory (named -${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-build) inside _builddir -and RPM_BUILD_DIR points to that directory instead of _builddir as -it used to. This confuses the inspect-wrapper script which assumes -that RPM_BUILD_DIR points to _builddir. - -Detect this case and make RPM_BUILD_DIR point to _builddir again so -that the rest of the code keeps working. - -Signed-off-by: Jean Delvare ---- - quilt/scripts/inspect-wrapper.in | 10 ++++++++++ - 1 file changed, 10 insertions(+) - ---- quilt.orig/quilt/scripts/inspect-wrapper.in 2025-02-12 14:12:31.065020150 +0100 -+++ quilt/quilt/scripts/inspect-wrapper.in 2025-02-14 13:28:37.751790147 +0100 -@@ -239,6 +239,16 @@ PATH=${PATH#*:} - # If we are called too early, pass through without processing - [ -n "$RPM_BUILD_DIR" ] || exec $command "$@" - -+# rpm 4.20 creates a working directory (named -+# ${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-build) inside _builddir -+# and RPM_BUILD_DIR points to that directory instead of _builddir as -+# it used to. Detect this case and make RPM_BUILD_DIR point to -+# _builddir again so that the rest of the code keeps working. -+if echo "$RPM_BUILD_DIR" | grep -q '/build/[^/]*-build$' -+then -+ RPM_BUILD_DIR=${RPM_BUILD_DIR%/*} -+fi -+ - tmpdir=${RPM_BUILD_DIR%/*} - case $command in - patch) diff --git a/quilt-0.68.tar.xz b/quilt-0.68.tar.xz deleted file mode 100644 index 897d263..0000000 --- a/quilt-0.68.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aa4f3f1ddcdbd135bfd99df26159a1fe65a1d6b571afb5b063995184c490eaa3 -size 468692 diff --git a/quilt-0.69.tar.xz b/quilt-0.69.tar.xz new file mode 100644 index 0000000..570e7ce --- /dev/null +++ b/quilt-0.69.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:000ec454d659d09d98e4847ec1448140ba8cc14f2f9028d1ee95ea31e7683c51 +size 469476 diff --git a/quilt.changes b/quilt.changes index bc96740..1fc4f1c 100644 --- a/quilt.changes +++ b/quilt.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Tue Apr 29 12:28:28 UTC 2025 - Jean Delvare + +- Update to version 0.69: + * Fix escaping of % and backslash in patch names + * new: Stop claiming support of option -p ab + * patches: Several performance optimizations + * series: Simplify the code + * Obsoletes fix-two-exit-values.patch + * Obsoletes guards-fix-exit-operator-precedence-error.patch + * Obsoletes inspect-wrapper-fix-rpm-4.20.patch + * Obsoletes setup-implement-a-spec-filter-library.patch + * Obsoletes setup-new-option-spec-filter.patch + * Obsoletes setup-pass-define-to-rpmbuild-instead-of-eval-define.patch +- setup-deal-with-ExclusiveArch.patch: Make it possible to run + "quilt setup" on a spec file which excludes the local + architecture (boo#1238516). + ------------------------------------------------------------------- Mon Mar 17 15:27:54 UTC 2025 - Jean Delvare diff --git a/quilt.spec b/quilt.spec index d127c2e..3feba9a 100644 --- a/quilt.spec +++ b/quilt.spec @@ -17,7 +17,7 @@ Name: quilt -Version: 0.68 +Version: 0.69 Release: 0 Summary: A Tool for Working with Many Patches License: GPL-2.0-or-later @@ -41,12 +41,7 @@ Requires: perl URL: http://savannah.nongnu.org/projects/quilt Source: %{name}-%{version}.tar.xz Source1: suse-start-quilt-mode.el -Patch1: guards-fix-exit-operator-precedence-error.patch -Patch2: fix-two-exit-values.patch -Patch3: setup-pass-define-to-rpmbuild-instead-of-eval-define.patch -Patch4: setup-new-option-spec-filter.patch -Patch5: setup-implement-a-spec-filter-library.patch -Patch6: inspect-wrapper-fix-rpm-4.20.patch +Patch1: setup-deal-with-ExclusiveArch.patch Patch82: quilt-support-vimdiff.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch diff --git a/setup-deal-with-ExclusiveArch.patch b/setup-deal-with-ExclusiveArch.patch new file mode 100644 index 0000000..29be28c --- /dev/null +++ b/setup-deal-with-ExclusiveArch.patch @@ -0,0 +1,71 @@ +From: Jean Delvare +Subject: Let quilt setup deal with ExclusiveArch +References: boo#1238516 + +If the spec file includes an ExclusiveArch statement and the local +architecture isn't part of the list, rpmbuild will fail. Check for +the presence of this statement before calling rpmbuild, and if it +would fail, pass option --target to set the architecture to a +supported one. +--- + quilt/setup.in | 35 ++++++++++++++++++++++++++++++++++- + 1 file changed, 34 insertions(+), 1 deletion(-) + +--- a/quilt/setup.in ++++ b/quilt/setup.in +@@ -270,6 +270,7 @@ inspect() + --define "__unzip $tmpdir/bin/unzip" \ + --define "__7zip $tmpdir/bin/7z" \ + "${DEFINE_FUZZ[@]}" \ ++ "${FORCE_ARCH[@]}" \ + --nodeps \ + -bp "$specdir/$specfile" < /dev/null >&5 2>&5 + status=$? +@@ -343,7 +344,36 @@ eval set -- "$options" + export QUILT_SETUP_FAST=1 + prefix= + sourcedir= +-declare -a DEFINE_FUZZ ++declare -a DEFINE_FUZZ FORCE_ARCH ++ ++# Sets FORCE_ARCH if needed ++check_exclusivearch() ++{ ++ local spec_file=$1 our_arch a ++ local -a archs ++ ++ archs=( $(sed -ne 's/^ExclusiveArch:[[:space:]]*\(.*\)$/\1/p' "$spec_file") ) ++ if [ ${#archs[@]} -eq 0 ] ++ then ++ return ++ fi ++ ++ # ExclusiveArch statement is present ++ our_arch=$(arch 2>/dev/null) ++ for a in "${archs[@]}" ++ do ++ if [ "$a" == "$our_arch" ] ++ then ++ # We are in the list, so no problem ++ return ++ fi ++ done ++ ++ # We are not in the exclusive arch list. Force the target to the ++ # first listed architecture to make rpmbuild happy. ++ ++ FORCE_ARCH=( "--target" "${archs[0]}" ) ++} + + while true + do +@@ -417,6 +447,9 @@ case "$1" in + # check if rpmbuild is installed before running inspect + check_external_tool rpmbuild rpm-build + ++ # check if ExclusiveArch statement would block rpmbuild ++ check_exclusivearch "$spec_file" ++ + if [ -n "$QUILT_SETUP_FAST" ] + then + if [ "${prefix:0:1}" = / ] diff --git a/setup-implement-a-spec-filter-library.patch b/setup-implement-a-spec-filter-library.patch deleted file mode 100644 index 09b87ad..0000000 --- a/setup-implement-a-spec-filter-library.patch +++ /dev/null @@ -1,82 +0,0 @@ -From: Jean Delvare -Date: Fri, 14 Mar 2025 17:33:07 +0100 -Subject: setup: Implement a spec filter library -Git-commit: 27075e81586fa1b7378caab4162ba6e8e4f45f99 -Patch-mainline: yes -References: bsc#1236907 - -Include spec file filters directly in quilt, so that the most -popular filters can be maintained collectively. - -The first spec file filter is for OBS, based on a script by Matěj -Cepl and an old SUSE-specific quilt patch. - -Signed-off-by: Jean Delvare ---- - Makefile.in | 10 +++++++++- - contrib/spec-filters/obs | 7 +++++++ - quilt/setup.in | 8 +++++--- - 3 files changed, 21 insertions(+), 4 deletions(-) - ---- a/Makefile.in -+++ b/Makefile.in -@@ -117,6 +117,9 @@ DIRT += po/*.mo po/*~ - - SRC += $(wildcard test/*.test) test/run test/test.quiltrc - -+SPEC_FILTERS := $(patsubst contrib/spec-filters/%,%,$(wildcard contrib/spec-filters/*)) -+SRC += $(wildcard contrib/spec-filters/*) -+ - NON_EXEC_IN := doc/quilt.1 doc/README quilt/scripts/patchfns quilt/scripts/utilfns - - GIT_DESC := $(shell ./git-desc | sed -e 's:^v::') -@@ -357,7 +360,12 @@ ifneq ($(COMPAT_PROGRAMS),) - endif - endif - --install: install-main install-compat -+install-contrib: -+ $(INSTALL) -d $(BUILD_ROOT)$(datadir)/$(PACKAGE)/spec-filters -+ $(INSTALL) -m 755 $(SPEC_FILTERS:%=contrib/spec-filters/%) \ -+ $(BUILD_ROOT)$(datadir)/$(PACKAGE)/spec-filters -+ -+install: install-main install-compat install-contrib - - uninstall :: - rm -rf $(BIN:%=$(BUILD_ROOT)$(bindir)/%) \ ---- /dev/null -+++ b/contrib/spec-filters/obs -@@ -0,0 +1,7 @@ -+#!/usr/bin/sh -+# Basic spec file filter for OBS packages -+# https://build.opensuse.org/ -+ -+sed -e '/^%.*@BUILD_FLAVOR@/s/@BUILD_FLAVOR@//' \ -+ -e '/^%lua_provides/d' \ -+ -e '/^Release:/s/[<>]//g' ---- a/quilt/setup.in -+++ b/quilt/setup.in -@@ -244,10 +244,10 @@ inspect() - # Apply filtering to the spec file if requested - if [ -n "$spec_filter" ] - then -- # Make sure PATH isn't used -+ # If only a file name, read from the shared directory - if [[ ! "$spec_filter" =~ / ]] - then -- spec_filter="./$spec_filter" -+ spec_filter="$QUILT_DIR/spec-filters/$spec_filter" - fi - if [ -x "$spec_filter" ] - then -@@ -299,7 +299,9 @@ Initializes a source tree from an rpm sp - Before passing the spec file to rpmbuild for processing, apply a - filter to it. FILTER must be an executable script which reads the - original spec file from stdin and writes the filtered spec file -- to stdout. -+ to stdout. FILTER can be specified as a path to a custom script, -+ or as a simple name, in which case it references one of the -+ filter scripts shipped with quilt. - - --slow Use the original, slow method to process the spec file. In this mode, - rpmbuild generates a working tree in a temporary directory while all diff --git a/setup-new-option-spec-filter.patch b/setup-new-option-spec-filter.patch deleted file mode 100644 index 94b55ce..0000000 --- a/setup-new-option-spec-filter.patch +++ /dev/null @@ -1,80 +0,0 @@ -From: Jean Delvare -Date: Fri, 14 Mar 2025 17:32:59 +0100 -Subject: setup: New option --spec-filter -Git-commit: 65cda3275f16944f232fc9930fbb137a07479bc0 -Patch-mainline: yes -References: bsc#1236907 - -Some build systems (such as OBS) don't work with compliant rpm spec -files. Instead, they use templates, which they preprocess before -passing them to rpmbuild. In order to be able to use "quilt setup" -on these spec files, we need to perform the same kind of -preprocessing. - -For this purpose, introduce a new option to the setup command, ---spec-filter. This lets the user provide a customer filtering script -to preprocess their spec file before rpmbuild gets called on it. - -Signed-off-by: Jean Delvare ---- - quilt/setup.in | 28 +++++++++++++++++++++++++++- - 1 file changed, 27 insertions(+), 1 deletion(-) - ---- a/quilt/setup.in -+++ b/quilt/setup.in -@@ -241,6 +241,23 @@ inspect() - fi - export -f normalize_path dir_to_dir - -+ # Apply filtering to the spec file if requested -+ if [ -n "$spec_filter" ] -+ then -+ # Make sure PATH isn't used -+ if [[ ! "$spec_filter" =~ / ]] -+ then -+ spec_filter="./$spec_filter" -+ fi -+ if [ -x "$spec_filter" ] -+ then -+ "$spec_filter" < "$specdir/$specfile" > "$tmpdir/$specfile" -+ specdir=$tmpdir -+ else -+ printf $"Warning: can't execute filter %s\n" "$spec_filter" >&2 -+ fi -+ fi -+ - # let rpm do all the dirty specfile stuff ... - echo -n "### rpmbuild: " >&4 - -@@ -278,6 +295,12 @@ Initializes a source tree from an rpm sp - --fuzz=N - Set the maximum fuzz factor (needs rpm 4.6 or later). - -+--spec-filter FILTER -+ Before passing the spec file to rpmbuild for processing, apply a -+ filter to it. FILTER must be an executable script which reads the -+ original spec file from stdin and writes the filtered spec file -+ to stdout. -+ - --slow Use the original, slow method to process the spec file. In this mode, - rpmbuild generates a working tree in a temporary directory while all - its actions are recorded, and then everything is replayed from scratch -@@ -306,7 +329,7 @@ and lastly applying the patches. - fi - } - --options=`getopt -o d:vh --long sourcedir:,fuzz:,slow,fast -- "$@"` -+options=`getopt -o d:vh --long sourcedir:,fuzz:,spec-filter:,slow,fast -- "$@"` - - if [ $? -ne 0 ] - then -@@ -338,6 +361,9 @@ do - # Only works with rpm 4.6 and later - DEFINE_FUZZ=( "--define" "_default_patch_fuzz $2" ) - shift 2 ;; -+ --spec-filter) -+ spec_filter=$2 -+ shift 2 ;; - --slow) - QUILT_SETUP_FAST= - shift ;; diff --git a/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch b/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch deleted file mode 100644 index 7e7873a..0000000 --- a/setup-pass-define-to-rpmbuild-instead-of-eval-define.patch +++ /dev/null @@ -1,59 +0,0 @@ -From: Jean Delvare -Date: Fri, 14 Mar 2025 17:32:45 +0100 -Subject: setup: Pass --define to rpmbuild instead of --eval "%define ..." -Git-commit: ff2210b24772bd675987930cde359a1078b89012 -Patch-mainline: yes -References: bsc#1236907 - -Changes in rpmbuild 4.20 break defining macros using --eval "%define -..." for noarch packages. While this is a bug, it is possible and -recommended to define macros using option --define instead, so let's -just do that. - -Signed-off-by: Jean Delvare ---- - quilt/setup.in | 19 ++++++++++--------- - 1 file changed, 10 insertions(+), 9 deletions(-) - ---- a/quilt/setup.in -+++ b/quilt/setup.in -@@ -245,14 +245,14 @@ inspect() - echo -n "### rpmbuild: " >&4 - - PATH="$tmpdir/bin:$PATH" \ -- rpmbuild --eval "%define _sourcedir $abs_sourcedir" \ -- --eval "%define _specdir $specdir" \ -- --eval "%define _builddir $tmpdir/build" \ -- --eval "%define __patch $tmpdir/bin/patch" \ -- --eval "%define __tar $tmpdir/bin/tar" \ -- --eval "%define __unzip $tmpdir/bin/unzip" \ -- --eval "%define __7zip $tmpdir/bin/7z" \ -- --eval "$DEFINE_FUZZ" \ -+ rpmbuild --define "_sourcedir $abs_sourcedir" \ -+ --define "_specdir $specdir" \ -+ --define "_builddir $tmpdir/build" \ -+ --define "__patch $tmpdir/bin/patch" \ -+ --define "__tar $tmpdir/bin/tar" \ -+ --define "__unzip $tmpdir/bin/unzip" \ -+ --define "__7zip $tmpdir/bin/7z" \ -+ "${DEFINE_FUZZ[@]}" \ - --nodeps \ - -bp "$specdir/$specfile" < /dev/null >&5 2>&5 - status=$? -@@ -318,6 +318,7 @@ eval set -- "$options" - export QUILT_SETUP_FAST=1 - prefix= - sourcedir= -+declare -a DEFINE_FUZZ - - while true - do -@@ -335,7 +336,7 @@ do - shift 2 ;; - --fuzz) - # Only works with rpm 4.6 and later -- DEFINE_FUZZ="%define _default_patch_fuzz $2" -+ DEFINE_FUZZ=( "--define" "_default_patch_fuzz $2" ) - shift 2 ;; - --slow) - QUILT_SETUP_FAST= -- 2.51.1