diff --git a/libsanitizer/configure b/libsanitizer/configure index d3de3dbba51..d4ee0fac3e7 100755 --- a/libsanitizer/configure +++ b/libsanitizer/configure @@ -17045,9 +17045,16 @@ else $as_echo "no" >&6; } fi -EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS" -EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS" -EXTRA_ASFLAGS=$CET_FLAGS +# Always set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 to sync with LLVM, +# and keep struct *stat* have the same size. +case "${host}" in + mips*-*) FILE64_FLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" ;; + *) FILE64_FLAGS="" ;; +esac + +EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_ASFLAGS="$CET_FLAGS $FILE64_FLAGS" diff --git a/libsanitizer/configure.ac b/libsanitizer/configure.ac index ad49f29db7e..04cd8910ed6 100644 --- a/libsanitizer/configure.ac +++ b/libsanitizer/configure.ac @@ -416,8 +416,16 @@ GCC_BASE_VER # Add CET specific flags if Intel CET is enabled. GCC_CET_FLAGS(CET_FLAGS) -EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS" -EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS" + +# Always set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 to sync with LLVM, +# and keep struct *stat* have the same size. +case "${host}" in + mips*-*) FILE64_FLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" ;; + *) FILE64_FLAGS="" ;; +esac + +EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS $FILE64_FLAGS" EXTRA_ASFLAGS=$CET_FLAGS AC_SUBST(EXTRA_ASFLAGS) AC_SUBST(EXTRA_CFLAGS)