2008-04-09 18:39:21

by Manish Katiyar

[permalink] [raw]
Subject: e2fsprogs - Unable to run "make check" on ubuntu

Hi,

I was running "make check" on ubuntu 7.10 and encountered the below error

/home/mkatiyar/e2fs-git/lib/ss> make check
RUN TEST test_ss
/bin/sh: Syntax error: Bad fd number
make: *** [check] Error 2

It is because on ubuntu /bin/sh is a soft link to "dash" on ubuntu
which doesn't seem to respect the standard redirection of >& to
test_out. Changing either the shell to "/bin/bash" or changing the
standard ">& test_out" to ">test_out 2>&1" works properly.

Let me know if we need to change and which one is the correct fix for
it. I will submit a patch for it.

--
Thanks & Regards,
********************************************
Manish Katiyar ( http://mkatiyar.googlepages.com )
3rd Floor, Fair Winds Block
EGL Software Park
Off Intermediate Ring Road
Bangalore 560071, India
***********************************************


2008-04-09 19:58:44

by Theodore Ts'o

[permalink] [raw]
Subject: [E2FSPROGS, PATCH] Fix non-POSIX ">&" in the Makefile for lib/ss's "make check" rule

Signed-off-by: "Theodore Ts'o" <[email protected]>
---
lib/ss/Makefile.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/ss/Makefile.in b/lib/ss/Makefile.in
index 23b5f60..8973fc9 100644
--- a/lib/ss/Makefile.in
+++ b/lib/ss/Makefile.in
@@ -170,7 +170,7 @@ test_ss: test_ss.o test_cmd.o $(LIBSS) $(LIBCOM_ERR)

check:: all test_ss
@echo " RUN TEST test_ss"
- @(LD_LIBRARY_PATH=$(LIB) DYLD_LIBRARY_PATH=$(LIB) ./test_ss -f $(srcdir)/test_script >& test_out; exit 0)
+ @(LD_LIBRARY_PATH=$(LIB) DYLD_LIBRARY_PATH=$(LIB) ./test_ss -f $(srcdir)/test_script > test_out 2>&1; exit 0)
@if ! diff test_out $(srcdir)/test_script_expected > test.diff; then \
echo "Regression test for ss library failed!"; exit 1 ; fi

--
1.5.4.1.144.gdfee-dirty