Bug 728600 - define TARGET_XPCOM_ABI in mozilla-config.h; r=glandium
--- a/configure.in
+++ b/configure.in
@@ -3371,16 +3371,17 @@ if test "$ac_cv_i18n_lc_messages" = yes;
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}"
+ AC_DEFINE_UNQUOTED(TARGET_XPCOM_ABI, ["${TARGET_XPCOM_ABI}"])
fi
dnl Mozilla specific options
dnl ========================================================
dnl The macros used for command line options
dnl are defined in build/autoconf/altoptions.m4.
dnl If the compiler supports these attributes, define them as
--- a/mobile/android/base/AppConstants.java.in
+++ b/mobile/android/base/AppConstants.java.in
@@ -45,17 +45,17 @@ public class AppConstants {
// MOZILLA_VERSION is already quoted when it gets substituted in. If we
// add additional quotes we end up with ""x.y"", which is a syntax error.
public static final String MOZILLA_VERSION = @MOZILLA_VERSION@;
public static final String MOZ_CHILD_PROCESS_NAME = "@MOZ_CHILD_PROCESS_NAME@";
public static final String MOZ_UPDATE_CHANNEL = "@MOZ_UPDATE_CHANNEL@";
public static final String OMNIJAR_NAME = "@OMNIJAR_NAME@";
public static final String OS_TARGET = "@OS_TARGET@";
- public static final String TARGET_XPCOM_ABI = "@TARGET_XPCOM_ABI@";
+ public static final String TARGET_XPCOM_ABI = @TARGET_XPCOM_ABI@;
public static final String USER_AGENT_BOT_LIKE = "Redirector/" + AppConstants.MOZ_APP_VERSION +
" (Android; rv:" + AppConstants.MOZ_APP_VERSION + ")";
public static final String USER_AGENT_FENNEC_MOBILE = "Mozilla/5.0 (Android; Mobile; rv:" +
AppConstants.MOZ_APP_VERSION + ") Gecko/" +
AppConstants.MOZ_APP_VERSION + " Firefox/" +
AppConstants.MOZ_APP_VERSION;
--- a/toolkit/xre/moz.build
+++ b/toolkit/xre/moz.build
@@ -125,17 +125,16 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'wind
DEFINES['WIN32_LEAN_AND_MEAN'] = True
DEFINES['UNICODE'] = True
DEFINES['_UNICODE'] = True
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
DEFINES['ANDROID_PACKAGE_NAME'] = '"%s"' % CONFIG['ANDROID_PACKAGE_NAME']
if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
DEFINES['TARGET_OS_ABI'] = '"%s_%s"' % (CONFIG['OS_TARGET'],
CONFIG['TARGET_XPCOM_ABI'])
if CONFIG['WRAP_SYSTEM_INCLUDES']:
DEFINES['WRAP_SYSTEM_INCLUDES'] = True
if CONFIG['OS_ARCH'] == 'Linux' and 'lib64' in CONFIG['libdir']:
DEFINES['HAVE_USR_LIB64_DIR'] = True
--- a/xpcom/build/moz.build
+++ b/xpcom/build/moz.build
@@ -74,19 +74,16 @@ LIBRARY_NAME = 'xpcom_core'
include('/ipc/chromium/chromium-config.mozbuild')
FINAL_LIBRARY = 'xul'
DEFINES['_IMPL_NS_STRINGAPI'] = True
DEFINES['OMNIJAR_NAME'] = CONFIG['OMNIJAR_NAME']
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
if CONFIG['MOZ_OPTIMIZE']:
DEFINES['MOZ_OPTIMIZE'] = True
GENERATED_INCLUDES += ['..']
LOCAL_INCLUDES += [
'../base',
'../components',
'../ds',
--- a/xpcom/glue/moz.build
+++ b/xpcom/glue/moz.build
@@ -101,17 +101,14 @@ SDK_LIBRARY = [
"%s%s.%s" % (CONFIG['LIB_PREFIX'], 'xpcomglue_s', CONFIG['LIB_SUFFIX']),
]
FORCE_STATIC_LIB = True
if CONFIG['_MSC_VER']:
DEFINES['_USE_ANSI_CPP'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
LOCAL_INCLUDES += [
'../build',
]
if CONFIG['ENABLE_TESTS']:
DIRS += ['tests/gtest']
--- a/xpcom/glue/nomozalloc/moz.build
+++ b/xpcom/glue/nomozalloc/moz.build
@@ -21,19 +21,16 @@ SDK_LIBRARY = [
]
# we don't want the shared lib, but we want to force the creation of a static lib.
FORCE_STATIC_LIB = True
if CONFIG['_MSC_VER']:
DEFINES['_USE_ANSI_CPP'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
DEFINES['MOZ_NO_MOZALLOC'] = True
LOCAL_INCLUDES += [
'../../build',
]
# Pretend we're statically linking the CRT, even though we might not be: this
# avoids "msvcrp" and assembly dependencies from creeping into the directives
--- a/xpcom/glue/standalone/moz.build
+++ b/xpcom/glue/standalone/moz.build
@@ -30,17 +30,14 @@ SDK_LIBRARY = [
FORCE_STATIC_LIB = True
if CONFIG['_MSC_VER']:
DEFINES['_USE_ANSI_CPP'] = True
DEFINES['XPCOM_GLUE'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
LOCAL_INCLUDES += [
'../../build',
]
# Don't use STL wrappers here (i.e. wrapped <new>); they require mozalloc
DISABLE_STL_WRAPPING = True
--- a/xpcom/glue/standalone/staticruntime/moz.build
+++ b/xpcom/glue/standalone/staticruntime/moz.build
@@ -22,19 +22,16 @@ SDK_LIBRARY = [
# create a static lib
FORCE_STATIC_LIB = True
if CONFIG['_MSC_VER']:
DEFINES['_USE_ANSI_CPP'] = True
DEFINES['XPCOM_GLUE'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
LOCAL_INCLUDES += [
'../../../build',
]
# Statically link to the CRT on Windows
USE_STATIC_LIBS = True
# Don't use STL wrappers here (i.e. wrapped <new>); they require mozalloc
--- a/xpcom/glue/staticruntime/moz.build
+++ b/xpcom/glue/staticruntime/moz.build
@@ -20,19 +20,16 @@ SDK_LIBRARY = [
"%s%s.%s" % (CONFIG['LIB_PREFIX'], 'xpcomglue_staticruntime_s', CONFIG['LIB_SUFFIX']),
]
FORCE_STATIC_LIB = True
if CONFIG['_MSC_VER']:
DEFINES['_USE_ANSI_CPP'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
LOCAL_INCLUDES += [
'../../build',
]
# Statically link to the CRT on Windows
USE_STATIC_LIBS = True
# Don't use STL wrappers here (i.e. wrapped <new>); they require mozalloc
--- a/xpcom/xpcom-config.h.in
+++ b/xpcom/xpcom-config.h.in
@@ -29,9 +29,12 @@
#undef NEED_CPP_UNUSED_IMPLEMENTATIONS
/* Define to either __attribute__((malloc)) or nothing */
#undef NS_ATTR_MALLOC
/* Define to either __attribute__((warn_unused_result)) or nothing */
#undef NS_WARN_UNUSED_RESULT
+/* Define to a string describing the XPCOM ABI in use */
+#undef TARGET_XPCOM_ABI
+
#endif /* _XPCOM_CONFIG_H_ */
--- a/xulrunner/app/moz.build
+++ b/xulrunner/app/moz.build
@@ -12,19 +12,16 @@ SOURCES += [
'nsXULRunnerApp.cpp',
]
DEFINES['XULRUNNER_PROGNAME'] = '"xulrunner"'
DEFINES['XPCOM_GLUE'] = True
if CONFIG['DEBUG']:
DEFINES['DEBUG'] = True
-if CONFIG['TARGET_XPCOM_ABI']:
- DEFINES['TARGET_XPCOM_ABI'] = '"%s"' % CONFIG['TARGET_XPCOM_ABI']
-
LOCAL_INCLUDES += [
'/toolkit/profile',
'/toolkit/xre',
'/xpcom/base',
'/xpcom/build',
]
if CONFIG['_MSC_VER']: