From: Chen Qi Date: Tue, 6 May 2014 01:08:42 +0000 (-0400) Subject: Fix cross compilation problem in parse-types.sh X-Git-Tag: v1.42.10~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=91f04685bfa86ed4b19a54d11b4093b9d904f3df;p=thirdparty%2Fe2fsprogs.git 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 Signed-off-by: Theodore Ts'o --- diff --git a/config/parse-types.sh b/config/parse-types.sh index 5076f6ca8..24d2a990e 100755 --- a/config/parse-types.sh +++ b/config/parse-types.sh @@ -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 diff --git a/configure b/configure index 6fe33f5af..1b0ee6206 100755 --- a/configure +++ b/configure @@ -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 */" \ diff --git a/configure.in b/configure.in index 781b6f5a3..6592e7075 100644 --- a/configure.in +++ b/configure.in @@ -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