From 318824c1bb7b73edfe66ae4976676c37eacd0c58 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Sun, 13 Jul 2008 08:03:20 -0400 Subject: [PATCH] Fix Solaris shell script portability issues Solaris ships with a pathetically ancient shell in /bin/sh, so fix various shell scripts to accomodate. Signed-off-by: "Theodore Ts'o" --- config/parse-types.sh | 16 +++++++++++++--- lib/ss/Makefile.in | 6 +++--- tests/Makefile.in | 2 +- tests/u_mke2fs/script | 9 +++++---- tests/u_tune2fs/script | 9 +++++---- 5 files changed, 27 insertions(+), 15 deletions(-) diff --git a/config/parse-types.sh b/config/parse-types.sh index 8da34fd..0887054 100755 --- a/config/parse-types.sh +++ b/config/parse-types.sh @@ -8,8 +8,16 @@ s/typedef \(.*\) __u\([1-9]*\);/#define __U\2_TYPEDEF \1/ s/typedef \(.*\) __s\([1-9]*\);/#define __S\2_TYPEDEF \1/ EOF -echo '#include ' | ${CPP-${CC-gcc} -E} - | \ - sed -f sed.script | grep ^# > asm_types.h +if test -z "$CC"; then + CC=gcc +fi + +if test -z "$CPP"; then + CPP="$CC -E" +fi + +echo '#include ' | $CPP - | \ + sed -f sed.script | grep '^#' > asm_types.h rm sed.script @@ -99,8 +107,10 @@ main(int argc, char **argv) EOF ${BUILD_CC-${CC-gcc}} -o asm_types asm_types.c -if ! ./asm_types +if ./asm_types then + /bin/true +else echo "Problem detected with asm_types.h" echo "" > asm_types.h fi diff --git a/lib/ss/Makefile.in b/lib/ss/Makefile.in index 9d7b566..3581bd9 100644 --- a/lib/ss/Makefile.in +++ b/lib/ss/Makefile.in @@ -170,9 +170,9 @@ test_ss: test_ss.o test_cmd.o $(DEPLIBSS) $(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 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 + -@(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 \ + /bin/true ; else echo "Regression test for ss library failed!"; exit 1 ; fi clean:: $(RM) -f ../libss.a libss.a mk_cmds ss_err.h ss_err.c std_rqs.c \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 2c3ac76..3659087 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -24,7 +24,7 @@ test_script: test_script.in Makefile mke2fs.conf @chmod +x test_script mke2fs.conf: $(srcdir)/../misc/mke2fs.conf - sed -e 's/blocksize = -1/blocksize = 4096/' $< >mke2fs.conf + sed -e 's/blocksize = -1/blocksize = 4096/' $(srcdir)/../misc/mke2fs.conf >mke2fs.conf check:: test_script @echo "Running e2fsprogs test suite..." diff --git a/tests/u_mke2fs/script b/tests/u_mke2fs/script index 671eace..8d51159 100644 --- a/tests/u_mke2fs/script +++ b/tests/u_mke2fs/script @@ -1,7 +1,8 @@ printf "e2undo with mke2fs: " if test -x $E2UNDO_EXE; then -export E2FSPROGS_UNDO_DIR=./ +E2FSPROGS_UNDO_DIR=./ +export E2FSPROGS_UNDO_DIR TDB_FILE=./mke2fs-test.img.e2undo OUT=$test_name.log rm -f $TDB_FILE >/dev/null 2>&1 @@ -10,16 +11,16 @@ dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1 echo mke2fs -q -F -o Linux -b 1024 test.img > $OUT $MKE2FS -F -o Linux -I 128 -b 1024 $TMPFILE >> $OUT 2>&1 -md5=$(md5sum $TMPFILE | cut -d " " -f 1) +md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum before mke2fs $md5 >> $OUT echo using mke2fs to test e2undo >> $OUT $MKE2FS -q -F -o Linux -I 256 -O uninit_bg -E lazy_itable_init=1 -b 1024 $TMPFILE >> $OUT 2>&1 -new_md5=$(md5sum $TMPFILE | cut -d " " -f 1) +new_md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum after mke2fs $new_md5 >> $OUT $E2UNDO_EXE $TDB_FILE $TMPFILE >> $OUT 2>&1 -new_md5=$(md5sum $TMPFILE | cut -d " " -f 1) +new_md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum after e2undo $new_md5 >> $OUT if [ $md5 = $new_md5 ]; then diff --git a/tests/u_tune2fs/script b/tests/u_tune2fs/script index e1ca7d1..5382cad 100644 --- a/tests/u_tune2fs/script +++ b/tests/u_tune2fs/script @@ -1,7 +1,8 @@ printf "e2undo with tune2fs: " if test -x $E2UNDO_EXE; then -export E2FSPROGS_UNDO_DIR=./ +E2FSPROGS_UNDO_DIR=./ +export E2FSPROGS_UNDO_DIR TDB_FILE=./tune2fs-test.img.e2undo OUT=$test_name.log rm -f $TDB_FILE >/dev/null 2>&1 @@ -10,16 +11,16 @@ dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1 echo mke2fs -q -F -o Linux -b 1024 $TMPFILE > $OUT $MKE2FS -q -F -o Linux -I 128 -b 1024 $TMPFILE >> $OUT 2>&1 -md5=$(md5sum $TMPFILE | cut -d " " -f 1) +md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum before tune2fs $md5 >> $OUT echo using tune2fs to test e2undo >> $OUT $TUNE2FS -I 256 $TMPFILE >> $OUT 2>&1 -new_md5=$(md5sum $TMPFILE | cut -d " " -f 1) +new_md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum after tune2fs $new_md5 >> $OUT $E2UNDO_EXE $TDB_FILE $TMPFILE >> $OUT 2>&1 -new_md5=$(md5sum $TMPFILE | cut -d " " -f 1) +new_md5=`md5sum $TMPFILE | cut -d " " -f 1` echo md5sum after e2undo $new_md5 >> $OUT if [ $md5 = $new_md5 ]; then -- 1.8.3.1