Compare commits
4 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7c3b9970aa | ||
|
|
92d22c2084 | ||
|
|
2132b8f6b0 | ||
|
|
48c80e2616 |
52 changed files with 1915 additions and 481584 deletions
|
|
@ -1 +0,0 @@
|
||||||
1
|
|
||||||
12
.gitignore
vendored
12
.gitignore
vendored
|
|
@ -1,13 +1 @@
|
||||||
diffutils-2.8.1.tar.gz
|
diffutils-2.8.1.tar.gz
|
||||||
/diffutils-3.0.tar.xz
|
|
||||||
/diffutils-3.1.tar.xz
|
|
||||||
/diffutils-3.2.tar.xz
|
|
||||||
/diffutils-3.3.tar.xz
|
|
||||||
/diffutils-3.5.tar.xz
|
|
||||||
/diffutils-3.6.tar.xz
|
|
||||||
/diffutils-3.7.tar.xz
|
|
||||||
/diffutils-3.8.tar.xz
|
|
||||||
/diffutils-3.9.tar.xz
|
|
||||||
/diffutils-3.10.tar.xz
|
|
||||||
/diffutils-3.11.tar.xz
|
|
||||||
/diffutils-3.12.tar.xz
|
|
||||||
|
|
|
||||||
|
|
@ -1,85 +0,0 @@
|
||||||
From 45a4762bf3241e7fb6a2e01d382791ae44236841 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
|
||||||
Date: Wed, 23 Apr 2025 11:34:20 -0700
|
|
||||||
Subject: [PATCH] sdiff: pacify gcc -flto -Wmaybe-uninitialized
|
|
||||||
|
|
||||||
* src/sdiff.c (edit): Portmanteauize two locals into one, which
|
|
||||||
arguably makes the code clearer, and anyway pacifies gcc -flto
|
|
||||||
-Wmaybe-uninitialized with gcc (GCC) 15.0.1 20250329 (Red Hat
|
|
||||||
15.0.1-0) x86-64 (Bug#78019).
|
|
||||||
---
|
|
||||||
src/sdiff.c | 19 +++++++++++--------
|
|
||||||
1 file changed, 11 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/sdiff.c b/src/sdiff.c
|
|
||||||
index 5b1b162..15b8dce 100644
|
|
||||||
--- a/src/sdiff.c
|
|
||||||
+++ b/src/sdiff.c
|
|
||||||
@@ -857,8 +857,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
{
|
|
||||||
for (;;)
|
|
||||||
{
|
|
||||||
- int cmd0;
|
|
||||||
- int cmd1;
|
|
||||||
+ int cmd;
|
|
||||||
bool gotcmd = false;
|
|
||||||
|
|
||||||
while (! gotcmd)
|
|
||||||
@@ -867,8 +866,8 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
perror_fatal (_("write failed"));
|
|
||||||
ck_fflush (stdout);
|
|
||||||
|
|
||||||
- cmd0 = skip_white ();
|
|
||||||
- switch (cmd0)
|
|
||||||
+ cmd = skip_white ();
|
|
||||||
+ switch (cmd)
|
|
||||||
{
|
|
||||||
case '1': case '2': case 'l': case 'r':
|
|
||||||
case 's': case 'v': case 'q':
|
|
||||||
@@ -882,12 +881,15 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'e':
|
|
||||||
- cmd1 = skip_white ();
|
|
||||||
+ int cmd1 = skip_white ();
|
|
||||||
switch (cmd1)
|
|
||||||
{
|
|
||||||
case '1': case '2': case 'b': case 'd': case 'l': case 'r':
|
|
||||||
if (skip_white () == '\n')
|
|
||||||
- gotcmd = true;
|
|
||||||
+ {
|
|
||||||
+ gotcmd = true;
|
|
||||||
+ cmd |= cmd1 << UCHAR_WIDTH;
|
|
||||||
+ }
|
|
||||||
else
|
|
||||||
{
|
|
||||||
give_help ();
|
|
||||||
@@ -908,7 +910,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
if (feof (stdin))
|
|
||||||
{
|
|
||||||
gotcmd = true;
|
|
||||||
- cmd0 = 'q';
|
|
||||||
+ cmd = 'q';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
FALLTHROUGH;
|
|
||||||
@@ -921,7 +923,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- switch (cmd0)
|
|
||||||
+ switch (cmd & UCHAR_MAX)
|
|
||||||
{
|
|
||||||
case '1': case 'l':
|
|
||||||
lf_copy (left, llen, outfile);
|
|
||||||
@@ -954,6 +956,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
if (! tmp)
|
|
||||||
perror_fatal (squote (0, tmpname));
|
|
||||||
|
|
||||||
+ int cmd1 = cmd >> UCHAR_WIDTH;
|
|
||||||
switch (cmd1)
|
|
||||||
{
|
|
||||||
case 'd':
|
|
||||||
--
|
|
||||||
2.48.1
|
|
||||||
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
From 686357a40ca038edc902276cb3b33f4757d8cfb2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
|
||||||
Date: Sat, 26 Apr 2025 12:54:06 -0700
|
|
||||||
Subject: [PATCH] sdiff: port back to C17-
|
|
||||||
|
|
||||||
* src/sdiff.c (edit): Do not use a label just before a statement.
|
|
||||||
Problem reported by Bruno Haible (Bug#78032).
|
|
||||||
---
|
|
||||||
src/sdiff.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/sdiff.c b/src/sdiff.c
|
|
||||||
index 15b8dce..cc961c3 100644
|
|
||||||
--- a/src/sdiff.c
|
|
||||||
+++ b/src/sdiff.c
|
|
||||||
@@ -880,7 +880,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
- case 'e':
|
|
||||||
+ case 'e':;
|
|
||||||
int cmd1 = skip_white ();
|
|
||||||
switch (cmd1)
|
|
||||||
{
|
|
||||||
--
|
|
||||||
2.48.1
|
|
||||||
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
srpm $1
|
|
||||||
mcd $BUILDDIR/$1
|
|
||||||
$SRC/${1}-*/configure $TCONFIGARGS
|
|
||||||
notparallel
|
|
||||||
test -d tools/gnulib/lib && make $J V=1 -C tools/gnulib/lib
|
|
||||||
make $J V=1
|
|
||||||
make $J install DESTDIR=${ROOTFS}
|
|
||||||
107
cmp.1
Normal file
107
cmp.1
Normal file
|
|
@ -0,0 +1,107 @@
|
||||||
|
.\" Copyright (c) 1987, 1990, 1993
|
||||||
|
.\" The Regents of the University of California. All rights reserved.
|
||||||
|
.\"
|
||||||
|
.\" This code is derived from software contributed to Berkeley by
|
||||||
|
.\" the Institute of Electrical and Electronics Engineers, Inc.
|
||||||
|
.\"
|
||||||
|
.\" Redistribution and use in source and binary forms, with or without
|
||||||
|
.\" modification, are permitted provided that the following conditions
|
||||||
|
.\" are met:
|
||||||
|
.\" 1. Redistributions of source code must retain the above copyright
|
||||||
|
.\" notice, this list of conditions and the following disclaimer.
|
||||||
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
.\" notice, this list of conditions and the following disclaimer in the
|
||||||
|
.\" documentation and/or other materials provided with the distribution.
|
||||||
|
.\" 3. All advertising materials mentioning features or use of this software
|
||||||
|
.\" must display the following acknowledgement:
|
||||||
|
.\" This product includes software developed by the University of
|
||||||
|
.\" California, Berkeley and its contributors.
|
||||||
|
.\" 4. Neither the name of the University nor the names of its contributors
|
||||||
|
.\" may be used to endorse or promote products derived from this software
|
||||||
|
.\" without specific prior written permission.
|
||||||
|
.\"
|
||||||
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||||
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||||
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||||
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
.\" SUCH DAMAGE.
|
||||||
|
.\"
|
||||||
|
.\" @(#)cmp.1 8.1 (Berkeley) 6/6/93
|
||||||
|
.\"
|
||||||
|
.Dd June 6, 1993
|
||||||
|
.Dt CMP 1
|
||||||
|
.Os
|
||||||
|
.Sh NAME
|
||||||
|
.Nm cmp
|
||||||
|
.Nd compare two files
|
||||||
|
.Sh SYNOPSIS
|
||||||
|
.Nm cmp
|
||||||
|
.Op Fl l | Fl s
|
||||||
|
.Ar file1 file2
|
||||||
|
.Op Ar skip1 Op Ar skip2
|
||||||
|
.Sh DESCRIPTION
|
||||||
|
The cmp utility compares two files of any type and writes the results
|
||||||
|
to the standard output.
|
||||||
|
By default,
|
||||||
|
.Nm
|
||||||
|
is silent if the files are the same; if they differ, the byte
|
||||||
|
and line number at which the first difference occurred is reported.
|
||||||
|
.Pp
|
||||||
|
Bytes and lines are numbered beginning with one.
|
||||||
|
.Pp
|
||||||
|
The following options are available:
|
||||||
|
.Bl -tag -width flag
|
||||||
|
.It Fl l
|
||||||
|
Print the byte number (decimal) and the differing
|
||||||
|
byte values (octal) for each difference.
|
||||||
|
.It Fl s
|
||||||
|
Print nothing for differing files; return exit
|
||||||
|
status only.
|
||||||
|
.El
|
||||||
|
.Pp
|
||||||
|
The optional arguments
|
||||||
|
.Ar skip1
|
||||||
|
and
|
||||||
|
.Ar skip2
|
||||||
|
are the byte offsets from the beginning of
|
||||||
|
.Ar file1
|
||||||
|
and
|
||||||
|
.Ar file2 ,
|
||||||
|
respectively, where the comparison will begin.
|
||||||
|
The offset is decimal by default, but may be expressed as an hexadecimal
|
||||||
|
or octal value by preceding it with a leading ``0x'' or ``0''.
|
||||||
|
.Pp
|
||||||
|
The
|
||||||
|
.Nm cmp
|
||||||
|
utility exits with one of the following values:
|
||||||
|
.Bl -tag -width 4n
|
||||||
|
.It 0
|
||||||
|
The files are identical.
|
||||||
|
.It 1
|
||||||
|
The files are different; this includes the case
|
||||||
|
where one file is identical to the first part of
|
||||||
|
the other.
|
||||||
|
In the latter case, if the
|
||||||
|
.Fl s
|
||||||
|
option has not been specified,
|
||||||
|
.Nm cmp
|
||||||
|
writes to standard output that EOF was reached in the shorter
|
||||||
|
file (before any differences were found).
|
||||||
|
.It >1
|
||||||
|
An error occurred.
|
||||||
|
.El
|
||||||
|
.Sh SEE ALSO
|
||||||
|
.Xr diff 1 ,
|
||||||
|
.Xr diff3 1
|
||||||
|
.Sh STANDARDS
|
||||||
|
The
|
||||||
|
.Nm cmp
|
||||||
|
utility is expected to be
|
||||||
|
.St -p1003.2
|
||||||
|
compatible.
|
||||||
485
diff.1
Normal file
485
diff.1
Normal file
|
|
@ -0,0 +1,485 @@
|
||||||
|
.TH DIFF 1 "22sep1993" "GNU Tools" "GNU Tools"
|
||||||
|
.SH NAME
|
||||||
|
diff \- find differences between two files
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.B diff
|
||||||
|
[options] from-file to-file
|
||||||
|
.SH DESCRIPTION
|
||||||
|
In the simplest case,
|
||||||
|
.I diff
|
||||||
|
compares the contents of the two files
|
||||||
|
.I from-file
|
||||||
|
and
|
||||||
|
.IR to-file .
|
||||||
|
A file name of
|
||||||
|
.B \-
|
||||||
|
stands for
|
||||||
|
text read from the standard input. As a special case,
|
||||||
|
.B "diff \- \-"
|
||||||
|
compares a copy of standard input to itself.
|
||||||
|
|
||||||
|
If
|
||||||
|
.I from-file
|
||||||
|
is a directory and
|
||||||
|
.I to-file
|
||||||
|
is not,
|
||||||
|
.I diff
|
||||||
|
compares the file in
|
||||||
|
.I from-file
|
||||||
|
whose file name is that of
|
||||||
|
.IR to-file ,
|
||||||
|
and vice versa. The non-directory file must not be
|
||||||
|
.BR \- .
|
||||||
|
|
||||||
|
If both
|
||||||
|
.I from-file
|
||||||
|
and
|
||||||
|
.I to-file
|
||||||
|
are directories,
|
||||||
|
.I diff
|
||||||
|
compares corresponding files in both directories, in
|
||||||
|
alphabetical order; this comparison is not recursive unless the
|
||||||
|
.B \-r
|
||||||
|
or
|
||||||
|
.B \-\-recursive
|
||||||
|
option is given.
|
||||||
|
.I diff
|
||||||
|
never
|
||||||
|
compares the actual contents of a directory as if it were a file. The
|
||||||
|
file that is fully specified may not be standard input, because standard
|
||||||
|
input is nameless and the notion of ``file with the same name'' does not
|
||||||
|
apply.
|
||||||
|
|
||||||
|
.B diff
|
||||||
|
options begin with
|
||||||
|
.BR \- ,
|
||||||
|
so normally
|
||||||
|
.I from-file
|
||||||
|
and
|
||||||
|
.I to-file
|
||||||
|
may not begin with
|
||||||
|
.BR \- .
|
||||||
|
However,
|
||||||
|
.B \-\-
|
||||||
|
as an
|
||||||
|
argument by itself treats the remaining arguments as file names even if
|
||||||
|
they begin with
|
||||||
|
.BR \- .
|
||||||
|
.SS Options
|
||||||
|
Below is a summary of all of the options that GNU
|
||||||
|
.I diff
|
||||||
|
accepts.
|
||||||
|
Most options have two equivalent names, one of which is a single letter
|
||||||
|
preceded by
|
||||||
|
.BR \- ,
|
||||||
|
and the other of which is a long name preceded by
|
||||||
|
.BR \-\- .
|
||||||
|
Multiple single letter options (unless they take an
|
||||||
|
argument) can be combined into a single command line word:
|
||||||
|
.B \-ac
|
||||||
|
is
|
||||||
|
equivalent to
|
||||||
|
.BR "\-a \-c" .
|
||||||
|
Long named options can be abbreviated to
|
||||||
|
any unique prefix of their name. Brackets
|
||||||
|
.RB ( [
|
||||||
|
and
|
||||||
|
.BR ] )
|
||||||
|
indicate that an
|
||||||
|
option takes an optional argument.
|
||||||
|
.TP
|
||||||
|
.BI \- lines
|
||||||
|
Show
|
||||||
|
.I lines
|
||||||
|
(an integer) lines of context. This option does not
|
||||||
|
specify an output format by itself; it has no effect unless it is
|
||||||
|
combined with
|
||||||
|
.B \-c
|
||||||
|
or
|
||||||
|
.BR \-u .
|
||||||
|
This option is obsolete. For proper
|
||||||
|
operation,
|
||||||
|
.I patch
|
||||||
|
typically needs at least two lines of context.
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not seem to be text.
|
||||||
|
.TP
|
||||||
|
.B \-b
|
||||||
|
Ignore changes in amount of white space.
|
||||||
|
.TP
|
||||||
|
.B \-B
|
||||||
|
Ignore changes that just insert or delete blank lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-brief
|
||||||
|
Report only whether the files differ, not the details of the
|
||||||
|
differences.
|
||||||
|
.TP
|
||||||
|
.B \-c
|
||||||
|
Use the context output format.
|
||||||
|
.TP
|
||||||
|
.BI "\-C " lines
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-context[= lines ]
|
||||||
|
Use the context output format, showing
|
||||||
|
.I lines
|
||||||
|
(an integer) lines of
|
||||||
|
context, or three if
|
||||||
|
.I lines
|
||||||
|
is not given.
|
||||||
|
For proper operation,
|
||||||
|
.I patch
|
||||||
|
typically needs at least two lines of
|
||||||
|
context.
|
||||||
|
.TP
|
||||||
|
.BI \-\-changed\-group\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a line group containing differing lines from
|
||||||
|
both files in if-then-else format.
|
||||||
|
.TP
|
||||||
|
.B \-d
|
||||||
|
Change the algorithm to perhaps find a smaller set of changes. This makes
|
||||||
|
.I diff
|
||||||
|
slower (sometimes much slower).
|
||||||
|
.TP
|
||||||
|
.BI "\-D " name
|
||||||
|
Make merged if-then-else format output, conditional on the preprocessor
|
||||||
|
macro
|
||||||
|
.IR name .
|
||||||
|
.TP
|
||||||
|
.B \-e
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-ed
|
||||||
|
Make output that is a valid
|
||||||
|
.I ed
|
||||||
|
script.
|
||||||
|
.TP
|
||||||
|
.BI \-\-exclude= pattern
|
||||||
|
When comparing directories, ignore files and subdirectories whose basenames
|
||||||
|
match
|
||||||
|
.IR pattern .
|
||||||
|
.TP
|
||||||
|
.BI \-\-exclude\-from= file
|
||||||
|
When comparing directories, ignore files and subdirectories whose basenames
|
||||||
|
match any pattern contained in
|
||||||
|
.IR file .
|
||||||
|
.TP
|
||||||
|
.B \-\-expand\-tabs
|
||||||
|
Expand tabs to spaces in the output, to preserve the alignment of tabs
|
||||||
|
in the input files.
|
||||||
|
.TP
|
||||||
|
.B \-f
|
||||||
|
Make output that looks vaguely like an
|
||||||
|
.I ed
|
||||||
|
script but has changes
|
||||||
|
in the order they appear in the file.
|
||||||
|
.TP
|
||||||
|
.BI "\-F " regexp
|
||||||
|
In context and unified format, for each hunk of differences, show some
|
||||||
|
of the last preceding line that matches
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.B \-\-forward\-ed
|
||||||
|
Make output that looks vaguely like an
|
||||||
|
.B ed
|
||||||
|
script but has changes
|
||||||
|
in the order they appear in the file.
|
||||||
|
.TP
|
||||||
|
.B \-h
|
||||||
|
This option currently has no effect; it is present for Unix
|
||||||
|
compatibility.
|
||||||
|
.TP
|
||||||
|
.B \-H
|
||||||
|
Use heuristics to speed handling of large files that have numerous
|
||||||
|
scattered small changes.
|
||||||
|
.TP
|
||||||
|
.BI \-\-horizon\-lines= lines
|
||||||
|
Do not discard the last
|
||||||
|
.I lines
|
||||||
|
lines of the common prefix
|
||||||
|
and the first
|
||||||
|
.I lines
|
||||||
|
lines of the common suffix.
|
||||||
|
.TP
|
||||||
|
.B \-i
|
||||||
|
Ignore changes in case; consider upper- and lower-case letters
|
||||||
|
equivalent.
|
||||||
|
.TP
|
||||||
|
.BI "\-I " regexp
|
||||||
|
Ignore changes that just insert or delete lines that match
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.BI \-\-ifdef= name
|
||||||
|
Make merged if-then-else format output, conditional on the preprocessor
|
||||||
|
macro
|
||||||
|
.IR name .
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-all\-space
|
||||||
|
Ignore white space when comparing lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-blank\-lines
|
||||||
|
Ignore changes that just insert or delete blank lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-case
|
||||||
|
Ignore changes in case; consider upper- and lower-case to be the same.
|
||||||
|
.TP
|
||||||
|
.BI \-\-ignore\-matching\-lines= regexp
|
||||||
|
Ignore changes that just insert or delete lines that match
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-space\-change
|
||||||
|
Ignore changes in amount of white space.
|
||||||
|
.TP
|
||||||
|
.B \-\-initial\-tab
|
||||||
|
Output a tab rather than a space before the text of a line in normal or
|
||||||
|
context format. This causes the alignment of tabs in the line to look
|
||||||
|
normal.
|
||||||
|
.TP
|
||||||
|
.B \-l
|
||||||
|
Pass the output through
|
||||||
|
.I pr
|
||||||
|
to paginate it.
|
||||||
|
.TP
|
||||||
|
.BI "\-L " label
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-label= label
|
||||||
|
Use
|
||||||
|
.I label
|
||||||
|
instead of the file name in the context format
|
||||||
|
and unified format
|
||||||
|
headers.
|
||||||
|
.TP
|
||||||
|
.B \-\-left\-column
|
||||||
|
Print only the left column of two common lines in side by side format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-line\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output all input lines in in-then-else format.
|
||||||
|
.TP
|
||||||
|
.B \-\-minimal
|
||||||
|
Change the algorithm to perhaps find a smaller set of changes. This
|
||||||
|
makes
|
||||||
|
.I diff
|
||||||
|
slower (sometimes much slower).
|
||||||
|
.TP
|
||||||
|
.B \-n
|
||||||
|
Output RCS-format diffs; like
|
||||||
|
.B \-f
|
||||||
|
except that each command
|
||||||
|
specifies the number of lines affected.
|
||||||
|
.TP
|
||||||
|
.B \-N
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-new\-file
|
||||||
|
In directory comparison, if a file is found in only one directory,
|
||||||
|
treat it as present but empty in the other directory.
|
||||||
|
.TP
|
||||||
|
.BI \-\-new\-group\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a group of lines taken from just the second
|
||||||
|
file in if-then-else format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-new\-line\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a line taken from just the second file in
|
||||||
|
if-then-else format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-old\-group\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a group of lines taken from just the first
|
||||||
|
file in if-then-else format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-old\-line\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a line taken from just the first file in
|
||||||
|
if-then-else format.
|
||||||
|
.TP
|
||||||
|
.B \-p
|
||||||
|
Show which C function each change is in.
|
||||||
|
.TP
|
||||||
|
.B \-P
|
||||||
|
When comparing directories, if a file appears only in the second
|
||||||
|
directory of the two, treat it as present but empty in the other.
|
||||||
|
.TP
|
||||||
|
.B \-\-paginate
|
||||||
|
Pass the output through
|
||||||
|
.I pr
|
||||||
|
to paginate it.
|
||||||
|
.TP
|
||||||
|
.B \-q
|
||||||
|
Report only whether the files differ, not the details of the
|
||||||
|
differences.
|
||||||
|
.TP
|
||||||
|
.B \-r
|
||||||
|
When comparing directories, recursively compare any subdirectories
|
||||||
|
found.
|
||||||
|
.TP
|
||||||
|
.B \-\-rcs
|
||||||
|
Output RCS-format diffs; like
|
||||||
|
.B \-f
|
||||||
|
except that each command
|
||||||
|
specifies the number of lines affected.
|
||||||
|
.TP
|
||||||
|
.B \-\-recursive
|
||||||
|
When comparing directories, recursively compare any subdirectories
|
||||||
|
found.
|
||||||
|
.TP
|
||||||
|
.B \-\-report\-identical\-files
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
Report when two files are the same.
|
||||||
|
.TP
|
||||||
|
.BI "\-S " file
|
||||||
|
When comparing directories, start with the file
|
||||||
|
.IR file .
|
||||||
|
This is
|
||||||
|
used for resuming an aborted comparison.
|
||||||
|
.TP
|
||||||
|
.BI \-\-from\-file= file
|
||||||
|
Compare
|
||||||
|
.I file
|
||||||
|
to all operands.
|
||||||
|
.I file
|
||||||
|
can be a directory.
|
||||||
|
.TP
|
||||||
|
.BI \-\-to\-file= file
|
||||||
|
Compare all operands to
|
||||||
|
.IR file . " file"
|
||||||
|
can be a directory.
|
||||||
|
.TP
|
||||||
|
.B \-\-sdiff\-merge\-assist
|
||||||
|
Print extra information to help
|
||||||
|
.IR sdiff .
|
||||||
|
.I sdiff
|
||||||
|
uses this
|
||||||
|
option when it runs
|
||||||
|
.IR diff .
|
||||||
|
This option is not intended for users
|
||||||
|
to use directly.
|
||||||
|
.TP
|
||||||
|
.B \-\-show\-c\-function
|
||||||
|
Show which C function each change is in.
|
||||||
|
.TP
|
||||||
|
.BI \-\-show\-function\-line= regexp
|
||||||
|
In context and unified format, for each hunk of differences, show some
|
||||||
|
of the last preceding line that matches
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.B \-\-side\-by\-side
|
||||||
|
Use the side by side output format.
|
||||||
|
.TP
|
||||||
|
.B \-\-speed\-large\-files
|
||||||
|
Use heuristics to speed handling of large files that have numerous
|
||||||
|
scattered small changes.
|
||||||
|
.TP
|
||||||
|
.BI \-\-starting\-file= file
|
||||||
|
When comparing directories, start with the file
|
||||||
|
.IR file .
|
||||||
|
This is
|
||||||
|
used for resuming an aborted comparison.
|
||||||
|
.TP
|
||||||
|
.B \-\-suppress\-common\-lines
|
||||||
|
Do not print common lines in side by side format.
|
||||||
|
.TP
|
||||||
|
.B \-t
|
||||||
|
Expand tabs to spaces in the output, to preserve the alignment of tabs
|
||||||
|
in the input files.
|
||||||
|
.TP
|
||||||
|
.B \-T
|
||||||
|
Output a tab rather than a space before the text of a line in normal or
|
||||||
|
context format. This causes the alignment of tabs in the line to look
|
||||||
|
normal.
|
||||||
|
.TP
|
||||||
|
.B \-\-text
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not appear to be text.
|
||||||
|
.TP
|
||||||
|
.B \-u
|
||||||
|
Use the unified output format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-unchanged\-group\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a group of common lines taken from both files
|
||||||
|
in if-then-else format.
|
||||||
|
.TP
|
||||||
|
.BI \-\-unchanged\-line\-format= format
|
||||||
|
Use
|
||||||
|
.I format
|
||||||
|
to output a line common to both files in if-then-else
|
||||||
|
format.
|
||||||
|
.TP
|
||||||
|
.B \-\-unidirectional\-new\-file
|
||||||
|
When comparing directories, if a file appears only in the second
|
||||||
|
directory of the two, treat it as present but empty in the other.
|
||||||
|
.TP
|
||||||
|
.BI "\-U " lines
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-unified[= lines ]
|
||||||
|
Use the unified output format, showing
|
||||||
|
.I lines
|
||||||
|
(an integer) lines of
|
||||||
|
context, or three if
|
||||||
|
.I lines
|
||||||
|
is not given.
|
||||||
|
For proper operation,
|
||||||
|
.I patch
|
||||||
|
typically needs at least two lines of
|
||||||
|
context.
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Output the version number of
|
||||||
|
.IR diff .
|
||||||
|
.TP
|
||||||
|
.B \-w
|
||||||
|
Ignore white space when comparing lines.
|
||||||
|
.TP
|
||||||
|
.BI "\-W " columns
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-width= columns
|
||||||
|
Use an output width of
|
||||||
|
.I columns
|
||||||
|
in side by side format.
|
||||||
|
.TP
|
||||||
|
.BI "\-x " pattern
|
||||||
|
When comparing directories, ignore files and subdirectories whose basenames
|
||||||
|
match
|
||||||
|
.IR pattern .
|
||||||
|
.TP
|
||||||
|
.BI "\-X " file
|
||||||
|
When comparing directories, ignore files and subdirectories whose basenames
|
||||||
|
match any pattern contained in
|
||||||
|
.IR file .
|
||||||
|
.TP
|
||||||
|
.B \-y
|
||||||
|
Use the side by side output format.
|
||||||
|
.SH SEE ALSO
|
||||||
|
cmp(1), comm(1), diff3(1), ed(1), patch(1), pr(1), sdiff(1).
|
||||||
|
.SH DIAGNOSTICS
|
||||||
|
An exit status of 0 means no differences were found, 1 means some
|
||||||
|
differences were found, and 2 means trouble.
|
||||||
210
diff3.1
Normal file
210
diff3.1
Normal file
|
|
@ -0,0 +1,210 @@
|
||||||
|
.TH DIFF3 1 "22sep1993" "GNU Tools" "GNU Tools"
|
||||||
|
.SH NAME
|
||||||
|
diff3 \- find differences between three files
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.B diff3
|
||||||
|
[options] mine older yours
|
||||||
|
.SH DESCRIPTION
|
||||||
|
The
|
||||||
|
.I diff3
|
||||||
|
command compares three files and outputs descriptions
|
||||||
|
of their differences.
|
||||||
|
|
||||||
|
The files to compare are
|
||||||
|
.IR mine ,
|
||||||
|
.IR older ,
|
||||||
|
and
|
||||||
|
.IR yours .
|
||||||
|
At most one of these three file names may be
|
||||||
|
.BR \- ,
|
||||||
|
which tells
|
||||||
|
.I diff3
|
||||||
|
to read the standard input for that file.
|
||||||
|
.SS Options
|
||||||
|
Below is a summary of all of the options that GNU
|
||||||
|
.I diff3
|
||||||
|
accepts. Multiple single letter options (unless they take an argument)
|
||||||
|
can be combined into a single command line argument.
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not appear to be text.
|
||||||
|
.TP
|
||||||
|
.B \-A
|
||||||
|
Incorporate all changes from
|
||||||
|
.I older
|
||||||
|
to
|
||||||
|
.I yours
|
||||||
|
into
|
||||||
|
.IR mine ,
|
||||||
|
surrounding all conflicts with bracket lines.
|
||||||
|
.TP
|
||||||
|
.B \-B
|
||||||
|
Old behavior of -A. Shows non-conflicts.
|
||||||
|
.TP
|
||||||
|
.B \-e
|
||||||
|
Generate an
|
||||||
|
.I ed
|
||||||
|
script that incorporates all the changes from
|
||||||
|
.I older
|
||||||
|
to
|
||||||
|
.I yours
|
||||||
|
into
|
||||||
|
.IR mine .
|
||||||
|
.TP
|
||||||
|
.B \-E
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except bracket lines from overlapping changes' first
|
||||||
|
and third files.
|
||||||
|
With
|
||||||
|
.BR \-e ,
|
||||||
|
an overlapping change looks like this:
|
||||||
|
.sp
|
||||||
|
.nf
|
||||||
|
<<<<<<< \fImine\fP
|
||||||
|
lines from \fImine\fP
|
||||||
|
=======
|
||||||
|
lines from \fIyours\fP
|
||||||
|
>>>>>>> \fIyours\fP
|
||||||
|
.fi
|
||||||
|
.TP
|
||||||
|
.B \-\-ed
|
||||||
|
Generate an
|
||||||
|
.I ed
|
||||||
|
script that incorporates all the changes from
|
||||||
|
.I older
|
||||||
|
to
|
||||||
|
.I yours
|
||||||
|
into
|
||||||
|
.IR mine .
|
||||||
|
.TP
|
||||||
|
.B \-\-easy\-only
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except output only the nonoverlapping changes.
|
||||||
|
.TP
|
||||||
|
.B \-i
|
||||||
|
Generate
|
||||||
|
.B w
|
||||||
|
and
|
||||||
|
.B q
|
||||||
|
commands at the end of the
|
||||||
|
.I ed
|
||||||
|
script for System V compatibility. This option must be combined with
|
||||||
|
one of the
|
||||||
|
.B \-AeExX3
|
||||||
|
options, and may not be combined with
|
||||||
|
.BR \-m .
|
||||||
|
.TP
|
||||||
|
.B \-\-initial\-tab
|
||||||
|
Output a tab rather than two spaces before the text of a line in normal format.
|
||||||
|
This causes the alignment of tabs in the line to look normal.
|
||||||
|
.TP
|
||||||
|
.BI "\-L " label
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-label= label
|
||||||
|
Use the label
|
||||||
|
.I label
|
||||||
|
for the brackets output by the
|
||||||
|
.BR \-A ,
|
||||||
|
.B \-E
|
||||||
|
and
|
||||||
|
.B \-X
|
||||||
|
options. This option may be given up to three
|
||||||
|
times, one for each input file. The default labels are the names of
|
||||||
|
the input files. Thus
|
||||||
|
.B "diff3 \-L X \-L Y \-L Z \-m A B C"
|
||||||
|
acts like
|
||||||
|
.BR "diff3 \-m A B C ,
|
||||||
|
except that the output looks like it came from
|
||||||
|
files named
|
||||||
|
.BR X ,
|
||||||
|
.B Y
|
||||||
|
and
|
||||||
|
.B Z
|
||||||
|
rather than from files
|
||||||
|
named
|
||||||
|
.BR A ,
|
||||||
|
.B B
|
||||||
|
and
|
||||||
|
.BR C .
|
||||||
|
.TP
|
||||||
|
.B \-m
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-merge
|
||||||
|
Apply the edit script to the first file and send the result to standard
|
||||||
|
output. Unlike piping the output from
|
||||||
|
.I diff3
|
||||||
|
to
|
||||||
|
.IR ed ,
|
||||||
|
this
|
||||||
|
works even for binary files and incomplete lines.
|
||||||
|
.B \-A
|
||||||
|
is assumed
|
||||||
|
if no edit script option is specified.
|
||||||
|
.TP
|
||||||
|
.B \-\-overlap\-only
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except output only the overlapping changes.
|
||||||
|
.TP
|
||||||
|
.B \-\-show\-all
|
||||||
|
Incorporate all unmerged changes from
|
||||||
|
.I older
|
||||||
|
to
|
||||||
|
.I yours
|
||||||
|
into
|
||||||
|
.IR mine ,
|
||||||
|
surrounding all overlapping changes with bracket lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-show\-overlap
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except bracket lines from overlapping changes' first
|
||||||
|
and third files.
|
||||||
|
.TP
|
||||||
|
.B \-T
|
||||||
|
Output a tab rather than two spaces before the text of a line in normal format.
|
||||||
|
This causes the alignment of tabs in the line to look normal.
|
||||||
|
.TP
|
||||||
|
.B \-\-text
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not appear to be text.
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Output the version number of
|
||||||
|
.IR diff3 .
|
||||||
|
.TP
|
||||||
|
.B \-x
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except output only the overlapping changes.
|
||||||
|
.TP
|
||||||
|
.B \-X
|
||||||
|
Like
|
||||||
|
.BR \-E ,
|
||||||
|
except output only the overlapping changes.
|
||||||
|
In other words, like
|
||||||
|
.BR \-x ,
|
||||||
|
except bracket changes as in
|
||||||
|
.BR \-E .
|
||||||
|
.TP
|
||||||
|
.B \-3
|
||||||
|
Like
|
||||||
|
.BR \-e ,
|
||||||
|
except output only the nonoverlapping changes.
|
||||||
|
.SH SEE ALSO
|
||||||
|
cmp(1), comm(1), diff(1), ed(1), patch(1), sdiff(1).
|
||||||
|
.SH DIAGNOSTICS
|
||||||
|
An exit status of 0 means
|
||||||
|
.I diff3
|
||||||
|
was successful, 1 means some
|
||||||
|
conflicts were found, and 2 means trouble.
|
||||||
11
diffutils-2.8.1-badc.patch
Normal file
11
diffutils-2.8.1-badc.patch
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
--- diffutils-2.8.1/src/analyze.c.badc 2004-01-08 10:05:59.094598972 +0000
|
||||||
|
+++ diffutils-2.8.1/src/analyze.c 2004-01-08 10:06:22.294841900 +0000
|
||||||
|
@@ -983,7 +983,7 @@
|
||||||
|
changes = briefly_report (changes, cmp->file);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- if (changes | !no_diff_means_no_output)
|
||||||
|
+ if (changes || !no_diff_means_no_output)
|
||||||
|
{
|
||||||
|
/* Record info for starting up output,
|
||||||
|
to be used if and when we have some output to print. */
|
||||||
806
diffutils-2.8.4-i18n.patch
Normal file
806
diffutils-2.8.4-i18n.patch
Normal file
|
|
@ -0,0 +1,806 @@
|
||||||
|
--- diffutils-2.8.1/src/diff.c.i18n 2002-03-24 07:35:28.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/diff.c 2007-08-14 10:39:40.000000000 +0100
|
||||||
|
@@ -273,6 +273,13 @@
|
||||||
|
re_set_syntax (RE_SYNTAX_GREP | RE_NO_POSIX_BACKTRACKING);
|
||||||
|
excluded = new_exclude ();
|
||||||
|
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+ if (MB_CUR_MAX > 1)
|
||||||
|
+ lines_differ = lines_differ_multibyte;
|
||||||
|
+ else
|
||||||
|
+#endif
|
||||||
|
+ lines_differ = lines_differ_singlebyte;
|
||||||
|
+
|
||||||
|
/* Decode the options. */
|
||||||
|
|
||||||
|
while ((c = getopt_long (argc, argv, shortopts, longopts, 0)) != -1)
|
||||||
|
--- diffutils-2.8.1/src/diff.h.i18n 2002-03-11 21:24:42.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/diff.h 2007-08-14 10:41:21.000000000 +0100
|
||||||
|
@@ -25,6 +25,19 @@
|
||||||
|
|
||||||
|
#define TAB_WIDTH 8
|
||||||
|
|
||||||
|
+/* For platform which support the ISO C amendement 1 functionality we
|
||||||
|
+ support user defined character classes. */
|
||||||
|
+#if defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H
|
||||||
|
+/* Solaris 2.5 has a bug: <wchar.h> must be included before <wctype.h>. */
|
||||||
|
+# include <wchar.h>
|
||||||
|
+# include <wctype.h>
|
||||||
|
+# if defined (HAVE_MBRTOWC)
|
||||||
|
+# define HANDLE_MULTIBYTE 1
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#define TAB_WIDTH 8
|
||||||
|
+
|
||||||
|
/* What kind of changes a hunk contains. */
|
||||||
|
enum changes
|
||||||
|
{
|
||||||
|
@@ -349,7 +362,13 @@
|
||||||
|
extern char const pr_program[];
|
||||||
|
char *concat (char const *, char const *, char const *);
|
||||||
|
char *dir_file_pathname (char const *, char const *);
|
||||||
|
-bool lines_differ (char const *, char const *);
|
||||||
|
+
|
||||||
|
+bool (*lines_differ) (char const *, size_t, char const *, size_t);
|
||||||
|
+bool lines_differ_singlebyte (char const *, size_t, char const *, size_t);
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+bool lines_differ_multibyte (char const *, size_t, char const *, size_t);
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
lin translate_line_number (struct file_data const *, lin);
|
||||||
|
struct change *find_change (struct change *);
|
||||||
|
struct change *find_reverse_change (struct change *);
|
||||||
|
--- diffutils-2.8.1/src/io.c.i18n 2002-03-25 04:58:36.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/io.c 2007-08-14 10:40:05.000000000 +0100
|
||||||
|
@@ -25,6 +25,7 @@
|
||||||
|
#include <regex.h>
|
||||||
|
#include <setmode.h>
|
||||||
|
#include <xalloc.h>
|
||||||
|
+#include <assert.h>
|
||||||
|
|
||||||
|
/* Rotate an unsigned value to the left. */
|
||||||
|
#define ROL(v, n) ((v) << (n) | (v) >> (sizeof (v) * CHAR_BIT - (n)))
|
||||||
|
@@ -212,6 +213,28 @@
|
||||||
|
|
||||||
|
/* Split the file into lines, simultaneously computing the equivalence
|
||||||
|
class for each line. */
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+# define MBC2WC(P, END, MBLENGTH, WC, STATE, CONVFAIL) \
|
||||||
|
+do \
|
||||||
|
+{ \
|
||||||
|
+ mbstate_t state_bak = STATE; \
|
||||||
|
+ \
|
||||||
|
+ CONVFAIL = 0; \
|
||||||
|
+ MBLENGTH = mbrtowc (&WC, P, END - (char const *)P, &STATE); \
|
||||||
|
+ \
|
||||||
|
+ switch (MBLENGTH) \
|
||||||
|
+ { \
|
||||||
|
+ case (size_t)-2: \
|
||||||
|
+ case (size_t)-1: \
|
||||||
|
+ STATE = state_bak; \
|
||||||
|
+ ++CONVFAIL; \
|
||||||
|
+ /* Fall through. */ \
|
||||||
|
+ case 0: \
|
||||||
|
+ MBLENGTH = 1; \
|
||||||
|
+ } \
|
||||||
|
+} \
|
||||||
|
+while (0)
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
static void
|
||||||
|
find_and_hash_each_line (struct file_data *current)
|
||||||
|
@@ -238,12 +261,280 @@
|
||||||
|
bool same_length_diff_contents_compare_anyway =
|
||||||
|
diff_length_compare_anyway | ignore_case;
|
||||||
|
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+ wchar_t wc;
|
||||||
|
+ size_t mblength;
|
||||||
|
+ mbstate_t state;
|
||||||
|
+ int convfail;
|
||||||
|
+
|
||||||
|
+ memset (&state, '\0', sizeof (mbstate_t));
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
while ((char const *) p < suffix_begin)
|
||||||
|
{
|
||||||
|
char const *ip = (char const *) p;
|
||||||
|
|
||||||
|
h = 0;
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+ if (MB_CUR_MAX > 1)
|
||||||
|
+ {
|
||||||
|
+ wchar_t lo_wc;
|
||||||
|
+ char mbc[MB_LEN_MAX];
|
||||||
|
+ mbstate_t state_wc;
|
||||||
|
+
|
||||||
|
+ /* Hash this line until we find a newline. */
|
||||||
|
+ switch (ignore_white_space)
|
||||||
|
+ {
|
||||||
|
+ case IGNORE_ALL_SPACE:
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (*p == '\n')
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail);
|
||||||
|
+
|
||||||
|
+ if (convfail)
|
||||||
|
+ mbc[0] = *p++;
|
||||||
|
+ else if (!iswspace (wc))
|
||||||
|
+ {
|
||||||
|
+ bool flag = 0;
|
||||||
|
+
|
||||||
|
+ if (ignore_case)
|
||||||
|
+ {
|
||||||
|
+ lo_wc = towlower (wc);
|
||||||
|
+ if (lo_wc != wc)
|
||||||
|
+ {
|
||||||
|
+ flag = 1;
|
||||||
|
+
|
||||||
|
+ p += mblength;
|
||||||
|
+ memset (&state_wc, '\0', sizeof(mbstate_t));
|
||||||
|
+ mblength = wcrtomb (mbc, lo_wc, &state_wc);
|
||||||
|
+
|
||||||
|
+ assert (mblength != (size_t)-1 &&
|
||||||
|
+ mblength != (size_t)-2);
|
||||||
|
+
|
||||||
|
+ mblength = (mblength < 1) ? 1 : mblength;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (!flag)
|
||||||
|
+ {
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ mbc[i] = *p++;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ p += mblength;
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ h = HASH (h, mbc[i]);
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case IGNORE_SPACE_CHANGE:
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (*p == '\n')
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail);
|
||||||
|
+
|
||||||
|
+ if (!convfail && iswspace (wc))
|
||||||
|
+ {
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (*p == '\n')
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ goto hashing_done;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ p += mblength;
|
||||||
|
+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail);
|
||||||
|
+ if (convfail || (!convfail && !iswspace (wc)))
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ h = HASH (h, ' ');
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* WC is now the first non-space. */
|
||||||
|
+ if (convfail)
|
||||||
|
+ mbc[0] = *p++;
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ bool flag = 0;
|
||||||
|
+
|
||||||
|
+ if (ignore_case)
|
||||||
|
+ {
|
||||||
|
+ lo_wc = towlower (wc);
|
||||||
|
+ if (lo_wc != wc)
|
||||||
|
+ {
|
||||||
|
+ flag = 1;
|
||||||
|
+
|
||||||
|
+ p += mblength;
|
||||||
|
+ memset (&state_wc, '\0', sizeof(mbstate_t));
|
||||||
|
+ mblength = wcrtomb (mbc, lo_wc, &state_wc);
|
||||||
|
+
|
||||||
|
+ assert (mblength != (size_t)-1 &&
|
||||||
|
+ mblength != (size_t)-2);
|
||||||
|
+
|
||||||
|
+ mblength = (mblength < 1) ? 1 : mblength;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (!flag)
|
||||||
|
+ {
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ mbc[i] = *p++;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ h = HASH (h, mbc[i]);
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case IGNORE_TAB_EXPANSION:
|
||||||
|
+ {
|
||||||
|
+ size_t column = 0;
|
||||||
|
+
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (*p == '\n')
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail);
|
||||||
|
+
|
||||||
|
+ if (convfail)
|
||||||
|
+ {
|
||||||
|
+ h = HASH (h, *p++);
|
||||||
|
+ ++column;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ bool flag;
|
||||||
|
+
|
||||||
|
+ switch (wc)
|
||||||
|
+ {
|
||||||
|
+ case L'\b':
|
||||||
|
+ column -= 0 < column;
|
||||||
|
+ h = HASH (h, '\b');
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case L'\t':
|
||||||
|
+ {
|
||||||
|
+ int repetitions;
|
||||||
|
+
|
||||||
|
+ repetitions = TAB_WIDTH - column % TAB_WIDTH;
|
||||||
|
+ column += repetitions;
|
||||||
|
+ do
|
||||||
|
+ h = HASH (h, ' ');
|
||||||
|
+ while (--repetitions != 0);
|
||||||
|
+ ++p;
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case L'\r':
|
||||||
|
+ column = 0;
|
||||||
|
+ h = HASH (h, '\r');
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ default:
|
||||||
|
+ flag = 0;
|
||||||
|
+ column += wcwidth (wc);
|
||||||
|
+ if (ignore_case)
|
||||||
|
+ {
|
||||||
|
+ lo_wc = towlower (wc);
|
||||||
|
+ if (lo_wc != wc)
|
||||||
|
+ {
|
||||||
|
+ flag = 1;
|
||||||
|
+ p += mblength;
|
||||||
|
+ memset (&state_wc, '\0', sizeof(mbstate_t));
|
||||||
|
+ mblength = wcrtomb (mbc, lo_wc, &state_wc);
|
||||||
|
+
|
||||||
|
+ assert (mblength != (size_t)-1 &&
|
||||||
|
+ mblength != (size_t)-2);
|
||||||
|
+
|
||||||
|
+ mblength = (mblength < 1) ? 1 : mblength;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (!flag)
|
||||||
|
+ {
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ mbc[i] = *p++;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ h = HASH (h, mbc[i]);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ default:
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (*p == '\n')
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail);
|
||||||
|
+
|
||||||
|
+ if (convfail)
|
||||||
|
+ mbc[0] = *p++;
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ int flag = 0;
|
||||||
|
+
|
||||||
|
+ if (ignore_case)
|
||||||
|
+ {
|
||||||
|
+ lo_wc = towlower (wc);
|
||||||
|
+ if (lo_wc != wc)
|
||||||
|
+ {
|
||||||
|
+ flag = 1;
|
||||||
|
+ p += mblength;
|
||||||
|
+ memset (&state_wc, '\0', sizeof(mbstate_t));
|
||||||
|
+ mblength = wcrtomb (mbc, lo_wc, &state_wc);
|
||||||
|
+
|
||||||
|
+ assert (mblength != (size_t)-1 &&
|
||||||
|
+ mblength != (size_t)-2);
|
||||||
|
+
|
||||||
|
+ mblength = (mblength < 1) ? 1 : mblength;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (!flag)
|
||||||
|
+ {
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ mbc[i] = *p++;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < mblength; i++)
|
||||||
|
+ h = HASH (h, mbc[i]);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+#endif
|
||||||
|
/* Hash this line until we find a newline. */
|
||||||
|
if (ignore_case)
|
||||||
|
switch (ignore_white_space)
|
||||||
|
@@ -438,7 +729,7 @@
|
||||||
|
else if (!diff_length_compare_anyway)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
- if (! lines_differ (eqline, ip))
|
||||||
|
+ if (! lines_differ (eqline, eqs[i].length + 1, ip, length + 1))
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- diffutils-2.8.1/src/side.c.i18n 2002-02-07 18:17:04.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/side.c 2007-08-14 10:39:40.000000000 +0100
|
||||||
|
@@ -74,11 +74,72 @@
|
||||||
|
register unsigned int out_position = 0;
|
||||||
|
register char const *text_pointer = line[0];
|
||||||
|
register char const *text_limit = line[1];
|
||||||
|
+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H
|
||||||
|
+ unsigned char mbc[MB_LEN_MAX];
|
||||||
|
+ wchar_t wc;
|
||||||
|
+ mbstate_t state, state_bak;
|
||||||
|
+ size_t mbc_pos, mblength;
|
||||||
|
+ int mbc_loading_flag = 0;
|
||||||
|
+ int wc_width;
|
||||||
|
+
|
||||||
|
+ memset (&state, '\0', sizeof (mbstate_t));
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
while (text_pointer < text_limit)
|
||||||
|
{
|
||||||
|
register unsigned char c = *text_pointer++;
|
||||||
|
|
||||||
|
+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H
|
||||||
|
+ if (MB_CUR_MAX > 1 && mbc_loading_flag)
|
||||||
|
+ {
|
||||||
|
+ mbc_loading_flag = 0;
|
||||||
|
+ state_bak = state;
|
||||||
|
+ mbc[mbc_pos++] = c;
|
||||||
|
+
|
||||||
|
+process_mbc:
|
||||||
|
+ mblength = mbrtowc (&wc, mbc, mbc_pos, &state);
|
||||||
|
+
|
||||||
|
+ switch (mblength)
|
||||||
|
+ {
|
||||||
|
+ case (size_t)-2: /* Incomplete multibyte character. */
|
||||||
|
+ mbc_loading_flag = 1;
|
||||||
|
+ state = state_bak;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case (size_t)-1: /* Invalid as a multibyte character. */
|
||||||
|
+ if (in_position++ < out_bound)
|
||||||
|
+ {
|
||||||
|
+ out_position = in_position;
|
||||||
|
+ putc (mbc[0], out);
|
||||||
|
+ }
|
||||||
|
+ memmove (mbc, mbc + 1, --mbc_pos);
|
||||||
|
+ if (mbc_pos > 0)
|
||||||
|
+ {
|
||||||
|
+ mbc[mbc_pos] = '\0';
|
||||||
|
+ goto process_mbc;
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ default:
|
||||||
|
+ wc_width = wcwidth (wc);
|
||||||
|
+ if (wc_width < 1) /* Unprintable multibyte character. */
|
||||||
|
+ {
|
||||||
|
+ if (in_position <= out_bound)
|
||||||
|
+ fprintf (out, "%lc", (wint_t)wc);
|
||||||
|
+ }
|
||||||
|
+ else /* Printable multibyte character. */
|
||||||
|
+ {
|
||||||
|
+ in_position += wc_width;
|
||||||
|
+ if (in_position <= out_bound)
|
||||||
|
+ {
|
||||||
|
+ out_position = in_position;
|
||||||
|
+ fprintf (out, "%lc", (wint_t)wc);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+#endif
|
||||||
|
switch (c)
|
||||||
|
{
|
||||||
|
case '\t':
|
||||||
|
@@ -136,8 +197,39 @@
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
- if (! ISPRINT (c))
|
||||||
|
- goto control_char;
|
||||||
|
+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H
|
||||||
|
+ if (MB_CUR_MAX > 1)
|
||||||
|
+ {
|
||||||
|
+ memset (mbc, '\0', MB_LEN_MAX);
|
||||||
|
+ mbc_pos = 0;
|
||||||
|
+ mbc[mbc_pos++] = c;
|
||||||
|
+ state_bak = state;
|
||||||
|
+
|
||||||
|
+ mblength = mbrtowc (&wc, mbc, mbc_pos, &state);
|
||||||
|
+
|
||||||
|
+ /* The value of mblength is always less than 2 here. */
|
||||||
|
+ switch (mblength)
|
||||||
|
+ {
|
||||||
|
+ case (size_t)-2: /* Incomplete multibyte character. */
|
||||||
|
+ state = state_bak;
|
||||||
|
+ mbc_loading_flag = 1;
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ case (size_t)-1: /* Invalid as a multibyte character. */
|
||||||
|
+ state = state_bak;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ default:
|
||||||
|
+ if (! iswprint (wc))
|
||||||
|
+ goto control_char;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+#endif
|
||||||
|
+ {
|
||||||
|
+ if (! ISPRINT (c))
|
||||||
|
+ goto control_char;
|
||||||
|
+ }
|
||||||
|
/* falls through */
|
||||||
|
case ' ':
|
||||||
|
if (in_position++ < out_bound)
|
||||||
|
--- diffutils-2.8.1/src/util.c.i18n 2002-02-28 04:23:10.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/util.c 2007-08-14 10:42:19.000000000 +0100
|
||||||
|
@@ -312,7 +312,8 @@
|
||||||
|
Return nonzero if the lines differ. */
|
||||||
|
|
||||||
|
bool
|
||||||
|
-lines_differ (char const *s1, char const *s2)
|
||||||
|
+lines_differ_singlebyte (char const *s1, size_t s1len,
|
||||||
|
+ char const *s2, size_t s2len)
|
||||||
|
{
|
||||||
|
register unsigned char const *t1 = (unsigned char const *) s1;
|
||||||
|
register unsigned char const *t2 = (unsigned char const *) s2;
|
||||||
|
@@ -441,6 +442,294 @@
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+#ifdef HANDLE_MULTIBYTE
|
||||||
|
+# define MBC2WC(T, END, MBLENGTH, WC, STATE, CONVFAIL) \
|
||||||
|
+do \
|
||||||
|
+{ \
|
||||||
|
+ mbstate_t bak = STATE; \
|
||||||
|
+ \
|
||||||
|
+ CONVFAIL = 0; \
|
||||||
|
+ MBLENGTH = mbrtowc (&WC, T, END - T, &STATE); \
|
||||||
|
+ \
|
||||||
|
+ switch (MBLENGTH) \
|
||||||
|
+ { \
|
||||||
|
+ case (size_t)-2: \
|
||||||
|
+ case (size_t)-1: \
|
||||||
|
+ STATE = bak; \
|
||||||
|
+ ++CONVFAIL; \
|
||||||
|
+ /* Fall through. */ \
|
||||||
|
+ case 0: \
|
||||||
|
+ MBLENGTH = 1; \
|
||||||
|
+ } \
|
||||||
|
+} \
|
||||||
|
+while (0)
|
||||||
|
+
|
||||||
|
+bool
|
||||||
|
+lines_differ_multibyte (char const *s1, size_t s1len,
|
||||||
|
+ char const *s2, size_t s2len)
|
||||||
|
+{
|
||||||
|
+ unsigned char const *end1, *end2;
|
||||||
|
+ unsigned char c1, c2;
|
||||||
|
+ wchar_t wc1, wc2, wc1_bak, wc2_bak;
|
||||||
|
+ size_t mblen1, mblen2;
|
||||||
|
+ mbstate_t state1, state2, state1_bak, state2_bak;
|
||||||
|
+ int convfail1, convfail2, convfail1_bak, convfail2_bak;
|
||||||
|
+
|
||||||
|
+ unsigned char const *t1 = (unsigned char const *) s1;
|
||||||
|
+ unsigned char const *t2 = (unsigned char const *) s2;
|
||||||
|
+ unsigned char const *t1_bak, *t2_bak;
|
||||||
|
+ size_t column = 0;
|
||||||
|
+
|
||||||
|
+ if (ignore_white_space == IGNORE_NO_WHITE_SPACE && !ignore_case)
|
||||||
|
+ {
|
||||||
|
+ while (*t1 != '\n')
|
||||||
|
+ if (*t1++ != * t2++)
|
||||||
|
+ return 1;
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ memset (&state1, '\0', sizeof (mbstate_t));
|
||||||
|
+ memset (&state2, '\0', sizeof (mbstate_t));
|
||||||
|
+
|
||||||
|
+ end1 = s1 + s1len;
|
||||||
|
+ end2 = s2 + s2len;
|
||||||
|
+
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ c1 = *t1;
|
||||||
|
+ c2 = *t2;
|
||||||
|
+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1);
|
||||||
|
+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2);
|
||||||
|
+
|
||||||
|
+ /* Test for exact char equality first, since it's a common case. */
|
||||||
|
+ if (convfail1 ^ convfail2)
|
||||||
|
+ break;
|
||||||
|
+ else if (convfail1 && convfail2 && c1 != c2)
|
||||||
|
+ break;
|
||||||
|
+ else if (!convfail1 && !convfail2 && wc1 != wc2)
|
||||||
|
+ {
|
||||||
|
+ switch (ignore_white_space)
|
||||||
|
+ {
|
||||||
|
+ case IGNORE_ALL_SPACE:
|
||||||
|
+ /* For -w, just skip past any white space. */
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (convfail1)
|
||||||
|
+ break;
|
||||||
|
+ else if (wc1 == L'\n' || !iswspace (wc1))
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ c1 = *t1;
|
||||||
|
+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (convfail2)
|
||||||
|
+ break;
|
||||||
|
+ else if (wc2 == L'\n' || !iswspace (wc2))
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ c2 = *t2;
|
||||||
|
+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2);
|
||||||
|
+ }
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case IGNORE_SPACE_CHANGE:
|
||||||
|
+ /* For -b, advance past any sequence of white space in
|
||||||
|
+ line 1 and consider it just one space, or nothing at
|
||||||
|
+ all if it is at the end of the line. */
|
||||||
|
+ if (wc1 != L'\n' && iswspace (wc1))
|
||||||
|
+ {
|
||||||
|
+ size_t mblen_bak;
|
||||||
|
+ mbstate_t state_bak;
|
||||||
|
+
|
||||||
|
+ do
|
||||||
|
+ {
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ mblen_bak = mblen1;
|
||||||
|
+ state_bak = state1;
|
||||||
|
+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1);
|
||||||
|
+ }
|
||||||
|
+ while (!convfail1 && (wc1 != L'\n' && iswspace (wc1)));
|
||||||
|
+
|
||||||
|
+ state1 = state_bak;
|
||||||
|
+ mblen1 = mblen_bak;
|
||||||
|
+ t1 -= mblen1;
|
||||||
|
+ convfail1 = 0;
|
||||||
|
+ wc1 = L' ';
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Likewise for line 2. */
|
||||||
|
+ if (wc2 != L'\n' && iswspace (wc2))
|
||||||
|
+ {
|
||||||
|
+ size_t mblen_bak;
|
||||||
|
+ mbstate_t state_bak;
|
||||||
|
+
|
||||||
|
+ do
|
||||||
|
+ {
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ mblen_bak = mblen2;
|
||||||
|
+ state_bak = state2;
|
||||||
|
+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2);
|
||||||
|
+ }
|
||||||
|
+ while (!convfail2 && (wc2 != L'\n' && iswspace (wc2)));
|
||||||
|
+
|
||||||
|
+ state2 = state_bak;
|
||||||
|
+ mblen2 = mblen_bak;
|
||||||
|
+ t2 -= mblen2;
|
||||||
|
+ convfail2 = 0;
|
||||||
|
+ wc2 = L' ';
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (wc1 != wc2)
|
||||||
|
+ {
|
||||||
|
+ if (wc2 == L' ' && wc1 != L'\n' &&
|
||||||
|
+ t1 > (unsigned char const *)s1 &&
|
||||||
|
+ !convfail1_bak && iswspace (wc1_bak))
|
||||||
|
+ {
|
||||||
|
+ t1 = t1_bak;
|
||||||
|
+ wc1 = wc1_bak;
|
||||||
|
+ state1 = state1_bak;
|
||||||
|
+ convfail1 = convfail1_bak;
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+ if (wc1 == L' ' && wc2 != L'\n'
|
||||||
|
+ && t2 > (unsigned char const *)s2
|
||||||
|
+ && !convfail2_bak && iswspace (wc2_bak))
|
||||||
|
+ {
|
||||||
|
+ t2 = t2_bak;
|
||||||
|
+ wc2 = wc2_bak;
|
||||||
|
+ state2 = state2_bak;
|
||||||
|
+ convfail2 = convfail2_bak;
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ t1_bak = t1; t2_bak = t2;
|
||||||
|
+ wc1_bak = wc1; wc2_bak = wc2;
|
||||||
|
+ state1_bak = state1; state2_bak = state2;
|
||||||
|
+ convfail1_bak = convfail1; convfail2_bak = convfail2;
|
||||||
|
+
|
||||||
|
+ if (wc1 == L'\n')
|
||||||
|
+ wc1 = L' ';
|
||||||
|
+ else
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+
|
||||||
|
+ if (wc2 == L'\n')
|
||||||
|
+ wc2 = L' ';
|
||||||
|
+ else
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case IGNORE_TAB_EXPANSION:
|
||||||
|
+ if ((wc1 == L' ' && wc2 == L'\t')
|
||||||
|
+ || (wc1 == L'\t' && wc2 == L' '))
|
||||||
|
+ {
|
||||||
|
+ size_t column2 = column;
|
||||||
|
+
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (convfail1)
|
||||||
|
+ {
|
||||||
|
+ ++t1;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ else if (wc1 == L' ')
|
||||||
|
+ column++;
|
||||||
|
+ else if (wc1 == L'\t')
|
||||||
|
+ column += TAB_WIDTH - column % TAB_WIDTH;
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ c1 = *t1;
|
||||||
|
+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ while (1)
|
||||||
|
+ {
|
||||||
|
+ if (convfail2)
|
||||||
|
+ {
|
||||||
|
+ ++t2;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ else if (wc2 == L' ')
|
||||||
|
+ column2++;
|
||||||
|
+ else if (wc2 == L'\t')
|
||||||
|
+ column2 += TAB_WIDTH - column2 % TAB_WIDTH;
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ c2 = *t2;
|
||||||
|
+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (column != column2)
|
||||||
|
+ return 1;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case IGNORE_NO_WHITE_SPACE:
|
||||||
|
+ t1 += mblen1;
|
||||||
|
+ t2 += mblen2;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Lowercase all letters if -i is specified. */
|
||||||
|
+ if (ignore_case)
|
||||||
|
+ {
|
||||||
|
+ if (!convfail1)
|
||||||
|
+ wc1 = towlower (wc1);
|
||||||
|
+ if (!convfail2)
|
||||||
|
+ wc2 = towlower (wc2);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (convfail1 ^ convfail2)
|
||||||
|
+ break;
|
||||||
|
+ else if (convfail1 && convfail2 && c1 != c2)
|
||||||
|
+ break;
|
||||||
|
+ else if (!convfail1 && !convfail2 && wc1 != wc2)
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ t1_bak = t1; t2_bak = t2;
|
||||||
|
+ wc1_bak = wc1; wc2_bak = wc2;
|
||||||
|
+ state1_bak = state1; state2_bak = state2;
|
||||||
|
+ convfail1_bak = convfail1; convfail2_bak = convfail2;
|
||||||
|
+
|
||||||
|
+ t1 += mblen1; t2 += mblen2;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (!convfail1 && wc1 == L'\n')
|
||||||
|
+ return 0;
|
||||||
|
+
|
||||||
|
+ column += convfail1 ? 1 :
|
||||||
|
+ (wc1 == L'\t') ? TAB_WIDTH - column % TAB_WIDTH : wcwidth (wc1);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
/* Find the consecutive changes at the start of the script START.
|
||||||
|
Return the last link before the first gap. */
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
From d9083a4cc638cf9c7dfc3cc534a7c6b4debf50ab Mon Sep 17 00:00:00 2001
|
|
||||||
From: Bruno Haible <bruno@clisp.org>
|
|
||||||
Date: Thu, 10 Apr 2025 16:42:14 +0200
|
|
||||||
Subject: strcasecmp: Support cross-compilation.
|
|
||||||
|
|
||||||
Reported by Rudi Heitbaum <rudi@heitbaum.com> in
|
|
||||||
<https://lists.gnu.org/archive/html/bug-gnulib/2025-04/msg00055.html>.
|
|
||||||
|
|
||||||
diff --git a/m4/strcasecmp.m4 b/m4/strcasecmp.m4
|
|
||||||
index e40ee5d..eb4345d 100644
|
|
||||||
--- a/m4/strcasecmp.m4
|
|
||||||
+++ b/m4/strcasecmp.m4
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
# strcasecmp.m4
|
|
||||||
-# serial 2
|
|
||||||
+# serial 3
|
|
||||||
dnl Copyright (C) 2002-2025 Free Software Foundation, Inc.
|
|
||||||
dnl This file is free software; the Free Software Foundation
|
|
||||||
dnl gives unlimited permission to copy and/or distribute it,
|
|
||||||
@@ -57,7 +57,7 @@ int main ()
|
|
||||||
gl_cv_func_strcasecmp_works=no
|
|
||||||
fi
|
|
||||||
],
|
|
||||||
- [])
|
|
||||||
+ [:])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
|
|
||||||
--
|
|
||||||
cgit v1.1
|
|
||||||
|
|
@ -1,65 +0,0 @@
|
||||||
commit 80053ab7b57c1f0825deb4a22018dacfa62d7272
|
|
||||||
Author: Paul Eggert <eggert@cs.ucla.edu>
|
|
||||||
Date: Wed Apr 23 11:17:53 2025 -0700
|
|
||||||
|
|
||||||
sdiff: continue → break
|
|
||||||
|
|
||||||
* src/sdiff.c (edit): Don’t use ‘continue’ when a simple
|
|
||||||
break from the switch will do.
|
|
||||||
|
|
||||||
diff --git a/src/sdiff.c b/src/sdiff.c
|
|
||||||
index 7734a82..5b1b162 100644
|
|
||||||
--- a/src/sdiff.c
|
|
||||||
+++ b/src/sdiff.c
|
|
||||||
@@ -872,13 +872,13 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
{
|
|
||||||
case '1': case '2': case 'l': case 'r':
|
|
||||||
case 's': case 'v': case 'q':
|
|
||||||
- if (skip_white () != '\n')
|
|
||||||
+ if (skip_white () == '\n')
|
|
||||||
+ gotcmd = true;
|
|
||||||
+ else
|
|
||||||
{
|
|
||||||
give_help ();
|
|
||||||
flush_line ();
|
|
||||||
- continue;
|
|
||||||
}
|
|
||||||
- gotcmd = true;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'e':
|
|
||||||
@@ -886,13 +886,13 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
switch (cmd1)
|
|
||||||
{
|
|
||||||
case '1': case '2': case 'b': case 'd': case 'l': case 'r':
|
|
||||||
- if (skip_white () != '\n')
|
|
||||||
+ if (skip_white () == '\n')
|
|
||||||
+ gotcmd = true;
|
|
||||||
+ else
|
|
||||||
{
|
|
||||||
give_help ();
|
|
||||||
flush_line ();
|
|
||||||
- continue;
|
|
||||||
}
|
|
||||||
- gotcmd = true;
|
|
||||||
break;
|
|
||||||
case '\n':
|
|
||||||
gotcmd = true;
|
|
||||||
@@ -900,7 +900,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
default:
|
|
||||||
give_help ();
|
|
||||||
flush_line ();
|
|
||||||
- continue;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
@@ -917,7 +917,7 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen,
|
|
||||||
FALLTHROUGH;
|
|
||||||
case '\n':
|
|
||||||
give_help ();
|
|
||||||
- continue;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEEFV0/xQDINEhtHupnf9n8ywAL7u4FAmf14TEACgkQf9n8ywAL
|
|
||||||
7u5tEg//YI75CvWhml5WPNESJWoNVcb+ak8K5g29sHXE5RW9ZuzvEjHAy2IGpkmG
|
|
||||||
QbSC2GA3s1BhjIvrm567Xvnz5Rdn4lultZygznL/+oD4PMoantux4dF6P4KcO7jG
|
|
||||||
KNPWBF0+/gue9KeJIx4tIGXjQ7g/aAxN/U7UukD5NELrF/4KAsFSWC0PA++taGyd
|
|
||||||
R+kZNl3IX3rci0m4vMXCZX+h1td39NinLuYueOqniZhN84+kjfKfLe+EOPmpdSNr
|
|
||||||
md25Ez5vcZ7p1meHHFIRhW1xnyF4FEC5H1ePv56wMlKShtflS2/hjmQadlo+9CQn
|
|
||||||
fnotq12Yi2BEDwn/wlB9t0J4wgGVbvJM5Ie8ggK74ys77JsXbAtaTeJvCYKI/3bF
|
|
||||||
D2Xt2gI2+Xdfm7zr9xXg4ygf/AqJ0Dc1Cx0hNpgV4BRgMUjKnyp1VgE7bDZn6R4w
|
|
||||||
W2YRXMsKJQp8NpAk5+XI5El3EYoMcPuI6OQs+b+e98wcGgeeOafWjWrUliIUDln6
|
|
||||||
iTXtOBFebV0JtdSWdzNPrxT0+WbmdYSfP7qrqIgMrPHbp5cN7XjVPu6nky07N2RE
|
|
||||||
f4Q2Ny8KyCul8AskCNimYzGU0rsN1qQtDRSx2CR5ABYztwc/WY2KgXL9aGZ+eIfa
|
|
||||||
YRIpzush1GB5Bu50huAT2VCCqrk6VCg7v1vLfr3V/eszEUVhPZg=
|
|
||||||
=vkFD
|
|
||||||
-----END PGP SIGNATURE-----
|
|
||||||
20
diffutils-cmp-s-empty.patch
Normal file
20
diffutils-cmp-s-empty.patch
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
diff -up diffutils-2.8.1/src/cmp.c.cmp-s-empty diffutils-2.8.1/src/cmp.c
|
||||||
|
--- diffutils-2.8.1/src/cmp.c.cmp-s-empty 2002-04-05 21:37:31.000000000 +0100
|
||||||
|
+++ diffutils-2.8.1/src/cmp.c 2010-06-25 14:56:08.464802321 +0100
|
||||||
|
@@ -316,12 +316,15 @@ main (int argc, char **argv)
|
||||||
|
|
||||||
|
/* If only a return code is needed,
|
||||||
|
and if both input descriptors are associated with plain files,
|
||||||
|
+ and if both files are larger than 0 bytes (procfs files are always 0),
|
||||||
|
conclude that the files differ if they have different sizes
|
||||||
|
and if more bytes will be compared than are in the smaller file. */
|
||||||
|
|
||||||
|
if (comparison_type == type_status
|
||||||
|
&& S_ISREG (stat_buf[0].st_mode)
|
||||||
|
- && S_ISREG (stat_buf[1].st_mode))
|
||||||
|
+ && S_ISREG (stat_buf[1].st_mode)
|
||||||
|
+ && stat_buf[0].st_size > 0
|
||||||
|
+ && stat_buf[1].st_size > 0)
|
||||||
|
{
|
||||||
|
off_t s0 = stat_buf[0].st_size - file_position (0);
|
||||||
|
off_t s1 = stat_buf[1].st_size - file_position (1);
|
||||||
12
diffutils-sdiff-E.patch
Normal file
12
diffutils-sdiff-E.patch
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
diff -up diffutils-2.8.1/src/sdiff.c.sdiff-E diffutils-2.8.1/src/sdiff.c
|
||||||
|
--- diffutils-2.8.1/src/sdiff.c.sdiff-E 2009-02-13 17:00:38.000000000 +0000
|
||||||
|
+++ diffutils-2.8.1/src/sdiff.c 2009-02-13 17:31:08.000000000 +0000
|
||||||
|
@@ -464,7 +464,7 @@ main (int argc, char *argv[])
|
||||||
|
diffarg (DEFAULT_DIFF_PROGRAM);
|
||||||
|
|
||||||
|
/* parse command line args */
|
||||||
|
- while ((opt = getopt_long (argc, argv, "abBdHiI:lo:stvw:W", longopts, 0))
|
||||||
|
+ while ((opt = getopt_long (argc, argv, "abBdEHiI:lo:stvw:W", longopts, 0))
|
||||||
|
!= -1)
|
||||||
|
{
|
||||||
|
switch (opt)
|
||||||
12
diffutils-sdiff.patch
Normal file
12
diffutils-sdiff.patch
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
--- diffutils-2.8.1/src/sdiff.c.sdiff 2005-04-06 14:59:26.000000000 +0100
|
||||||
|
+++ diffutils-2.8.1/src/sdiff.c 2005-04-06 15:02:36.000000000 +0100
|
||||||
|
@@ -724,7 +724,8 @@
|
||||||
|
if (! interact_ok)
|
||||||
|
exiterr ();
|
||||||
|
|
||||||
|
- ck_editor_status (werrno, wstatus);
|
||||||
|
+ if (!WIFEXITED(wstatus))
|
||||||
|
+ ck_editor_status (werrno, wstatus);
|
||||||
|
untrapsig (0);
|
||||||
|
checksigs ();
|
||||||
|
exit (WEXITSTATUS (wstatus));
|
||||||
314
diffutils.spec
314
diffutils.spec
|
|
@ -1,24 +1,23 @@
|
||||||
Summary: GNU collection of diff utilities
|
Summary: A GNU collection of diff utilities
|
||||||
Name: diffutils
|
Name: diffutils
|
||||||
Version: 3.12
|
Version: 2.8.1
|
||||||
Release: 3%{?dist}
|
Release: 26%{?dist}
|
||||||
URL: https://www.gnu.org/software/diffutils/diffutils.html
|
Group: Applications/Text
|
||||||
Source: https://ftp.gnu.org/gnu/diffutils/diffutils-%{version}.tar.xz
|
URL: http://www.gnu.org/software/diffutils/diffutils.html
|
||||||
# upstream fixes
|
Source: ftp://ftp.gnu.org/gnu/diffutils/diffutils-%{version}.tar.gz
|
||||||
# cross compile build of 3.12 diffutils fails
|
Source1: cmp.1
|
||||||
Patch: diffutils-3.12-cross-compiler-build-fail.patch
|
Source2: diff.1
|
||||||
# sdiff: continue → break
|
Source3: diff3.1
|
||||||
Patch: diffutils-3.12-sdiff-continue-break.patch
|
Source4: sdiff.1
|
||||||
# sdiff: pacify gcc -flto -Wmaybe-uninitialized
|
Patch0: diffutils-2.8.4-i18n.patch
|
||||||
Patch: 0001-sdiff-pacify-gcc-flto-Wmaybe-uninitialized.patch
|
Patch1: diffutils-2.8.1-badc.patch
|
||||||
# sdiff: port back to C17
|
Patch2: diffutils-sdiff.patch
|
||||||
Patch: 0001-sdiff-port-back-to-C17.patch
|
Patch3: diffutils-sdiff-E.patch
|
||||||
License: GPL-3.0-or-later
|
Patch4: diffutils-cmp-s-empty.patch
|
||||||
Provides: bundled(gnulib)
|
License: GPLv2+
|
||||||
BuildRequires: gcc
|
Requires(post): /sbin/install-info
|
||||||
BuildRequires: help2man
|
Requires(preun): /sbin/install-info
|
||||||
BuildRequires: autoconf, automake, texinfo
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildRequires: make
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Diffutils includes four utilities: diff, cmp, diff3 and sdiff. Diff
|
Diffutils includes four utilities: diff, cmp, diff3 and sdiff. Diff
|
||||||
|
|
@ -34,266 +33,59 @@ to merge two files interactively.
|
||||||
Install diffutils if you need to compare text files.
|
Install diffutils if you need to compare text files.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1
|
%setup -q
|
||||||
|
%patch0 -p1 -b .i18n
|
||||||
# Run autoreconf for aarch64 support (bug #925256).
|
%patch1 -p1 -b .badc
|
||||||
autoreconf
|
%patch2 -p1 -b .sdiff
|
||||||
|
%patch3 -p1 -b .sdiff-E
|
||||||
|
%patch4 -p1 -b .cmp-s-empty
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure
|
%configure
|
||||||
make PR_PROGRAM=%{_bindir}/pr
|
make PR_PROGRAM=%{_bindir}/pr
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
make DESTDIR=$RPM_BUILD_ROOT install
|
||||||
|
|
||||||
|
( cd $RPM_BUILD_ROOT
|
||||||
|
gzip -9nf .%{_infodir}/diff*
|
||||||
|
mkdir -p .%{_mandir}/man1
|
||||||
|
for manpage in %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4}
|
||||||
|
do
|
||||||
|
install -m 0644 ${manpage} .%{_mandir}/man1
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||||
%find_lang %{name}
|
%find_lang %{name}
|
||||||
|
|
||||||
%check
|
%post
|
||||||
# Disable update-copyright gnulib test (bug #1239428).
|
if [ -f %{_infodir}/diff.info.gz ]; then
|
||||||
>gnulib-tests/test-update-copyright.sh
|
/sbin/install-info %{_infodir}/diff.info.gz %{_infodir}/dir --entry="* diff: (diff). The GNU diff."
|
||||||
make check
|
fi
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%preun
|
||||||
|
if [ $1 = 0 ]; then
|
||||||
|
/sbin/install-info --delete %{_infodir}/diff.info.gz %{_infodir}/dir --entry="* diff: (diff). The GNU diff."
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
|
%defattr(-,root,root)
|
||||||
%doc NEWS README
|
%doc NEWS README
|
||||||
%license COPYING
|
|
||||||
%{_bindir}/*
|
%{_bindir}/*
|
||||||
%{_mandir}/*/*
|
%{_mandir}/*/*
|
||||||
%{_infodir}/diffutils.info*
|
%{_infodir}/diff.info*gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.12-3
|
* Fri Jun 25 2010 Tim Waugh <twaugh@redhat.com> 2.8.1-26
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon May 05 2025 Than Ngo <than@redhat.com> - 3.12-2
|
|
||||||
- Upstream patches
|
|
||||||
* cross compile build of 3.12 diffutils fails
|
|
||||||
* sdiff: continue → break
|
|
||||||
* sdiff: pacify gcc -flto -Wmaybe-uninitialized
|
|
||||||
* sdiff: port back to C17
|
|
||||||
|
|
||||||
* Fri Apr 11 2025 Than Ngo <than@redhat.com> - 3.12-1
|
|
||||||
- Fixed rhbz#2358545, Update to 3.12
|
|
||||||
|
|
||||||
* Thu Mar 27 2025 Than Ngo <than@redhat.com> - 3.11-3
|
|
||||||
- diff does not show a unified diff when one of the file is empty
|
|
||||||
|
|
||||||
* Thu Mar 27 2025 Than Ngo <than@redhat.com> - 3.11-2
|
|
||||||
- Backported upstream patch, Fixed allocation typo leading to crash
|
|
||||||
|
|
||||||
* Thu Mar 27 2025 Than Ngo <than@redhat.com> - 3.11-1
|
|
||||||
- Fixed rhbz#2343469, Update to 3.11
|
|
||||||
|
|
||||||
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.10-9
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jul 30 2024 Than Ngo <than@redhat.com> - 3.10-8
|
|
||||||
- refresh patch for 'cmp -s'
|
|
||||||
|
|
||||||
* Tue Jul 23 2024 Than Ngo <than@redhat.com> - 3.10-7
|
|
||||||
- fix a regression, 'cmp -s' returns 1 even if files are identical
|
|
||||||
|
|
||||||
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.10-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.10-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.10-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.10-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 05 2023 Than Ngo <than@redhat.com> - 3.10-2
|
|
||||||
- Fix output of "diff -l -y" for non-ASCII input files
|
|
||||||
|
|
||||||
* Thu Jun 29 2023 Than Ngo <than@redhat.com> - 3.10-1
|
|
||||||
- Fix bz#2208831, update to 3.10
|
|
||||||
- Fix bz#2196671, diff -D no longer fails to output #ifndef lines introduced in 3.9
|
|
||||||
|
|
||||||
* Tue Mar 28 2023 Than Ngo <than@redhat.com> - 3.9-4
|
|
||||||
- Fix deprecated patch rpm marco
|
|
||||||
|
|
||||||
* Tue Feb 21 2023 Than Ngo <than@redhat.com> - 3.9-3
|
|
||||||
- migrated to SPDX license
|
|
||||||
|
|
||||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.9-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jan 16 2023 Tim Waugh <twaugh@redhat.com> - 3.9-1
|
|
||||||
- 3.9 (bug #2161117).
|
|
||||||
|
|
||||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.8-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.8-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Aug 2 2021 Tim Waugh <twaugh@redhat.com> - 3.8-1
|
|
||||||
- 3.8.
|
|
||||||
|
|
||||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-10
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Apr 12 2021 Tim Waugh <twaugh@redhat.com> - 3.7-9
|
|
||||||
- Handle SIGSTKSZ no longer being a constant (bug #1943016).
|
|
||||||
|
|
||||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Oct 8 2020 Tim Waugh <twaugh@redhat.com> - 3.7-7
|
|
||||||
- Fix from gnulib upstream, commit 175e0bc (bug #1863423).
|
|
||||||
|
|
||||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-6
|
|
||||||
- Second attempt - Rebuilt for
|
|
||||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jan 07 2019 Than Ngo <than@redhat.com> - 3.7-1
|
|
||||||
- 3.7
|
|
||||||
|
|
||||||
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon May 22 2017 Tim Waugh <twaugh@redhat.com> - 3.6-1
|
|
||||||
- 3.6 (bug #1453019).
|
|
||||||
|
|
||||||
* Tue Feb 21 2017 Than Ngo <than@redhat.com> - 3.5-3
|
|
||||||
- backport to fix FTBFs with GCC 7
|
|
||||||
|
|
||||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Sep 21 2016 Tim Waugh <twaugh@redhat.com> - 3.5-1
|
|
||||||
- 3.5 (bug #1365325).
|
|
||||||
|
|
||||||
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.3-13
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jul 6 2015 Tim Waugh <twaugh@redhat.com> - 3.3-12
|
|
||||||
- Disable update-copyright gnulib test (bug #1239428).
|
|
||||||
|
|
||||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3-11
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Feb 21 2015 Till Maas <opensource@till.name> - 3.3-10
|
|
||||||
- Rebuilt for Fedora 23 Change
|
|
||||||
https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
|
|
||||||
|
|
||||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3-9
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 11 2014 Tom Callaway <spot@fedoraproject.org> - 3.3-8
|
|
||||||
- fix license handling
|
|
||||||
|
|
||||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3-7
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Mar 27 2014 Tim Waugh <twaugh@redhat.com> 3.3-6
|
|
||||||
- Fix --help output and man page (bug #1079076).
|
|
||||||
|
|
||||||
* Wed Dec 4 2013 Tim Waugh <twaugh@redhat.com> 3.3-5
|
|
||||||
- Applied upstream gnulib patch to avoid -Wformat-security warning
|
|
||||||
(bug #1037038).
|
|
||||||
|
|
||||||
* Wed Oct 23 2013 Tim Waugh <twaugh@redhat.com> 3.3-4
|
|
||||||
- Fixed multibyte handling logic for diff -Z (bug #1012075).
|
|
||||||
|
|
||||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Apr 29 2013 Tim Waugh <twaugh@redhat.com> 3.3-2
|
|
||||||
- Run autoreconf for aarch64 support (bug #925256).
|
|
||||||
|
|
||||||
* Tue Mar 26 2013 Tim Waugh <twaugh@redhat.com> 3.3-1
|
|
||||||
- 3.3 (bug #927560).
|
|
||||||
|
|
||||||
* Fri Feb 22 2013 Tim Waugh <twaugh@redhat.com> 3.2-13
|
|
||||||
- Fixed i18n handling of 'diff -E' (bug #914666).
|
|
||||||
|
|
||||||
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2-12
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Oct 26 2012 Tim Waugh <twaugh@redhat.com> 3.2-11
|
|
||||||
- Ported i18n patch and reinstated it (bug #870460).
|
|
||||||
|
|
||||||
* Wed Sep 19 2012 Tim Waugh <twaugh@redhat.com> 3.2-10
|
|
||||||
- Fixed license as current source says GPLv3+.
|
|
||||||
|
|
||||||
* Mon Jul 23 2012 Tim Waugh <twaugh@redhat.com> 3.2-9
|
|
||||||
- Fixed build failure.
|
|
||||||
|
|
||||||
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon May 21 2012 Tim Waugh <twaugh@redhat.com> 3.2-7
|
|
||||||
- Provides bundled(gnulib) (bug #821751).
|
|
||||||
|
|
||||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Dec 8 2011 Tim Waugh <twaugh@redhat.com> 3.2-5
|
|
||||||
- Fix bug #747969 again.
|
|
||||||
|
|
||||||
* Tue Nov 29 2011 Tim Waugh <twaugh@redhat.com> 3.2-4
|
|
||||||
- Real fix for bug #747969: the diffutils info file changed name in
|
|
||||||
3.1. Updated the scriptlets to install/remove the correct filename
|
|
||||||
from the info directory.
|
|
||||||
|
|
||||||
* Fri Nov 25 2011 Tim Waugh <twaugh@redhat.com> 3.2-3
|
|
||||||
- Fixed up reference to info page in man pages (bug #747969).
|
|
||||||
|
|
||||||
* Fri Nov 25 2011 Tim Waugh <twaugh@redhat.com> 3.2-2
|
|
||||||
- Applied upstream gnulib fix for float test on ppc, as well as
|
|
||||||
correction for LDBL_MANT_DIG definition (bug #733536).
|
|
||||||
|
|
||||||
* Fri Sep 2 2011 Tim Waugh <twaugh@redhat.com> 3.2-1
|
|
||||||
- 3.2.
|
|
||||||
|
|
||||||
* Thu Aug 11 2011 Tim Waugh <twaugh@redhat.com> 3.1-1
|
|
||||||
- 3.1.
|
|
||||||
|
|
||||||
* Wed Apr 13 2011 Tim Waugh <twaugh@redhat.com> 3.0-1
|
|
||||||
- 3.0 (bug #566482).
|
|
||||||
- The i18n patch is dropped for the time being.
|
|
||||||
|
|
||||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.8.1-30
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jun 25 2010 Tim Waugh <twaugh@redhat.com> 2.8.1-29
|
|
||||||
- For 'cmp -s', compare file sizes only if both non-zero (bug #563618).
|
- For 'cmp -s', compare file sizes only if both non-zero (bug #563618).
|
||||||
|
|
||||||
* Wed Apr 21 2010 Tim Waugh <twaugh@redhat.com> - 2.8.1-28
|
|
||||||
- Build requires help2man (bug #577325). Fixes empty diff man page.
|
|
||||||
|
|
||||||
* Wed Mar 3 2010 Tim Waugh <twaugh@redhat.com> - 2.8.1-27
|
|
||||||
- Added comments for all patches.
|
|
||||||
|
|
||||||
* Wed Mar 3 2010 Tim Waugh <twaugh@redhat.com> - 2.8.1-26
|
|
||||||
- Use upstream man pages.
|
|
||||||
- Ship COPYING file.
|
|
||||||
|
|
||||||
* Tue Aug 11 2009 Tim Waugh <twaugh@redhat.com> 2.8.1-25
|
* Tue Aug 11 2009 Tim Waugh <twaugh@redhat.com> 2.8.1-25
|
||||||
- Only try to install the info file if it exists so that package
|
- Only try to install the info file if it exists so that package
|
||||||
installation does not fail with --excludedocs (bug #515919).
|
installation does not fail with --excludedocs (bug #515919).
|
||||||
|
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
summary: Basic smoke test
|
|
||||||
discover:
|
|
||||||
how: fmf
|
|
||||||
execute:
|
|
||||||
how: tmt
|
|
||||||
198
sdiff.1
Normal file
198
sdiff.1
Normal file
|
|
@ -0,0 +1,198 @@
|
||||||
|
.TH SDIFF 1 "22sep1993" "GNU Tools" "GNU Tools"
|
||||||
|
.SH NAME
|
||||||
|
sdiff \- find differences between two files and merge interactively
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.B sdiff
|
||||||
|
.B -o
|
||||||
|
outfile [options] from-file to-file
|
||||||
|
.SH DESCRIPTION
|
||||||
|
The
|
||||||
|
.I sdiff
|
||||||
|
command merges two files and interactively outputs the
|
||||||
|
results to
|
||||||
|
.IR outfile .
|
||||||
|
|
||||||
|
If
|
||||||
|
.I from-file
|
||||||
|
is a directory and
|
||||||
|
.I to-file
|
||||||
|
is not,
|
||||||
|
.I sdiff
|
||||||
|
compares the file in
|
||||||
|
.I from-file
|
||||||
|
whose file name is that of
|
||||||
|
.IR to-file ,
|
||||||
|
and vice versa.
|
||||||
|
.I from-file
|
||||||
|
and
|
||||||
|
.I to-file
|
||||||
|
may not both be
|
||||||
|
directories.
|
||||||
|
|
||||||
|
.I sdiff
|
||||||
|
options begin with
|
||||||
|
.BR \- ,
|
||||||
|
so normally
|
||||||
|
.I from-file
|
||||||
|
and
|
||||||
|
.I to-file
|
||||||
|
may not begin with
|
||||||
|
.BR \- .
|
||||||
|
However,
|
||||||
|
.B \-\-
|
||||||
|
as an
|
||||||
|
argument by itself treats the remaining arguments as file names even if
|
||||||
|
they begin with
|
||||||
|
.BR \- .
|
||||||
|
You may not use
|
||||||
|
.B \-
|
||||||
|
as an input file.
|
||||||
|
|
||||||
|
.I sdiff
|
||||||
|
without
|
||||||
|
.B \-o
|
||||||
|
(or
|
||||||
|
.BR \-\-output )
|
||||||
|
produces a
|
||||||
|
side-by-side difference. This usage is obsolete; use
|
||||||
|
.B "diff \-\-side\-by\-side"
|
||||||
|
instead.
|
||||||
|
.SS Options
|
||||||
|
Below is a summary of all of the options that GNU
|
||||||
|
.I sdiff
|
||||||
|
accepts.
|
||||||
|
Each option has two equivalent names, one of which is a single
|
||||||
|
letter preceded by
|
||||||
|
.BR \- ,
|
||||||
|
and the other of which is a long name
|
||||||
|
preceded by
|
||||||
|
.BR \-\- .
|
||||||
|
Multiple single letter options (unless they take
|
||||||
|
an argument) can be combined into a single command line argument. Long
|
||||||
|
named options can be abbreviated to any unique prefix of their name.
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not appear to be text.
|
||||||
|
.TP
|
||||||
|
.B \-b
|
||||||
|
Ignore changes in amount of white space.
|
||||||
|
.TP
|
||||||
|
.B \-B
|
||||||
|
Ignore changes that just insert or delete blank lines.
|
||||||
|
.TP
|
||||||
|
.B \-d
|
||||||
|
Change the algorithm to perhaps find a smaller set of changes. This
|
||||||
|
makes
|
||||||
|
.I sdiff
|
||||||
|
slower (sometimes much slower).
|
||||||
|
.TP
|
||||||
|
.B \-H
|
||||||
|
Use heuristics to speed handling of large files that have numerous
|
||||||
|
scattered small changes.
|
||||||
|
.TP
|
||||||
|
.B \-\-expand\-tabs
|
||||||
|
Expand tabs to spaces in the output, to preserve the alignment of tabs
|
||||||
|
in the input files.
|
||||||
|
.TP
|
||||||
|
.B \-i
|
||||||
|
Ignore changes in case; consider upper- and lower-case to be the same.
|
||||||
|
.TP
|
||||||
|
.BI "\-I " regexp
|
||||||
|
Ignore changes that just insert or delete lines that match
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-all\-space
|
||||||
|
Ignore white space when comparing lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-blank\-lines
|
||||||
|
Ignore changes that just insert or delete blank lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-case
|
||||||
|
Ignore changes in case; consider upper- and lower-case to be the same.
|
||||||
|
.TP
|
||||||
|
.BI \-\-ignore\-matching\-lines= regexp
|
||||||
|
Ignore changes that just insert or delete lines that match
|
||||||
|
.IR regexp .
|
||||||
|
.TP
|
||||||
|
.B \-\-ignore\-space\-change
|
||||||
|
Ignore changes in amount of white space.
|
||||||
|
.TP
|
||||||
|
.B \-l
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-left\-column
|
||||||
|
Print only the left column of two common lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-minimal
|
||||||
|
Change the algorithm to perhaps find a smaller set of changes. This
|
||||||
|
makes
|
||||||
|
.I sdiff
|
||||||
|
slower (sometimes much slower).
|
||||||
|
.TP
|
||||||
|
.BI "\-o " file
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-output= file
|
||||||
|
Put merged output into
|
||||||
|
.IR file .
|
||||||
|
This option is required for merging.
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-suppress\-common\-lines
|
||||||
|
Do not print common lines.
|
||||||
|
.TP
|
||||||
|
.B \-\-speed\-large\-files
|
||||||
|
Use heuristics to speed handling of large files that have numerous
|
||||||
|
scattered small changes.
|
||||||
|
.TP
|
||||||
|
.B \-t
|
||||||
|
Expand tabs to spaces in the output, to preserve the alignment of tabs
|
||||||
|
in the input files.
|
||||||
|
.TP
|
||||||
|
.B \-\-text
|
||||||
|
Treat all files as text and compare them line-by-line, even if they
|
||||||
|
do not appear to be text.
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Output the version number of
|
||||||
|
.IR sdiff .
|
||||||
|
.TP
|
||||||
|
.BI "\-w " columns
|
||||||
|
.br
|
||||||
|
.ns
|
||||||
|
.TP
|
||||||
|
.BI \-\-width= columns
|
||||||
|
Use an output width of
|
||||||
|
.IR columns .
|
||||||
|
Note that for historical reasons, this option is
|
||||||
|
.B \-W
|
||||||
|
in
|
||||||
|
.IR diff ,
|
||||||
|
.B \-w
|
||||||
|
in
|
||||||
|
.IR sdiff .
|
||||||
|
.TP
|
||||||
|
.B \-W
|
||||||
|
Ignore horizontal white space when comparing lines.
|
||||||
|
Note that for historical reasons, this option is
|
||||||
|
.B \-w
|
||||||
|
in
|
||||||
|
.IR diff ,
|
||||||
|
.B \-W
|
||||||
|
in
|
||||||
|
.IR sdiff .
|
||||||
|
.SH SEE ALSO
|
||||||
|
cmp(1), comm(1), diff(1), diff3(1).
|
||||||
|
.SH DIAGNOSTICS
|
||||||
|
An exit status of 0 means no differences were found, 1 means some
|
||||||
|
differences were found, and 2 means trouble.
|
||||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
||||||
SHA512 (diffutils-3.12.tar.xz) = 10b17cf1dcdfa9ca0e5db91d62c4a079ebe9fd7eafa3aaebd4eb7e6206e4d753f348496622aa281e1bd7f7fcde65ce4a886dcc4acbb59332ef980f224197b4e4
|
71f9c5ae19b60608f6c7f162da86a428 diffutils-2.8.1.tar.gz
|
||||||
|
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Makefile of /CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
# Description: Test for cmp -s returns 1 even if files are identical
|
|
||||||
# Author: Jeffrey Bastian <jbastian@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2010 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
export TEST=/CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
export TESTVERSION=1.0
|
|
||||||
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
|
||||||
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
chmod a+x runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ $(BUILT_FILES)
|
|
||||||
|
|
||||||
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@echo "Owner: Jeffrey Bastian <jbastian@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "Description: Test for cmp -s returns 1 even if files are identical" >> $(METADATA)
|
|
||||||
@echo "Type: Regression" >> $(METADATA)
|
|
||||||
@echo "TestTime: 5m" >> $(METADATA)
|
|
||||||
@echo "RunFor: diffutils" >> $(METADATA)
|
|
||||||
@echo "Requires: diffutils" >> $(METADATA)
|
|
||||||
@echo "Priority: Normal" >> $(METADATA)
|
|
||||||
@echo "License: GPLv2" >> $(METADATA)
|
|
||||||
@echo "Confidential: no" >> $(METADATA)
|
|
||||||
@echo "Destructive: no" >> $(METADATA)
|
|
||||||
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
PURPOSE of /CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
Description: Test for cmp -s returns 1 even if files are identical
|
|
||||||
Author: Jeffrey Bastian <jbastian@redhat.com>
|
|
||||||
Bug summary: cmp -s returns 1 even if files are identical
|
|
||||||
|
|
||||||
Description:
|
|
||||||
'cmp -s' can return 1 even if files are identical, for example, if comparing
|
|
||||||
a file from /proc with a copy of that file in /tmp, since all files in
|
|
||||||
/proc have a size of 0 bytes.
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
summary: Test for cmp -s returns 1 even if files are identical
|
|
||||||
description: "Bug summary: cmp -s returns 1 even if files are identical\n\nDescription:\n\
|
|
||||||
'cmp -s' can return 1 even if files are identical, for example, if comparing\n\
|
|
||||||
a file from /proc with a copy of that file in /tmp, since all files in\n/proc
|
|
||||||
have a size of 0 bytes.\n"
|
|
||||||
contact: Jeffrey Bastian <jbastian@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
duration: 5m
|
|
||||||
extra-summary:
|
|
||||||
/CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
extra-task:
|
|
||||||
/CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
|
|
@ -1,50 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# runtest.sh of /CoreOS/diffutils/Regression/cmp-s-returns-1-even-if-files-are-identical
|
|
||||||
# Description: Test for cmp -s returns 1 even if files are identical
|
|
||||||
# Author: Jeffrey Bastian <jbastian@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2010 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
# Include rhts environment
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
|
||||||
|
|
||||||
PACKAGE="diffutils"
|
|
||||||
#set -x
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
rlPhaseStartSetup
|
|
||||||
rlAssertRpm $PACKAGE
|
|
||||||
rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartTest
|
|
||||||
rlAssertExists $TmpDir
|
|
||||||
rlRun "cp /proc/version $TmpDir" 0 "Copy /proc/version to tmp directory"
|
|
||||||
rlRun "cmp -s /proc/version $TmpDir/version" 0 "Compare /proc/version to tmp copy"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
|
||||||
rlRun "rm -fr $TmpDir" 0 "Removing tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
rlJournalEnd
|
|
||||||
rlJournalPrintText
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Makefile of /CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
# Description: Test for diffutils to check if comparing two files using diff -Z with mixed line endings doesn't hang
|
|
||||||
# Author: Filip Holec <fholec@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2014 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
export TEST=/CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
export TESTVERSION=1.0
|
|
||||||
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
|
||||||
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
test -x runtest.sh || chmod a+x runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ $(BUILT_FILES)
|
|
||||||
|
|
||||||
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@echo "Owner: Filip Holec <fholec@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "Description: Test for diffutils to check if comparing two files using diff -Z with mixed line endings doesn't hang" >> $(METADATA)
|
|
||||||
@echo "Type: Regression" >> $(METADATA)
|
|
||||||
@echo "TestTime: 5m" >> $(METADATA)
|
|
||||||
@echo "RunFor: diffutils" >> $(METADATA)
|
|
||||||
@echo "Requires: diffutils" >> $(METADATA)
|
|
||||||
@echo "Priority: Normal" >> $(METADATA)
|
|
||||||
@echo "License: GPLv2" >> $(METADATA)
|
|
||||||
@echo "Confidential: no" >> $(METADATA)
|
|
||||||
@echo "Destructive: no" >> $(METADATA)
|
|
||||||
@echo "Releases: RHEL7" >> $(METADATA)
|
|
||||||
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,4 +0,0 @@
|
||||||
PURPOSE of /CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
Description: Test for diffutils to check if comparing two files using diff -Z with mixed line endings doesn't hang
|
|
||||||
Author: Filip Holec <fholec@redhat.com>
|
|
||||||
Bug summary: diff -Z hangs
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
summary: Test for diffutils to check if comparing two files using diff -Z with
|
|
||||||
mixed line endings doesn't hang
|
|
||||||
description: "Bug summary: diff -Z hangs\n"
|
|
||||||
contact: Filip Holec <fholec@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
duration: 5m
|
|
||||||
extra-summary: /CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
extra-task: /CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# runtest.sh of /CoreOS/diffutils/Regression/diff-Z-hangs
|
|
||||||
# Description: Test for diffutils to check if comparing two files using diff -Z with mixed line endings doesn't hang
|
|
||||||
# Author: Filip Holec <fholec@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2014 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
# Include Beaker environment
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh
|
|
||||||
|
|
||||||
PACKAGE="diffutils"
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
rlPhaseStartSetup
|
|
||||||
rlAssertRpm $PACKAGE
|
|
||||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
|
||||||
rlRun "pushd $TmpDir"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartTest
|
|
||||||
rlRun "diff -Z <(printf 'a\nb\n') <(printf 'a\nb\n'); echo $?" \
|
|
||||||
0 "First simple test"
|
|
||||||
rlRun "timeout 10s diff -Z <(printf 'a\r\nb\n') <(printf 'a\nb\r\n')" \
|
|
||||||
0 "Main test, should not timeout (124)"
|
|
||||||
rlRun "timeout 10s diff -Z <(echo 'a') <(echo -n 'a')" \
|
|
||||||
0 "Second test, should not timeout (124)"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
|
||||||
rlRun "popd"
|
|
||||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
rlJournalPrintText
|
|
||||||
rlJournalEnd
|
|
||||||
|
|
@ -1,61 +0,0 @@
|
||||||
# Makefile - diff-hang-long-files
|
|
||||||
# Author: Michal Fabry <mfabry@redhat.com>
|
|
||||||
# Location: /CoreOS/diffutils/Regression/diff-hang-long-files/Makefile
|
|
||||||
|
|
||||||
# Description: Diff appears to hang in long file
|
|
||||||
|
|
||||||
# Copyright (c) 2009 Red Hat, Inc. All rights reserved. This copyrighted material
|
|
||||||
# is made available to anyone wishing to use, modify, copy, or
|
|
||||||
# redistribute it subject to the terms and conditions of the GNU General
|
|
||||||
# Public License v.2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TOPLEVEL_NAMESPACE=/CoreOS
|
|
||||||
PACKAGE_NAME=diffutils
|
|
||||||
RELATIVE_PATH=Regression/diff-hang-long-files
|
|
||||||
|
|
||||||
export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
|
|
||||||
export TESTVERSION=1.0
|
|
||||||
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile
|
|
||||||
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
chmod a+x ./runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ $(BUILT_FILES)
|
|
||||||
|
|
||||||
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@touch $(METADATA)
|
|
||||||
@echo "Owner: Michal Fabry <mfabry@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Description: Diff appears to hang in long file" >> $(METADATA)
|
|
||||||
@echo "Type: Regression" >> $(METADATA)
|
|
||||||
@echo "TestTime: 5m" >> $(METADATA)
|
|
||||||
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA)
|
|
||||||
@echo "Requires: $(PACKAGE_NAME) words time" >> $(METADATA)
|
|
||||||
@echo "License: GPLv2" >> $(METADATA)
|
|
||||||
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
Test Name: diff-hang-long-files
|
|
||||||
Author: Michal Fabry <mfabry@redhat.com>
|
|
||||||
Location: /CoreOS/diffutils/Regression/diff-hang-long-files
|
|
||||||
|
|
||||||
Short Description: Diff appears to hang in long file
|
|
||||||
|
|
||||||
|
|
||||||
Long Description:
|
|
||||||
|
|
||||||
Running the "diff -bBw" command on a very large input file (eg 250 MB), in a multi-byte locale (ie UTF-8), took a very long time to complete, if at all. In a reported case, a diff ran for multiple days and did not complete. In certain situations, this could cause 100% CPU usage.
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
summary: Diff appears to hang in long file
|
|
||||||
description: "Test Name: diff-hang-long-files\nAuthor: Michal Fabry <mfabry@redhat.com>\n\
|
|
||||||
Location: /CoreOS/diffutils/Regression/diff-hang-long-files\n\nShort Description:
|
|
||||||
Diff appears to hang in long file\n\n\nLong Description:\n\nRunning the \"diff
|
|
||||||
-bBw\" command on a very large input file (eg 250 MB), in a multi-byte locale
|
|
||||||
(ie UTF-8), took a very long time to complete, if at all. In a reported case,
|
|
||||||
a diff ran for multiple days and did not complete. In certain situations, this
|
|
||||||
could cause 100% CPU usage.\n"
|
|
||||||
contact: Michal Fabry <mfabry@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
- words
|
|
||||||
- time
|
|
||||||
duration: 5m
|
|
||||||
extra-summary: /CoreOS/diffutils/Regression/diff-hang-long-files
|
|
||||||
extra-task: /CoreOS/diffutils/Regression/diff-hang-long-files
|
|
||||||
|
|
@ -1,78 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# Author: Michal Fabry <mfabry@redhat.com>
|
|
||||||
|
|
||||||
# Copyright (c) 2009 Red Hat, Inc. All rights reserved. This copyrighted material
|
|
||||||
# is made available to anyone wishing to use, modify, copy, or
|
|
||||||
# redistribute it subject to the terms and conditions of the GNU General
|
|
||||||
# Public License v.2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
|
|
||||||
# Include Beaker environment
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
|
||||||
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
|
|
||||||
# ===================================================================
|
|
||||||
# Setup - ABORT if some assert fails
|
|
||||||
# ===================================================================
|
|
||||||
rlPhaseStartSetup Setup
|
|
||||||
|
|
||||||
set -o pipefail
|
|
||||||
|
|
||||||
function count_lines() {
|
|
||||||
[ ! -r "$1" ] && return 1
|
|
||||||
wc -l "$1" | sed "s/^\s*\([0-9]\+\)\s\+.*$/\1/"
|
|
||||||
}
|
|
||||||
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
|
|
||||||
# ===================================================================
|
|
||||||
# Start the test
|
|
||||||
# ===================================================================
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Create connection
|
|
||||||
rlPhaseStartTest "Create big file"
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
|
|
||||||
log=$( mktemp /tmp/log.XXXXXX )
|
|
||||||
|
|
||||||
rlRun "tr -d \"'\" <words | xargs echo >long-line" 0 "Create big file part 1"
|
|
||||||
rlRun "for a in \$(seq 30); do cat long-line; done >long-lines" 0 "Create big file part 2"
|
|
||||||
rlAssertExists 'long-lines'
|
|
||||||
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Test /usr/sbin/ss output
|
|
||||||
rlPhaseEnd; rlPhaseStartTest "Test diff"
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
|
|
||||||
log2=$( mktemp /tmp/log.XXXXXX )
|
|
||||||
now=$(date '+%s')
|
|
||||||
rlRun "diff -bBw long-lines <(sed -e 's/ / /' long-lines) >/dev/null"
|
|
||||||
rlAssertGreater "Less than 150 seconds" 150 `expr $now - $(date '+%s')`
|
|
||||||
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# ===================================================================
|
|
||||||
# Start the cleanup
|
|
||||||
# ===================================================================
|
|
||||||
rlPhaseStartCleanup Cleanup
|
|
||||||
|
|
||||||
rm -f $log $log2 long-line long-lines
|
|
||||||
rlAssert0 "Remove the log" $?
|
|
||||||
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
#rlCreateLogFromJournal | tee $OUTPUTFILE
|
|
||||||
rlJournalPrintText
|
|
||||||
rlJournalEnd
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,63 +0,0 @@
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Makefile of /CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
# Description: Test for diffutils to ensure U3000 ideographic space is treated as space when used -b or -w options
|
|
||||||
# Author: Filip Holec <fholec@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
export TEST=/CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
export TESTVERSION=1.0
|
|
||||||
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE a b
|
|
||||||
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
test -x runtest.sh || chmod a+x runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ $(BUILT_FILES)
|
|
||||||
|
|
||||||
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@echo "Owner: Filip Holec <fholec@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "Description: Test for diffutils to ensure U3000 ideographic space is treated as space when used -b or -w options" >> $(METADATA)
|
|
||||||
@echo "Type: Regression" >> $(METADATA)
|
|
||||||
@echo "TestTime: 5m" >> $(METADATA)
|
|
||||||
@echo "RunFor: diffutils" >> $(METADATA)
|
|
||||||
@echo "Requires: diffutils" >> $(METADATA)
|
|
||||||
@echo "Priority: Normal" >> $(METADATA)
|
|
||||||
@echo "License: GPLv2" >> $(METADATA)
|
|
||||||
@echo "Confidential: no" >> $(METADATA)
|
|
||||||
@echo "Destructive: no" >> $(METADATA)
|
|
||||||
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
PURPOSE of /CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
Description: Test for diffutils to ensure U3000 ideographic space is treated as space when used -b or -w options
|
|
||||||
Author: Filip Holec <fholec@redhat.com>
|
|
||||||
Bug summary: diff -w/-b doesn't treat U3000 (IDEOGRAPHIC SPACE) as space
|
|
||||||
|
|
||||||
Test for diffutils to ensure U3000 ideographic space is treated as space when used -b or -w options
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
a b
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
a b
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
summary: Test for diffutils to ensure U3000 ideographic space is treated as
|
|
||||||
space when used -b or -w options
|
|
||||||
description: "Bug summary: diff -w/-b doesn't treat U3000 (IDEOGRAPHIC SPACE) as space\n\
|
|
||||||
\nTest for diffutils to ensure U3000 ideographic space is treated as space when
|
|
||||||
used -b or -w options\n"
|
|
||||||
contact: Filip Holec <fholec@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
duration: 5m
|
|
||||||
extra-summary:
|
|
||||||
/CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
extra-task:
|
|
||||||
/CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
|
|
@ -1,57 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# runtest.sh of /CoreOS/diffutils/Regression/diff-w-b-doesn-t-treat-U3000-IDEOGRAPHIC-SPACE-as-space
|
|
||||||
# Description: Test for diffutils to ensure U3000 ideographic space is treated as space when used -b or -w options
|
|
||||||
# Author: Filip Holec <fholec@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
# Include Beaker environment
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh
|
|
||||||
|
|
||||||
PACKAGE="diffutils"
|
|
||||||
|
|
||||||
# This test requires a non-C locale. Lets make it predictable
|
|
||||||
export LC_ALL=en_US.utf8
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
rlPhaseStartSetup
|
|
||||||
rlAssertRpm $PACKAGE
|
|
||||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
|
||||||
rlRun "cp a b $TmpDir" 0 "Copy files to $TmpDir"
|
|
||||||
rlRun "pushd $TmpDir"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartTest
|
|
||||||
rlRun "diff -w a b >out" 0 "diff with -w option"
|
|
||||||
rlRun "[ ! -s out ]" 0 "Output should be empty"
|
|
||||||
rlRun "diff -b a b >out" 0 "diff with -b option"
|
|
||||||
rlRun "[ ! -s out ]" 0 "Output should be empty"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
|
||||||
rlRun "popd"
|
|
||||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
rlJournalPrintText
|
|
||||||
rlJournalEnd
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Makefile of /CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
# Description: Test for sdiff does not recognize -E option
|
|
||||||
# Author: Martin Kyral <mkyral@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
export TEST=/CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
export TESTVERSION=1.0
|
|
||||||
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE file1 file2
|
|
||||||
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
test -x runtest.sh || chmod a+x runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ $(BUILT_FILES)
|
|
||||||
|
|
||||||
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@echo "Owner: Martin Kyral <mkyral@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "Description: Test for sdiff does not recognize -E option" >> $(METADATA)
|
|
||||||
@echo "Type: Regression" >> $(METADATA)
|
|
||||||
@echo "TestTime: 10m" >> $(METADATA)
|
|
||||||
@echo "RunFor: diffutils" >> $(METADATA)
|
|
||||||
@echo "Requires: diffutils" >> $(METADATA)
|
|
||||||
@echo "Priority: Normal" >> $(METADATA)
|
|
||||||
@echo "License: GPLv2" >> $(METADATA)
|
|
||||||
@echo "Confidential: yes" >> $(METADATA)
|
|
||||||
@echo "Destructive: no" >> $(METADATA)
|
|
||||||
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
PURPOSE of /CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
Description: Test for sdiff does not recognize -E option
|
|
||||||
Author: Martin Kyral <mkyral@redhat.com>
|
|
||||||
Bug summary: sdiff does not recognize -E option
|
|
||||||
|
|
||||||
The test runs sdiff -E on two files differing just in use of tab/8 spaces. sdiff shall not fail and shall return that the files are identical.
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
aaa
|
|
||||||
bbb
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
aaa
|
|
||||||
bbb
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
||||||
summary: Test for sdiff does not recognize -E option
|
|
||||||
description: "Bug summary: sdiff does not recognize -E option\n\nThe test runs sdiff
|
|
||||||
-E on two files differing just in use of tab/8 spaces. sdiff shall not fail and
|
|
||||||
shall return that the files are identical.\n"
|
|
||||||
contact: Martin Kyral <mkyral@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
duration: 10m
|
|
||||||
extra-summary: /CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
extra-task: /CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# runtest.sh of /CoreOS/diffutils/Regression/sdiff-does-not-recognize-E-option
|
|
||||||
# Description: Test for sdiff does not recognize -E option
|
|
||||||
# Author: Martin Kyral <mkyral@redhat.com>
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
#
|
|
||||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
|
||||||
#
|
|
||||||
# This copyrighted material is made available to anyone wishing
|
|
||||||
# to use, modify, copy, or redistribute it subject to the terms
|
|
||||||
# and conditions of the GNU General Public License version 2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be
|
|
||||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
||||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
||||||
# PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public
|
|
||||||
# License along with this program; if not, write to the Free
|
|
||||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
||||||
# Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
# Include Beaker environment
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
|
||||||
|
|
||||||
PACKAGE="diffutils"
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
rlPhaseStartSetup
|
|
||||||
rlAssertRpm $PACKAGE
|
|
||||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
|
||||||
rlRun "cp file1 file2 $TmpDir"
|
|
||||||
rlRun "pushd $TmpDir"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartTest
|
|
||||||
rlRun "sdiff -E file1 file2"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
|
||||||
rlRun "popd"
|
|
||||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
rlJournalPrintText
|
|
||||||
rlJournalEnd
|
|
||||||
|
|
@ -1,85 +0,0 @@
|
||||||
# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material
|
|
||||||
# is made available to anyone wishing to use, modify, copy, or
|
|
||||||
# redistribute it subject to the terms and conditions of the GNU General
|
|
||||||
# Public License v.2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# Author: bpeck@redhat.com
|
|
||||||
|
|
||||||
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
|
|
||||||
# Example Makefile for RHTS #
|
|
||||||
# This example is geared towards a test for a specific package #
|
|
||||||
# It does most of the work for you, but may require further coding #
|
|
||||||
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
|
|
||||||
|
|
||||||
# The toplevel namespace within which the test lives.
|
|
||||||
# FIXME: You will need to change this:
|
|
||||||
TOPLEVEL_NAMESPACE=CoreOS
|
|
||||||
|
|
||||||
# The name of the package under test:
|
|
||||||
# FIXME: you wil need to change this:
|
|
||||||
PACKAGE_NAME=diffutils
|
|
||||||
|
|
||||||
# The path of the test below the package:
|
|
||||||
# FIXME: you wil need to change this:
|
|
||||||
RELATIVE_PATH=whitespace
|
|
||||||
|
|
||||||
# Version of the Test. Used with make tag.
|
|
||||||
export TESTVERSION=1.1
|
|
||||||
|
|
||||||
# The combined namespace of the test.
|
|
||||||
export TEST=/$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
|
|
||||||
|
|
||||||
|
|
||||||
# A phony target is one that is not really the name of a file.
|
|
||||||
# It is just a name for some commands to be executed when you
|
|
||||||
# make an explicit request. There are two reasons to use a
|
|
||||||
# phony target: to avoid a conflict with a file of the same
|
|
||||||
# name, and to improve performance.
|
|
||||||
.PHONY: all install download clean
|
|
||||||
|
|
||||||
# executables to be built should be added here, they will be generated on the system under test.
|
|
||||||
BUILT_FILES=
|
|
||||||
|
|
||||||
# data files, .c files, scripts anything needed to either compile the test and/or run it.
|
|
||||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE file1 file2
|
|
||||||
|
|
||||||
run: $(FILES) build
|
|
||||||
./runtest.sh
|
|
||||||
|
|
||||||
build: $(BUILT_FILES)
|
|
||||||
chmod a+x ./runtest.sh
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *~ *.rpm $(BUILT_FILES)
|
|
||||||
|
|
||||||
# You may need to add other targets e.g. to build executables from source code
|
|
||||||
# Add them here:
|
|
||||||
|
|
||||||
|
|
||||||
# Include Common Makefile
|
|
||||||
include /usr/share/rhts/lib/rhts-make.include
|
|
||||||
|
|
||||||
# Generate the testinfo.desc here:
|
|
||||||
$(METADATA): Makefile
|
|
||||||
@touch $(METADATA)
|
|
||||||
# Change to the test owner's name
|
|
||||||
@echo "Owner: Bill Peck <bpeck@redhat.com>" > $(METADATA)
|
|
||||||
@echo "Name: $(TEST)" >> $(METADATA)
|
|
||||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
|
||||||
@echo "License: GPL V2" >> $(METADATA)
|
|
||||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
|
||||||
@echo "Description: diff -b should ignore whitespace ">> $(METADATA)
|
|
||||||
@echo "TestTime: 5m" >> $(METADATA)
|
|
||||||
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA)
|
|
||||||
@echo "Requires: $(PACKAGE_NAME)" >> $(METADATA)
|
|
||||||
|
|
||||||
# You may need other fields here; see the documentation
|
|
||||||
rhts-lint $(METADATA)
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
Create 2 files, f1, f2 with contents "abc" and "abc " (without quotes),
|
|
||||||
i.e. the same line with a space on the end.
|
|
||||||
|
|
||||||
Diff ignoring whitespace:
|
|
||||||
|
|
||||||
diff -b f1 f2
|
|
||||||
|
|
||||||
should produce no diff output, but does on F8. Works fine on FC6.
|
|
||||||
|
|
||||||
version: diffutils-2.8.1-17.fc8
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
abc
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
abc
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
summary: diff -b should ignore whitespace
|
|
||||||
description: "Create 2 files, f1, f2 with contents \"abc\" and \"abc \" (without quotes),\n\
|
|
||||||
i.e. the same line with a space on the end.\n\nDiff ignoring whitespace:\n\ndiff
|
|
||||||
-b f1 f2\n\nshould produce no diff output, but does on F8. Works fine on FC6.\n\
|
|
||||||
\nversion: diffutils-2.8.1-17.fc8\n"
|
|
||||||
contact: Bill Peck <bpeck@redhat.com>
|
|
||||||
component:
|
|
||||||
- diffutils
|
|
||||||
test: ./runtest.sh
|
|
||||||
framework: beakerlib
|
|
||||||
recommend:
|
|
||||||
- diffutils
|
|
||||||
duration: 5m
|
|
||||||
extra-summary: /CoreOS/diffutils/whitespace
|
|
||||||
extra-task: /CoreOS/diffutils/whitespace
|
|
||||||
|
|
@ -1,36 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material
|
|
||||||
# is made available to anyone wishing to use, modify, copy, or
|
|
||||||
# redistribute it subject to the terms and conditions of the GNU General
|
|
||||||
# Public License v.2.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# Author: Bill Peck
|
|
||||||
|
|
||||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
|
||||||
|
|
||||||
PACKAGE="diffutils"
|
|
||||||
|
|
||||||
rlJournalStart
|
|
||||||
rlPhaseStartSetup
|
|
||||||
rlAssertRpm $PACKAGE
|
|
||||||
rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartTest
|
|
||||||
rlRun "diff -b file1 file2"
|
|
||||||
rlPhaseEnd
|
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
|
||||||
rlRun "rm -fr $TmpDir" 0 "Removing tmp directory"
|
|
||||||
rlPhaseEnd
|
|
||||||
rlJournalEnd
|
|
||||||
rlJournalPrintText
|
|
||||||
371
upstream-key.gpg
371
upstream-key.gpg
|
|
@ -1,371 +0,0 @@
|
||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
||||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
|
||||||
|
|
||||||
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
|
|
||||||
TsT5hoBVIBulDJ13iotYt5qIhAlhASJs
|
|
||||||
=Nb2k
|
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue