зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset a4914a29fb26 (bug 1330142)
This commit is contained in:
Родитель
7ae1b94b0c
Коммит
6692d1c565
|
@ -647,6 +647,7 @@ case "$target" in
|
|||
WIN32_CONSOLE_EXE_LDFLAGS=-mconsole
|
||||
WIN32_GUI_EXE_LDFLAGS=-mwindows
|
||||
else
|
||||
TARGET_COMPILER_ABI=msvc
|
||||
HOST_CC='$(CC)'
|
||||
HOST_CXX='$(CXX)'
|
||||
if test "$AS_BIN"; then
|
||||
|
@ -1234,6 +1235,32 @@ dnl Put your C++ language/feature checks below
|
|||
dnl ========================================================
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
ARM_ABI_PREFIX=
|
||||
if test "$GNU_CC"; then
|
||||
if test "$CPU_ARCH" = "arm" ; then
|
||||
AC_CACHE_CHECK(for ARM EABI,
|
||||
ac_cv_gcc_arm_eabi,
|
||||
[AC_TRY_COMPILE([],
|
||||
[
|
||||
#if defined(__ARM_EABI__)
|
||||
return 0;
|
||||
#else
|
||||
#error Not ARM EABI.
|
||||
#endif
|
||||
],
|
||||
ac_cv_gcc_arm_eabi="yes",
|
||||
ac_cv_gcc_arm_eabi="no")])
|
||||
if test "$ac_cv_gcc_arm_eabi" = "yes"; then
|
||||
HAVE_ARM_EABI=1
|
||||
ARM_ABI_PREFIX=eabi-
|
||||
else
|
||||
ARM_ABI_PREFIX=oabi-
|
||||
fi
|
||||
fi
|
||||
|
||||
TARGET_COMPILER_ABI="${TARGET_COMPILER_ABI-${ARM_ABI_PREFIX}gcc3}"
|
||||
fi
|
||||
|
||||
dnl See if a dynamic_cast to void* gives the most derived object.
|
||||
AC_CACHE_CHECK(for C++ dynamic_cast to void*,
|
||||
ac_cv_cpp_dynamic_cast_void_ptr,
|
||||
|
@ -1312,6 +1339,11 @@ fi
|
|||
AC_HAVE_FUNCS(localeconv)
|
||||
fi # ! SKIP_COMPILER_CHECKS
|
||||
|
||||
TARGET_XPCOM_ABI=
|
||||
if test -n "${CPU_ARCH}" -a -n "${TARGET_COMPILER_ABI}"; then
|
||||
TARGET_XPCOM_ABI="${CPU_ARCH}-${TARGET_COMPILER_ABI}"
|
||||
fi
|
||||
|
||||
dnl We can't run TRY_COMPILE tests on Windows, so hard-code some
|
||||
dnl features that Windows actually does support.
|
||||
|
||||
|
@ -2001,6 +2033,8 @@ AC_SUBST(HOST_AR_FLAGS)
|
|||
AC_SUBST(HOST_RANLIB)
|
||||
AC_SUBST(HOST_BIN_SUFFIX)
|
||||
|
||||
AC_SUBST(TARGET_XPCOM_ABI)
|
||||
|
||||
AC_SUBST(WRAP_LDFLAGS)
|
||||
AC_SUBST(MKSHLIB)
|
||||
AC_SUBST(MKCSHLIB)
|
||||
|
|
|
@ -879,6 +879,7 @@ case "$target" in
|
|||
# function thunks need to be generated for cross-DLL calls.
|
||||
MOZ_FOLD_LIBS_FLAGS="-mnop-fun-dllimport"
|
||||
else
|
||||
TARGET_COMPILER_ABI=msvc
|
||||
if test "$AS_BIN"; then
|
||||
AS="$(basename "$AS_BIN")"
|
||||
fi
|
||||
|
@ -1646,6 +1647,32 @@ dnl Put your C++ language/feature checks below
|
|||
dnl ========================================================
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
ARM_ABI_PREFIX=
|
||||
if test "$GNU_CC"; then
|
||||
if test "$CPU_ARCH" = "arm" ; then
|
||||
AC_CACHE_CHECK(for ARM EABI,
|
||||
ac_cv_gcc_arm_eabi,
|
||||
[AC_TRY_COMPILE([],
|
||||
[
|
||||
#if defined(__ARM_EABI__)
|
||||
return 0;
|
||||
#else
|
||||
#error Not ARM EABI.
|
||||
#endif
|
||||
],
|
||||
ac_cv_gcc_arm_eabi="yes",
|
||||
ac_cv_gcc_arm_eabi="no")])
|
||||
if test "$ac_cv_gcc_arm_eabi" = "yes"; then
|
||||
HAVE_ARM_EABI=1
|
||||
ARM_ABI_PREFIX=eabi-
|
||||
else
|
||||
ARM_ABI_PREFIX=oabi-
|
||||
fi
|
||||
fi
|
||||
|
||||
TARGET_COMPILER_ABI="${TARGET_COMPILER_ABI-${ARM_ABI_PREFIX}gcc3}"
|
||||
fi
|
||||
|
||||
dnl See if a dynamic_cast to void* gives the most derived object.
|
||||
AC_CACHE_CHECK(for C++ dynamic_cast to void*,
|
||||
ac_cv_cpp_dynamic_cast_void_ptr,
|
||||
|
@ -1789,6 +1816,12 @@ if test -n "${COMPILE_ENVIRONMENT}"; then
|
|||
MOZ_CHECK_ALLOCATOR
|
||||
fi
|
||||
|
||||
TARGET_XPCOM_ABI=
|
||||
if test -n "${CPU_ARCH}" -a -n "${TARGET_COMPILER_ABI}"; then
|
||||
TARGET_XPCOM_ABI="${CPU_ARCH}-${TARGET_COMPILER_ABI}"
|
||||
AC_DEFINE_UNQUOTED(TARGET_XPCOM_ABI, ["${TARGET_XPCOM_ABI}"])
|
||||
fi
|
||||
|
||||
dnl We can't run TRY_COMPILE tests on Windows, so hard-code some
|
||||
dnl features that Windows actually does support.
|
||||
|
||||
|
@ -4806,6 +4839,7 @@ AC_SUBST(HOST_AR_FLAGS)
|
|||
AC_SUBST(HOST_RANLIB)
|
||||
AC_SUBST(HOST_BIN_SUFFIX)
|
||||
|
||||
AC_SUBST(TARGET_XPCOM_ABI)
|
||||
AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSSE3)
|
||||
AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSE4_1)
|
||||
AC_SUBST(HAVE_X86_AVX2)
|
||||
|
|
|
@ -1226,23 +1226,3 @@ def enable_asan_reporter(value):
|
|||
|
||||
set_config('MOZ_ASAN_REPORTER', enable_asan_reporter)
|
||||
set_define('MOZ_ASAN_REPORTER', enable_asan_reporter)
|
||||
|
||||
@depends(target, c_compiler)
|
||||
def xpcom_abi(target, c_compiler):
|
||||
if not c_compiler:
|
||||
return ''
|
||||
|
||||
if c_compiler.type in ('msvc', 'clang-cl'):
|
||||
assert target.kernel == 'WINNT'
|
||||
return '%s-msvc' % target.cpu
|
||||
|
||||
assert c_compiler.type in ('gcc', 'clang')
|
||||
# Everything else uses the gcc ABI.
|
||||
return '%s-gcc3' % ('arm-eabi' if target.cpu == 'arm' else target.cpu,)
|
||||
|
||||
@depends(xpcom_abi)
|
||||
def xpcom_abi_quoted(abi):
|
||||
return '"%s"' % abi
|
||||
|
||||
set_config('TARGET_XPCOM_ABI', xpcom_abi)
|
||||
set_define('TARGET_XPCOM_ABI', xpcom_abi_quoted)
|
||||
|
|
Загрузка…
Ссылка в новой задаче