+2009-08-16 Bruno Haible <bruno@clisp.org>
+
+ Fix test failures on Solaris 10.
+ * tests/test-pipe-filter-ii1.sh: Determine the filename of a working
+ 'tr' program and pass it as first argument.
+ * tests/test-pipe-filter-gi1.sh: Likewise.
+ * tests/test-pipe-filter-ii1.c (main): Except the filename of a 'tr'
+ program as first argument.
+ * tests/test-pipe-filter-gi1.c (main): Likewise.
+
2009-08-16 Eric Blake <ebb9@byu.net>
fpurge: fix previous commits
int
main (int argc, char *argv[])
{
+ const char *tr_program;
const char *input_filename;
size_t input_size;
char *input;
set_program_name (argv[0]);
- ASSERT (argc == 2);
+ ASSERT (argc == 3);
+
+ tr_program = argv[1];
/* Read some text from a file. */
- input_filename = argv[1];
+ input_filename = argv[2];
input = read_binary_file (input_filename, &input_size);
ASSERT (input != NULL);
l.input = input;
l.nread = 0;
- argv[0] = "tr";
+ argv[0] = tr_program;
argv[1] = "a-z";
argv[2] = "A-Z";
argv[3] = NULL;
- f = pipe_filter_gi_create ("tr", "tr", argv, false, true,
+ f = pipe_filter_gi_create ("tr", tr_program, argv, false, true,
prepare_read, done_read, &l);
ASSERT (f != NULL);
result = pipe_filter_gi_write (f, input, input_size);
#!/bin/sh
+
+# Find a 'tr' program that supports character ranges in the POSIX syntax.
+# Solaris /usr/bin/tr does not.
+if test -f /usr/xpg4/bin/tr; then
+ TR=/usr/xpg4/bin/tr
+else
+ TR=tr
+fi
+
# A small file.
-./test-pipe-filter-gi1${EXEEXT} "${srcdir}/test-pipe-filter-gi1.sh" || exit 1
+./test-pipe-filter-gi1${EXEEXT} ${TR} "${srcdir}/test-pipe-filter-gi1.sh" || exit 1
# A medium-sized file.
-./test-pipe-filter-gi1${EXEEXT} "${srcdir}/test-pipe-filter-gi1.c" || exit 1
+./test-pipe-filter-gi1${EXEEXT} ${TR} "${srcdir}/test-pipe-filter-gi1.c" || exit 1
# A large file.
-./test-pipe-filter-gi1${EXEEXT} "${srcdir}/test-vasnprintf-posix.c" || exit 1
+./test-pipe-filter-gi1${EXEEXT} ${TR} "${srcdir}/test-vasnprintf-posix.c" || exit 1
int
main (int argc, char *argv[])
{
+ const char *tr_program;
const char *input_filename;
size_t input_size;
char *input;
set_program_name (argv[0]);
- ASSERT (argc == 2);
+ ASSERT (argc == 3);
+
+ tr_program = argv[1];
/* Read some text from a file. */
- input_filename = argv[1];
+ input_filename = argv[2];
input = read_binary_file (input_filename, &input_size);
ASSERT (input != NULL);
l.nwritten = 0;
l.nread = 0;
- argv[0] = "tr";
+ argv[0] = tr_program;
argv[1] = "a-z";
argv[2] = "A-Z";
argv[3] = NULL;
- result = pipe_filter_ii_execute ("tr", "tr", argv, false, true,
+ result = pipe_filter_ii_execute ("tr", tr_program, argv, false, true,
prepare_write, done_write,
prepare_read, done_read,
&l);
#!/bin/sh
+
+# Find a 'tr' program that supports character ranges in the POSIX syntax.
+# Solaris /usr/bin/tr does not.
+if test -f /usr/xpg4/bin/tr; then
+ TR=/usr/xpg4/bin/tr
+else
+ TR=tr
+fi
+
# A small file.
-./test-pipe-filter-ii1${EXEEXT} "${srcdir}/test-pipe-filter-ii1.sh" || exit 1
+./test-pipe-filter-ii1${EXEEXT} ${TR} "${srcdir}/test-pipe-filter-ii1.sh" || exit 1
# A medium-sized file.
-./test-pipe-filter-ii1${EXEEXT} "${srcdir}/test-pipe-filter-ii1.c" || exit 1
+./test-pipe-filter-ii1${EXEEXT} ${TR} "${srcdir}/test-pipe-filter-ii1.c" || exit 1
# A large file.
-./test-pipe-filter-ii1${EXEEXT} "${srcdir}/test-vasnprintf-posix.c" || exit 1
+./test-pipe-filter-ii1${EXEEXT} ${TR} "${srcdir}/test-vasnprintf-posix.c" || exit 1