This is an automated email from the git hooks/post-receive script. guillem pushed a commit to branch main in repository dpkg.
View the commit online: https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=99ef650f890c8a3977c933aa9612f6ba5cf13378 commit 99ef650f890c8a3977c933aa9612f6ba5cf13378 Author: Guillem Jover <guil...@debian.org> AuthorDate: Fri Oct 27 03:40:39 2023 +0200 test: Replace SED usage with PERL This makes the code more portable, as sed implementations and their behavior vary wildly and have been a source of portability issues. Instead perl provides consistent behavior across systems. --- src/at/atlocal.in | 1 - src/at/deb-fields.at | 22 ++++++++++++---------- src/at/deb-format.at | 4 ++-- src/at/deb-split.at | 6 ++---- src/at/local.at | 5 ++--- 5 files changed, 18 insertions(+), 20 deletions(-) diff --git a/src/at/atlocal.in b/src/at/atlocal.in index 165c3b19d..8b413ef96 100644 --- a/src/at/atlocal.in +++ b/src/at/atlocal.in @@ -3,7 +3,6 @@ PATH="@abs_top_builddir@/src:$PATH" export PATH -SED="@SED@" GREP="@GREP@" EGREP="@EGREP@" TAR="@TAR@" diff --git a/src/at/deb-fields.at b/src/at/deb-fields.at index 4dd0c8552..ccc733af9 100644 --- a/src/at/deb-fields.at +++ b/src/at/deb-fields.at @@ -9,8 +9,8 @@ test -z "$(dpkg-deb -f pkg-package-type-void.deb Package-Type)" ], [0], [ignore]) DPKG_GEN_CONTROL([pkg-package-type-use]) -DPKG_MOD_CONTROL([pkg-package-type-use], [/^Package:/a\ -Package-Type: udeb]) +DPKG_MOD_CONTROL([pkg-package-type-use], + [s/^Package: .*$/$&\nPackage-Type: udeb/]) AT_CHECK([ dpkg-deb -b pkg-package-type-use # Test presence of Package-Type field. @@ -18,14 +18,16 @@ test -n "$(dpkg-deb -f pkg-package-type-use.deb Package-Type)" ], [0], [ignore]) DPKG_GEN_CONTROL([pkg-obsolete-fields]) -DPKG_MOD_CONTROL([pkg-obsolete-fields], [s/^Priority:/Class:/]) -DPKG_MOD_CONTROL([pkg-obsolete-fields], [s/^Version: 0.0-1/Version: 0.0/]) -DPKG_MOD_CONTROL([pkg-obsolete-fields], [/^Version:/a\ -Revision: 1]) -DPKG_MOD_CONTROL([pkg-obsolete-fields], [/^Package:/a\ -Optional: suggests]) -DPKG_MOD_CONTROL([pkg-obsolete-fields], [/^Package:/a\ -Recommended: recommends]) +DPKG_MOD_CONTROL([pkg-obsolete-fields], + [s/^Priority:/Class:/]) +DPKG_MOD_CONTROL([pkg-obsolete-fields], + [s/^Version: 0.0-1$/Version: 0.0/]) +DPKG_MOD_CONTROL([pkg-obsolete-fields], + [s/^Version:.*$/$&\nRevision: 1/]) +DPKG_MOD_CONTROL([pkg-obsolete-fields], + [s/^Package:.*$/$&\nOptional: suggests/]) +DPKG_MOD_CONTROL([pkg-obsolete-fields], + [s/^Package:.*$/$&\nRecommended: recommends/]) AT_CHECK([ dpkg-deb -b pkg-obsolete-fields ], [0], [ignore], diff --git a/src/at/deb-format.at b/src/at/deb-format.at index 781880109..4c0a87ff2 100644 --- a/src/at/deb-format.at +++ b/src/at/deb-format.at @@ -22,7 +22,7 @@ dpkg-deb --info pkg-deb-old-bogus-only-version.deb DPKG_GEN_CONTROL([pkg-deb-old-format]) DPKG_MOD_CONTROL([pkg-deb-old-format], - [s/^Description:.*$/& - deb old format support/]) + [s/^Description:.*$/$& - deb old format support/]) AT_DATA([pkg-deb-old-format/file-templ], [test ]) AT_CHECK([ @@ -185,7 +185,7 @@ AT_CLEANUP m4_define([DPKG_GEN_PKG_DEB_FORMAT_TEMPL], [ DPKG_GEN_CONTROL([pkg-deb-format]) DPKG_MOD_CONTROL([pkg-deb-format], - [s/^Description:.*$/& - deb format support/]) + [s/^Description:.*$/$& - deb format support/]) AT_DATA([pkg-deb-format/file-templ], [test ]) AT_CHECK([ diff --git a/src/at/deb-split.at b/src/at/deb-split.at index 8519bf9c9..b0dcd4ba2 100644 --- a/src/at/deb-split.at +++ b/src/at/deb-split.at @@ -11,7 +11,7 @@ AT_KEYWORDS([dpkg-split deb-split]) DPKG_GEN_CONTROL([pkg-split]) DPKG_MOD_CONTROL([pkg-split], - [s/^Description:.*$/& - normal package to be split/]) + [s/^Description:.*$/$& - normal package to be split/]) AT_CHECK([ # Initialize the template package chmod -R u+w pkg-split @@ -42,9 +42,7 @@ DEB_SPLIT_PART_SIZE_VERSION=$((DEB_SPLIT_PART_SIZE + 2)) AT_CHECK_UNQUOTED([ # Test debian-split with 2.x version ar x pkg-split-part.1of10.deb debian-split -$SED -e '1c\ -2.999' debian-split >debian-split.new -mv debian-split.new debian-split +$PERL -p -i -E 's/.*/2.999/ if $. == 1' debian-split ar qSc pkg-split-part-version-2x.deb debian-split data.1 ar t pkg-split-part-version-2x.deb dpkg-split -I pkg-split-part-version-2x.deb diff --git a/src/at/local.at b/src/at/local.at index 4db73fb9f..a49311cb5 100644 --- a/src/at/local.at +++ b/src/at/local.at @@ -135,8 +135,7 @@ m4_define([DPKG_GEN_CONTROL], [ DPKG_GEN_CTRL_FILE([$1], [control], [DPKG_TMPL_CONTROL([$1])]) ]) -# DPKG_MOD_CONTROL([$pkgname], [$sedexpr]) +# DPKG_MOD_CONTROL([$pkgname], [$perlexpr]) m4_define([DPKG_MOD_CONTROL], [ - $SED -e '$2' <'$1/DEBIAN/control' >'$1/DEBIAN/control.new' - mv '$1/DEBIAN/control.new' '$1/DEBIAN/control' + $PERL -p -i -E '$2' '$1/DEBIAN/control' ]) -- Dpkg.Org's dpkg