Fix cross compilation problem in parse-types.sh

The checking of types in parse-types.sh doesn't make much sense in a
cross-compilation environment, because the generated binary is
executed on build machine.

So even if asm_types.h has got correct statements for types, it's
possible that the generated binary will report an error, because these
types are for the target machine.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
maint-test
Chen Qi 2014-05-05 21:08:42 -04:00 committed by Theodore Ts'o
parent 2de2628b2d
commit 91f04685bf
3 changed files with 14 additions and 4 deletions

View File

@ -118,8 +118,10 @@ if ./asm_types
then
true
else
echo "Problem detected with asm_types.h"
echo "" > asm_types.h
if [ "${CROSS_COMPILE}" != "1" ]; then
echo "Problem detected with asm_types.h"
echo "" > asm_types.h
fi
fi
rm asm_types.c asm_types

6
configure vendored
View File

@ -10910,7 +10910,11 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
esac
BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
if test $cross_compiling = no; then
BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
else
CROSS_COMPILE="1" BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
fi
ASM_TYPES_HEADER=./asm_types.h
echo "/* These defines are needed for the public ext2fs.h header file */" \

View File

@ -979,7 +979,11 @@ AC_SUBST(SIZEOF_LONG)
AC_SUBST(SIZEOF_LONG_LONG)
AC_SUBST(SIZEOF_OFF_T)
AC_C_BIGENDIAN
BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
if test $cross_compiling = no; then
BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
else
CROSS_COMPILE="1" BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
fi
ASM_TYPES_HEADER=./asm_types.h
AC_SUBST_FILE(ASM_TYPES_HEADER)
dnl