Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps

There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
This commit is contained in:
Mike Hommey 2014-10-30 13:06:12 +09:00
Родитель 0cd72b4901
Коммит 47c853314f
109 изменённых файлов: 318 добавлений и 658 удалений

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
SharedLibrary('IA2Marshal')
GeckoSharedLibrary('IA2Marshal', linkage=None)
DEFINES['REGISTER_PROXY_DLL'] = True

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
SharedLibrary('AccessibleMarshal')
GeckoSharedLibrary('AccessibleMarshal', linkage=None)
GENERATED_SOURCES += [
'dlldata.c',

Просмотреть файл

@ -6,9 +6,9 @@
if not CONFIG['LIBXUL_SDK']:
if CONFIG['GAIADIR']:
Program(CONFIG['MOZ_APP_NAME'] + "-bin")
GeckoProgram(CONFIG['MOZ_APP_NAME'] + "-bin")
else:
Program(CONFIG['MOZ_APP_NAME'])
GeckoProgram(CONFIG['MOZ_APP_NAME'])
if CONFIG['MOZ_B2G_LOADER']:
SOURCES += [
'B2GLoader.cpp',
@ -26,8 +26,6 @@ if not CONFIG['LIBXUL_SDK']:
'zlib',
]
DEFINES['XPCOM_GLUE'] = True
for var in ('MOZ_APP_NAME', 'MOZ_APP_VERSION', 'MOZ_UPDATER'):
DEFINES[var] = CONFIG[var]
@ -70,10 +68,6 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
'utils',
]
USE_LIBS += [
'xpcomglue',
]
DISABLE_STL_WRAPPING = True
if CONFIG['OS_ARCH'] == 'WINNT':

Просмотреть файл

@ -4,9 +4,6 @@
GAIA_PATH := gaia/profile
# This is needed to avoid making run-b2g depend on mozglue
WRAP_LDFLAGS :=
GENERATED_DIRS += $(DIST)/bin/$(GAIA_PATH)
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -6,7 +6,10 @@
DIRS += ['profile/extensions']
Program(CONFIG['MOZ_APP_NAME'])
if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['MOZ_METRO']:
GeckoProgram(CONFIG['MOZ_APP_NAME'])
else:
GeckoProgram(CONFIG['MOZ_APP_NAME'], msvcrt='static')
SOURCES += [
'nsBrowserApp.cpp',
@ -18,8 +21,6 @@ for var in ('MOZILLA_OFFICIAL', 'LIBXUL_SDK'):
if CONFIG[var]:
DEFINES[var] = True
DEFINES['XPCOM_GLUE'] = True
GENERATED_INCLUDES += [
'/build',
]
@ -34,7 +35,10 @@ if not CONFIG['MOZ_METRO']:
DELAYLOAD_DLLS += [
'mozglue.dll',
]
USE_STATIC_LIBS = True
USE_LIBS += [
'mozglue',
]
if CONFIG['_MSC_VER']:
# Always enter a Windows program through wmain, whether or not we're
@ -56,16 +60,6 @@ if CONFIG['OS_ARCH'] == 'WINNT':
if CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['GNU_CC']:
LDFLAGS += ['/HEAP:0x40000']
if CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['MOZ_METRO']:
USE_LIBS += [
'mozglue',
'xpcomglue_staticruntime',
]
else:
USE_LIBS += [
'xpcomglue',
]
DISABLE_STL_WRAPPING = True
if CONFIG['MOZ_LINKER']:

Просмотреть файл

@ -6,11 +6,6 @@ ifndef MOZ_WINCONSOLE
MOZ_WINCONSOLE = 0
endif
include $(topsrcdir)/config/config.mk
include $(topsrcdir)/config/rules.mk
DIST_PROGRAM = CommandExecuteHandler$(BIN_SUFFIX)
# Don't link against mozglue.dll
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =

Просмотреть файл

@ -1,7 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# don't use moz glue libs
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =

Просмотреть файл

@ -5,8 +5,6 @@
# LLVM_CXXFLAGS comes with its own optimization flags.
MOZ_OPTIMIZE =
MOZ_GLUE_LDFLAGS =
include $(topsrcdir)/config/config.mk
# In the current moz.build world, we need to override essentially every

Просмотреть файл

@ -119,11 +119,6 @@ With a ``Framework`` name of ``foo``, the framework file name will be ``foo``.
This template however affects the behavior on all platforms, so it needs to
be set only on OSX.
Another special kind of library, XPCOM-specific, are XPCOM components. One can
build such a component with the ``XPCOMBinaryComponent`` template.
XPCOMBinaryComponent('foo')
Executables
===========
@ -293,3 +288,28 @@ On e.g. Linux, the above ``myprog`` will have DT_NEEDED markers for
``libmylib.so`` and ``libfoo.so`` instead of ``libmylib.so`` and
``libotherlib.so`` if there weren't a ``SONAME``. This means the runtime
requirement for ``myprog`` is ``libfoo.so`` instead of ``libotherlib.so``.
Gecko-related binaries
======================
Some programs or libraries are totally independent of Gecko, and can use the
above mentioned templates. Others are Gecko-related in some way, and may
need XPCOM linkage, mozglue. These things are tedious. A set of additional
templates exists to ease defining such programs and libraries. They are
essentially the same as the above mentioned templates, prefixed with "Gecko":
- ``GeckoProgram``
- ``GeckoSimplePrograms``
- ``GeckoCppUnitTests``
- ``GeckoSharedLibrary``
- ``GeckoFramework``
There is also ``XPCOMBinaryComponent`` for XPCOM components, which is a
special kind of library.
All the Gecko-prefixed templates take the same arguments as their
non-Gecko-prefixed counterparts, and can take a few more arguments
for non-standard cases. See the definition of ``GeckoBinary`` in
build/gecko_templates.mozbuild for more details, but most usecases
should not require these additional arguments.

Просмотреть файл

@ -0,0 +1,155 @@
# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
@template
def GeckoBinary(linkage='dependent', msvcrt='dynamic', mozglue=None):
'''Template for Gecko-related binaries.
This template is meant to be used in other templates.
`linkage` indicates the wanted xpcom linkage type. Valid values are
'dependent', 'standalone' or None. 'dependent' is the default. It is
used for e.g. XPCOM components and executables with direct dependencies
on libxul. Most executables should use the 'standalone' linkage, which
uses the standalone XPCOM glue to load libxul. None means no XPCOM glue
or libxul linkage at all.
`msvcrt` indicates which Microsoft Visual Studio CRT, for Windows build,
ought to be linked: 'static' or 'dynamic'.
`mozglue` indicates whether to link against the mozglue library, and if
so, what linkage to apply. Valid values are None (mozglue not linked),
'program' (mozglue linked to an executable program), or 'library' (mozglue
linked to a shared library).
'''
if msvcrt == 'dynamic' or CONFIG['OS_ARCH'] != 'WINNT':
xpcomglue = 'xpcomglue'
elif msvcrt == 'static':
USE_STATIC_LIBS = True
xpcomglue = 'xpcomglue_staticruntime'
if not CONFIG['GNU_CC']:
mozglue = None
else:
error('msvcrt must be "dynamic" or "static"')
if linkage == 'dependent':
USE_LIBS += [
'mozalloc',
'nspr',
'%s_s' % xpcomglue,
'xul',
]
elif linkage == 'standalone':
DEFINES['XPCOM_GLUE'] = True
USE_LIBS += [
xpcomglue,
]
elif linkage != None:
error('`linkage` must be "dependent", "standalone" or None')
if mozglue:
if CONFIG['JS_STANDALONE']:
pass
elif CONFIG['MOZ_CRT']:
if msvcrt == 'dynamic':
USE_LIBS += ['mozcrt']
elif msvcrt == 'static':
USE_LIBS += ['mozglue']
else:
error('`msvcrt` must be "dynamic" or "static"')
else:
LDFLAGS += CONFIG['MOZ_GLUE_WRAP_LDFLAGS']
if mozglue == 'program':
USE_LIBS += ['mozglue']
if CONFIG['MOZ_GLUE_IN_PROGRAM']:
if CONFIG['GNU_CC']:
LDFLAGS += ['-rdynamic']
if CONFIG['MOZ_MEMORY']:
USE_LIBS += ['memory']
if CONFIG['MOZ_LINKER']:
OS_LIBS += CONFIG['MOZ_ZLIB_LIBS']
elif mozglue == 'library':
if not CONFIG['MOZ_GLUE_IN_PROGRAM']:
USE_LIBS += ['mozglue']
else:
error('`mozglue` must be "program" or "library"')
@template
def GeckoProgram(name, linkage='standalone', **kwargs):
'''Template for program executables related to Gecko.
`name` identifies the executable base name.
See the documentation for `GeckoBinary` for other possible arguments,
with the notable difference that the default for `linkage` is 'standalone'.
'''
Program(name)
GeckoBinary(linkage=linkage, mozglue='program', **kwargs)
@template
def GeckoSimplePrograms(names, **kwargs):
'''Template for simple program executables related to Gecko.
`names` identifies the executable base names for each executable.
See the documentation for `GeckoBinary` for other possible arguments.
'''
SimplePrograms(names)
GeckoBinary(mozglue='program', **kwargs)
@template
def GeckoCppUnitTests(names, **kwargs):
'''Template for C++ unit tests related to Gecko.
`names` identifies the executable base names for each executable.
See the documentation for `GeckoBinary` for other possible arguments.
'''
CppUnitTests(names)
GeckoBinary(mozglue='program', **kwargs)
@template
def GeckoSharedLibrary(name, **kwargs):
'''Template for shared libraries related to Gecko.
`name` identifies the library base name.
See the documentation for `GeckoBinary` for other possible arguments.
'''
SharedLibrary(name)
GeckoBinary(mozglue='library', **kwargs)
@template
def GeckoFramework(name, **kwargs):
'''Template for OSX frameworks related to Gecko.
`name` identifies the library base name.
See the documentation for `GeckoBinary` for other possible arguments.
'''
Framework(name)
GeckoBinary(mozglue='library', **kwargs)
@template
def XPCOMBinaryComponent(name):
'''Template defining an XPCOM binary component for Gecko.
`name` is the name of the component.
'''
GeckoSharedLibrary(name)
IS_COMPONENT = True

Просмотреть файл

@ -115,28 +115,4 @@ def HostLibrary(name):
HOST_LIBRARY_NAME = name
@template
def GeckoBinary():
'''Template for binaries using Gecko.
This template is meant to be used in other templates.
'''
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
@template
def XPCOMBinaryComponent(name):
'''Template defining an XPCOM binary component for Gecko.
name is the name of the component.
'''
SharedLibrary(name)
GeckoBinary()
IS_COMPONENT = True
include('gecko_templates.mozbuild')

Просмотреть файл

@ -7,8 +7,6 @@ INTERNAL_TOOLS = 1
OS_CXXFLAGS := $(filter-out -fno-exceptions,$(OS_CXXFLAGS)) -fexceptions
WRAP_LDFLAGS=
include $(topsrcdir)/config/rules.mk
test-array$(DLL_SUFFIX) test-ctors$(DLL_SUFFIX): %$(DLL_SUFFIX): %.$(OBJ_SUFFIX) elfhack

Просмотреть файл

@ -2,8 +2,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =
include $(topsrcdir)/config/rules.mk
ifdef WIN32_REDIST_DIR

Просмотреть файл

@ -1,5 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =

Просмотреть файл

@ -1,5 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =

Просмотреть файл

@ -234,20 +234,10 @@ endif # NS_TRACE_MALLOC || MOZ_DMD
endif # MOZ_DEBUG
# We don't build a static CRT when building a custom CRT,
# it appears to be broken. So don't link to jemalloc if
# the Makefile wants static CRT linking.
ifeq ($(MOZ_MEMORY)_$(USE_STATIC_LIBS),1_1)
# Disable default CRT libs and add the right lib path for the linker
MOZ_GLUE_LDFLAGS=
endif
endif # WINNT && !GNU_CC
ifdef MOZ_GLUE_PROGRAM_LDFLAGS
ifdef MOZ_GLUE_IN_PROGRAM
DEFINES += -DMOZ_GLUE_IN_PROGRAM
else
MOZ_GLUE_PROGRAM_LDFLAGS=$(MOZ_GLUE_LDFLAGS)
endif
#

18
config/external/nss/Makefile.in поставляемый
Просмотреть файл

@ -10,12 +10,6 @@ CXX_WRAPPER =
default::
# When MOZ_CRT is set, we get mozcrt from moz.build instead of
# MOZ_GLUE_LDFLAGS
ifdef MOZ_CRT
MOZ_GLUE_LDFLAGS =
endif
include $(topsrcdir)/config/makefiles/functions.mk
NSS_LIBS = \
@ -223,9 +217,17 @@ endif
endif
ifdef WRAP_LDFLAGS
NSS_EXTRA_LDFLAGS += $(WRAP_LDFLAGS)
endif
ifdef MOZ_GLUE_WRAP_LDFLAGS
NSS_EXTRA_LDFLAGS += $(SHARED_LIBS:$(DEPTH)%=$(MOZ_BUILD_ROOT)%) $(MOZ_GLUE_WRAP_LDFLAGS)
endif
ifneq (,$(WRAP_LDFLAGS)$(MOZ_GLUE_WRAP_LDFLAGS))
DEFAULT_GMAKE_FLAGS += \
LDFLAGS='$(LDFLAGS) $(WRAP_LDFLAGS)' \
DSO_LDOPTS='$(DSO_LDOPTS) $(LDFLAGS) $(WRAP_LDFLAGS)' \
LDFLAGS='$(LDFLAGS) $(NSS_EXTRA_LDFLAGS)' \
DSO_LDOPTS='$(DSO_LDOPTS) $(LDFLAGS) $(NSS_EXTRA_LDFLAGS)' \
$(NULL)
endif

8
config/external/nss/moz.build поставляемый
Просмотреть файл

@ -10,7 +10,7 @@ if CONFIG['MOZ_NATIVE_NSS']:
Library('nss')
OS_LIBS += CONFIG['NSS_LIBS']
elif CONFIG['MOZ_FOLD_LIBS']:
SharedLibrary('nss')
GeckoSharedLibrary('nss', linkage=None)
# TODO: The library name can be changed when bug 845217 is fixed.
SHARED_LIBRARY_NAME = 'nss3'
@ -36,12 +36,6 @@ elif CONFIG['MOZ_FOLD_LIBS']:
if CONFIG['OS_ARCH'] == 'Linux' and CONFIG['GCC_USE_GNU_LD']:
LD_VERSION_SCRIPT = 'nss3.def'
# mozcrt needs at least one reference in a moz.build for the frontend
# not to raise an error. Here, it allows to avoid setting DLLFLAGS in
# configure.in.
if CONFIG['MOZ_CRT']:
USE_LIBS += ['mozcrt']
else:
Library('nss')
USE_LIBS += [

Просмотреть файл

@ -641,8 +641,6 @@ endif
endif # NO_PROFILE_GUIDED_OPTIMIZE
MOZ_PROGRAM_LDFLAGS += $(MOZ_GLUE_PROGRAM_LDFLAGS)
##############################################
checkout:

Просмотреть файл

@ -7072,28 +7072,15 @@ if test "$NS_TRACE_MALLOC"; then
MOZ_MEMORY=
fi
if test "${OS_TARGET}" = "Android"; then
dnl On Android, we use WRAP_LDFLAGS to link everything to mozglue
:
elif test "${OS_TARGET}" = "WINNT" -o "${OS_TARGET}" = "Darwin"; then
dnl On Windows and OSX, we want to link all our binaries against mozglue
MOZ_GLUE_LDFLAGS='$(call EXPAND_LIBNAME_PATH,mozglue,$(LIBXUL_DIST)/lib)'
else
dnl On other Unix systems, we only want to link executables against mozglue
MOZ_GLUE_PROGRAM_LDFLAGS='$(call EXPAND_LIBNAME_PATH,mozglue,$(LIBXUL_DIST)/lib)'
dnl On other Unix systems, where mozglue is a static library, jemalloc is
dnl separated for the SDK, so we need to add it here.
if test "$MOZ_MEMORY" = 1 -o \( "$LIBXUL_SDK" -a -f "$LIBXUL_SDK/lib/${LIB_PREFIX}memory.${LIB_SUFFIX}" \); then
MOZ_GLUE_PROGRAM_LDFLAGS="$MOZ_GLUE_PROGRAM_LDFLAGS "'$(call EXPAND_LIBNAME_PATH,memory,$(LIBXUL_DIST)/lib)'
fi
if test -n "$GNU_CC"; then
dnl And we need mozglue symbols to be exported.
MOZ_GLUE_PROGRAM_LDFLAGS="$MOZ_GLUE_PROGRAM_LDFLAGS -rdynamic"
fi
if test "$MOZ_LINKER" = 1; then
MOZ_GLUE_PROGRAM_LDFLAGS="$MOZ_GLUE_PROGRAM_LDFLAGS $MOZ_ZLIB_LIBS"
fi
fi
case "${OS_TARGET}" in
Android|WINNT|Darwin)
MOZ_GLUE_IN_PROGRAM=
;;
*)
dnl On !Android !Windows !OSX, we only want to link executables against mozglue
MOZ_GLUE_IN_PROGRAM=1
;;
esac
dnl ========================================================
dnl = Enable dynamic replacement of malloc implementation
@ -7221,7 +7208,6 @@ else
if test -n "$gonkdir"; then
AC_DEFINE(MOZ_MEMORY_GONK)
fi
MOZ_GLUE_LDFLAGS=
;;
*-*linux*)
AC_DEFINE(MOZ_MEMORY_LINUX)
@ -7241,7 +7227,6 @@ else
lib -NOLOGO -OUT:crtdll.obj $WIN32_CRT_LIBS -EXTRACT:$WIN32_CRTDLL_FULLPATH
if grep -q '__imp__\{0,1\}free' crtdll.obj; then
MOZ_CRT=1
MOZ_GLUE_LDFLAGS='-LIBPATH:$(DIST)/lib -NODEFAULTLIB:msvcrt -NODEFAULTLIB:msvcprt -DEFAULTLIB:mozcrt'
fi
rm crtdll.obj
;;
@ -7255,20 +7240,21 @@ AC_SUBST(MOZ_JEMALLOC3)
AC_SUBST(MOZ_NATIVE_JEMALLOC)
AC_SUBST(MOZ_CRT)
export MOZ_CRT
AC_SUBST(MOZ_GLUE_LDFLAGS)
AC_SUBST(MOZ_GLUE_PROGRAM_LDFLAGS)
AC_SUBST(MOZ_GLUE_IN_PROGRAM)
AC_SUBST_LIST(WIN32_CRT_LIBS)
dnl We need to wrap dlopen and related functions on Android because we use
dnl our own linker.
if test "$OS_TARGET" = Android; then
WRAP_LDFLAGS="${WRAP_LDFLAGS} -L$_objdir/dist/lib -lmozglue"
WRAP_LDFLAGS="${WRAP_LDFLAGS} -Wl,--wrap=PR_GetEnv,--wrap=PR_SetEnv"
MOZ_GLUE_WRAP_LDFLAGS="${MOZ_GLUE_WRAP_LDFLAGS} -Wl,--wrap=PR_GetEnv,--wrap=PR_SetEnv"
if test "$MOZ_WIDGET_TOOLKIT" = gonk -a -n "$MOZ_NUWA_PROCESS"; then
WRAP_LDFLAGS="${WRAP_LDFLAGS} -Wl,--wrap=pthread_create,--wrap=epoll_wait,--wrap=poll,--wrap=pthread_cond_timedwait,--wrap=__pthread_cond_timedwait,--wrap=pthread_cond_wait,--wrap=epoll_create,--wrap=epoll_ctl,--wrap=close,--wrap=pthread_key_create,--wrap=pthread_key_delete,--wrap=socketpair,--wrap=pthread_self,--wrap=pthread_mutex_lock,--wrap=pthread_join,--wrap=pipe,--wrap=pipe2,--wrap=tgkill"
MOZ_GLUE_WRAP_LDFLAGS="${MOZ_GLUE_WRAP_LDFLAGS} -Wl,--wrap=pthread_create,--wrap=epoll_wait,--wrap=poll,--wrap=pthread_cond_timedwait,--wrap=__pthread_cond_timedwait,--wrap=pthread_cond_wait,--wrap=epoll_create,--wrap=epoll_ctl,--wrap=close,--wrap=pthread_key_create,--wrap=pthread_key_delete,--wrap=socketpair,--wrap=pthread_self,--wrap=pthread_mutex_lock,--wrap=pthread_join,--wrap=pipe,--wrap=pipe2,--wrap=tgkill"
fi
fi
AC_SUBST_LIST(MOZ_GLUE_WRAP_LDFLAGS)
export MOZ_GLUE_WRAP_LDFLAGS
dnl ========================================================
dnl = Use JS Call tracing
dnl ========================================================
@ -9297,11 +9283,8 @@ ac_configure_args="$ac_configure_args --prefix=$dist"
if test "$MOZ_MEMORY"; then
ac_configure_args="$ac_configure_args --enable-jemalloc"
fi
if test -n "$MOZ_GLUE_LDFLAGS"; then
export MOZ_GLUE_LDFLAGS
fi
if test -n "$MOZ_GLUE_PROGRAM_LDFLAGS"; then
export MOZ_GLUE_PROGRAM_LDFLAGS
if test -n "$MOZ_GLUE_IN_PROGRAM"; then
export MOZ_GLUE_IN_PROGRAM
fi
if test -n "$ZLIB_IN_MOZGLUE"; then
MOZ_ZLIB_LIBS=

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestAudioChannelService',
])
@ -14,10 +14,3 @@ if CONFIG['OS_ARCH'] == 'WINNT':
MOCHITEST_MANIFESTS += ['mochitest.ini']
FAIL_ON_WARNINGS = True
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -10,7 +10,7 @@ XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
if CONFIG['OS_ARCH'] != 'Darwin':
XPCSHELL_TESTS_MANIFESTS += ['unit_ipc/xpcshell.ini']
CppUnitTests([
GeckoCppUnitTests([
'TestCSPParser',
'TestGetURL',
'TestNativeXMLHttpRequest',
@ -38,10 +38,3 @@ MOCHITEST_CHROME_MANIFESTS += [
]
BROWSER_CHROME_MANIFESTS += ['browser.ini']
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestWebGLElementArrayCache',
])
@ -13,10 +13,3 @@ FAIL_ON_WARNINGS = True
LOCAL_INCLUDES += [
'../',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestAudioBuffers',
'TestAudioMixer'
])
@ -14,10 +14,3 @@ FAIL_ON_WARNINGS = True
LOCAL_INCLUDES += [
'..',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestAudioEventTimeline',
])
@ -13,10 +13,3 @@ FAIL_ON_WARNINGS = True
LOCAL_INCLUDES += [
'..',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -1,7 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -4,15 +4,8 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestTXMgr',
])
FAIL_ON_WARNINGS = True
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('winEmbed')
GeckoProgram('winEmbed')
SOURCES += [
'WebBrowserChrome.cpp',
@ -14,8 +14,6 @@ SOURCES += [
XPI_NAME = 'winembed'
DEFINES['XPCOM_GLUE'] = True
RESFILE = 'winEmbed.res'
if CONFIG['GNU_CC']:
@ -36,7 +34,6 @@ DISABLE_STL_WRAPPING = True
USE_LIBS += [
'profdirserviceprovidersa_s',
'xpcomglue',
]
OS_LIBS += [

Просмотреть файл

@ -56,7 +56,7 @@ DISABLE_STL_WRAPPING = True
LOCAL_INCLUDES += [ '../../include', '../../src' ]
USE_LIBS += [ 'libGLESv2' ]
SharedLibrary('libEGL')
GeckoSharedLibrary('libEGL', linkage=None)
RCFILE = SRCDIR + '/libEGL.rc'
DEFFILE = SRCDIR + '/libEGL.def'

Просмотреть файл

@ -223,7 +223,7 @@ else:
'\'%s/lib/%s/dxguid.lib\'' % (CONFIG['MOZ_DIRECTX_SDK_PATH'], CONFIG['MOZ_D3D_CPU_SUFFIX']),
]
SharedLibrary('libGLESv2')
GeckoSharedLibrary('libGLESv2', linkage=None)
RCFILE = SRCDIR + '/libGLESv2.rc'
DEFFILE = SRCDIR + '/libGLESv2.def'

Просмотреть файл

@ -4,13 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestLineBreak',
])
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -6,25 +6,11 @@
XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
SimplePrograms([
GeckoSimplePrograms([
'NormalizationTest',
'UnicharSelfTest',
])
USE_STATIC_LIBS = True
], msvcrt='static')
USE_LIBS += [
'mozalloc',
'nspr',
'unicharutil_external_s',
'xul',
]
if CONFIG['OS_ARCH'] == 'WINNT':
USE_LIBS += [
'xpcomglue_staticruntime_s',
]
else:
USE_LIBS += [
'xpcomglue_s',
]

Просмотреть файл

@ -6,10 +6,6 @@ ifneq ($(dir $(PROGRAM)),./)
GENERATED_DIRS = $(dir $(PROGRAM))
endif
ifeq (android,$(MOZ_WIDGET_TOOLKIT))
WRAP_LDFLAGS =
endif
ifndef MOZ_WINCONSOLE
ifdef MOZ_DEBUG
MOZ_WINCONSOLE = 1

Просмотреть файл

@ -4,13 +4,19 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program(CONFIG['MOZ_CHILD_PROCESS_NAME'])
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
Program(CONFIG['MOZ_CHILD_PROCESS_NAME'])
SOURCES += [
'MozillaRuntimeMainAndroid.cpp',
]
else:
kwargs = {
'linkage': None,
}
if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
kwargs['msvcrt'] = 'static'
GeckoProgram(CONFIG['MOZ_CHILD_PROCESS_NAME'], **kwargs)
SOURCES += [
'MozillaRuntimeMain.cpp',
]
@ -42,7 +48,6 @@ if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
'nss3.dll',
'xul.dll'
]
USE_STATIC_LIBS = True
if CONFIG['_MSC_VER']:
# Always enter a Windows program through wmain, whether or not we're
@ -62,7 +67,7 @@ LDFLAGS += [CONFIG['MOZ_ALLOW_HEAP_EXECUTE_FLAGS']]
if CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['GNU_CC']:
LDFLAGS += ['/HEAP:0x40000']
# Windows builds have dll linkage warnings due to USE_STATIC_LIBS
# Windows builds have dll linkage warnings due to msvcrt static linkage
if CONFIG['OS_ARCH'] != 'WINNT':
FAIL_ON_WARNINGS = True

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('ipdlunittest')
GeckoProgram('ipdlunittest', linkage='dependent')
SOURCES += [
'TestIPDL.cpp',
@ -18,10 +18,3 @@ LOCAL_INCLUDES += [
if CONFIG['_MSC_VER']:
WIN32_EXE_LDFLAGS += ['-ENTRY:wmainCRTStartup']
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -3113,7 +3113,6 @@ if test "$MOZ_MEMORY"; then
;;
*-mingw*)
AC_DEFINE(MOZ_MEMORY_WINDOWS)
# the interesting bits will get passed down in MOZ_GLUE_LDFLAGS
;;
*)
AC_MSG_ERROR([--enable-jemalloc not supported on ${target}])
@ -3122,8 +3121,8 @@ if test "$MOZ_MEMORY"; then
fi
AC_SUBST(MOZ_MEMORY)
AC_SUBST(MOZ_CRT)
AC_SUBST(MOZ_GLUE_LDFLAGS)
AC_SUBST(MOZ_GLUE_PROGRAM_LDFLAGS)
AC_SUBST(MOZ_GLUE_IN_PROGRAM)
AC_SUBST_LIST(MOZ_GLUE_WRAP_LDFLAGS)
dnl ========================================================
dnl = Use malloc wrapper lib

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('gdb-tests')
GeckoProgram('gdb-tests', linkage=None)
UNIFIED_SOURCES += [
'gdb-tests.cpp',

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('jsapi-tests')
GeckoProgram('jsapi-tests', linkage=None)
UNIFIED_SOURCES += [
'selfTest.cpp',

Просмотреть файл

@ -440,7 +440,7 @@ HostSimplePrograms([
# JS shell would like to link to the static library.
if CONFIG['JS_SHARED_LIBRARY']:
SharedLibrary('js')
GeckoSharedLibrary('js', linkage=None)
SHARED_LIBRARY_NAME = CONFIG['JS_LIBRARY_NAME']
SDK_LIBRARY = True
else:

Просмотреть файл

@ -5,7 +5,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
if CONFIG['JS_SHELL_NAME']:
Program(CONFIG['JS_SHELL_NAME'])
GeckoProgram(CONFIG['JS_SHELL_NAME'], linkage=None)
if CONFIG['JS_BUNDLED_EDITLINE']:
USE_LIBS += ['editline']
USE_LIBS += ['static:js']

Просмотреть файл

@ -6,7 +6,7 @@
FAIL_ON_WARNINGS = True
Program('xpcshell')
GeckoProgram('xpcshell', linkage='dependent')
SOURCES += [
'xpcshell.cpp',
@ -35,10 +35,3 @@ if CONFIG['_MSC_VER']:
if CONFIG['OS_ARCH'] == 'WINNT':
RCINCLUDE = 'xpcshell.rc'
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -14,10 +14,3 @@ TEST_DIRS += [
]
XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -5,7 +5,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
if CONFIG['GKMEDIAS_SHARED_LIBRARY']:
SharedLibrary('gkmedias')
GeckoSharedLibrary('gkmedias', linkage=None)
USE_LIBS += [
'mozalloc',
'nspr',

Просмотреть файл

@ -9,7 +9,3 @@ CLEARKEY_CDM_FILES = \
$(SHARED_LIBRARY) \
clearkey.info \
$(NULL)
MOZ_GLUE_LDFLAGS =
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -4,12 +4,12 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'test_tone'
])
if CONFIG['OS_TARGET'] != 'Android':
CppUnitTests([
GeckoCppUnitTests([
'test_audio',
'test_latency',
'test_sanity'
@ -44,13 +44,6 @@ else:
'speex',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
if CONFIG['OS_TARGET'] == 'Darwin':
OS_LIBS += [
'-framework AudioUnit',

Просмотреть файл

@ -5,7 +5,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
if CONFIG['OS_TARGET'] != 'WINNT' and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
CppUnitTests([
GeckoCppUnitTests([
'buffered_stun_socket_unittest',
'nrappkit_unittest',
'rlogringbuffer_unittest',
@ -19,12 +19,12 @@ if CONFIG['OS_TARGET'] != 'WINNT' and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
# Bug 1037618 - Cross-tree (network related?) failures on OSX
if CONFIG['OS_TARGET'] != 'Darwin':
CppUnitTests([
GeckoCppUnitTests([
'ice_unittest',
])
if CONFIG['MOZ_SCTP']:
CppUnitTests([
GeckoCppUnitTests([
'sctp_unittest',
])
@ -88,14 +88,10 @@ LOCAL_INCLUDES += [
USE_LIBS += [
'/media/webrtc/trunk/testing/gtest_gtest/gtest',
'mozalloc',
'mtransport_s',
'nicer',
'nrappkit',
'nspr',
'nss',
'xpcomglue_s',
'xul',
]
if not CONFIG['MOZ_NATIVE_NSS'] and not CONFIG['MOZ_FOLD_LIBS']:

Просмотреть файл

@ -5,7 +5,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
if CONFIG['OS_TARGET'] != 'WINNT' and CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
CppUnitTests([
GeckoCppUnitTests([
'mediaconduit_unittests',
'mediapipeline_unittest',
'sdp_unittests',
@ -94,14 +94,10 @@ USE_LIBS += [
'/media/webrtc/signalingtest/signaling_sipcc/sipcc',
'/media/webrtc/trunk/testing/gtest_gtest/gtest',
'gkmedias',
'mozalloc',
'mtransport_s',
'nksrtp_s',
'nspr',
'nss',
'webrtc',
'xpcomglue_s',
'xul',
'yuv',
'zlib',
]

Просмотреть файл

@ -3,6 +3,6 @@
# You can obtain one at http://mozilla.org/MPL/2.0/.
STLFLAGS =
ifdef MOZ_GLUE_PROGRAM_LDFLAGS
ifdef MOZ_GLUE_IN_PROGRAM
DIST_INSTALL = 1
endif

Просмотреть файл

@ -48,7 +48,7 @@ else:
'mozjemalloc',
]
if CONFIG['MOZ_GLUE_PROGRAM_LDFLAGS']:
if CONFIG['MOZ_GLUE_IN_PROGRAM']:
SDK_LIBRARY = True
# Keep jemalloc separated when mozglue is statically linked

Просмотреть файл

@ -51,10 +51,7 @@
* even more especially when these types come from XPCOM or other parts of the
* Mozilla codebase.
* It is recommended to add the following to a replace-malloc implementation's
* Makefile.in:
* MOZ_GLUE_LDFLAGS = # Don't link against mozglue
* WRAP_LDFLAGS = # Never wrap malloc function calls with -Wl,--wrap
* and the following to the implementation's moz.build:
* moz.build:
* DISABLE_STL_WRAPPING = True # Avoid STL wrapping
*
* If your replace-malloc implementation lives under memory/replace, these

Просмотреть файл

@ -2,7 +2,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.
ifdef MOZ_GLUE_PROGRAM_LDFLAGS
ifdef MOZ_GLUE_IN_PROGRAM
DIST_INSTALL = 1
endif

Просмотреть файл

@ -40,7 +40,7 @@ Library('jemalloc')
FORCE_STATIC_LIB = True
if CONFIG['MOZ_GLUE_PROGRAM_LDFLAGS']:
if CONFIG['MOZ_GLUE_IN_PROGRAM']:
SDK_LIBRARY = True
if CONFIG['_MSC_VER']:

Просмотреть файл

@ -60,7 +60,7 @@ else:
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
Library('mozalloc')
else:
SharedLibrary('mozalloc')
GeckoSharedLibrary('mozalloc', linkage=None)
SDK_LIBRARY = True
# The strndup declaration in string.h is in an ifdef __USE_GNU section

Просмотреть файл

@ -4,13 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestVolatileBuffer',
])
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -1,8 +0,0 @@
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Disable mozglue.
WRAP_LDFLAGS =
MOZ_GLUE_LDFLAGS=

Просмотреть файл

@ -1,6 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS = # Don't link against mozglue
WRAP_LDFLAGS = # Never wrap malloc function calls with -Wl,--wrap

Просмотреть файл

@ -1,6 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS = # Don't link against mozglue
WRAP_LDFLAGS = # Never wrap malloc function calls with -Wl,--wrap

Просмотреть файл

@ -2,9 +2,5 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Disable mozglue.
WRAP_LDFLAGS =
MOZ_GLUE_LDFLAGS=
# Avoid Lock_impl code depending on mozilla::Logger
MOZ_DEBUG_ENABLE_DEFS=

Просмотреть файл

@ -2,11 +2,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Disable mozglue.
WRAP_LDFLAGS =
MOZ_GLUE_LDFLAGS=
MOZ_GLUE_PROGRAM_LDFLAGS=
include $(topsrcdir)/mozglue/build/replace_malloc.mk
ifndef CROSS_COMPILE

Просмотреть файл

@ -1,12 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.
# in order to prevent rules.mk from trying to link to libraries that are
# not available to MFBT, we have to reset these MOZ_GLUE*_LDFLAGS before including it
# and LIBS_ after including it. For WRAP_LDFLAGS, it shouldn't matter.
# See later comments in bug 732875.
MOZ_GLUE_PROGRAM_LDFLAGS=
MOZ_GLUE_LDFLAGS =
WRAP_LDFLAGS=

Просмотреть файл

@ -8,10 +8,6 @@
# would only be used by our build system and should not itself be included in a
# Mozilla distribution.
# Don't link the against libmozglue because we don't need it.
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
HOST_CFLAGS += \
-DNO_SIGN_VERIFY \
$(DEFINES) \

Просмотреть файл

@ -8,8 +8,6 @@ DIST_INSTALL = 1
# For FORCE_SHARED_LIB
include $(topsrcdir)/config/config.mk
MOZ_GLUE_LDFLAGS = # Don't link against ourselves
ifeq (WINNT,$(OS_TARGET))
mozglue.def: mozglue.def.in $(GLOBAL_DEPS)
$(call py_action,preprocessor,$(if $(MOZ_REPLACE_MALLOC),-DMOZ_REPLACE_MALLOC) $(ACDEFINES) $< -o $@)
@ -31,7 +29,3 @@ OS_LDFLAGS += -Wl,-version-script,$(srcdir)/arm-eabi-filter
endif
endif
ifeq (Android, $(OS_TARGET))
WRAP_LDFLAGS := $(filter -Wl%,$(WRAP_LDFLAGS))
endif

Просмотреть файл

@ -83,3 +83,5 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
]
DEFINES['IMPL_MFBT'] = True
LDFLAGS += CONFIG['MOZ_GLUE_WRAP_LDFLAGS']

Просмотреть файл

@ -2,12 +2,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.
ifdef MOZ_LINKER
# Only link against the linker, not mozglue
MOZ_GLUE_PROGRAM_LDFLAGS =
MOZ_GLUE_LDFLAGS =
endif
include $(topsrcdir)/config/rules.mk
ifdef MOZ_LINKER

Просмотреть файл

@ -6,6 +6,6 @@
DISABLE_STL_WRAPPING = True
CppUnitTests([
GeckoCppUnitTests([
'ShowSSEConfig',
])
], linkage=None)

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('TestStreamConv')
GeckoProgram('TestStreamConv', linkage='dependent')
UNIFIED_SOURCES += [
'Converters.cpp',
@ -19,10 +19,3 @@ if CONFIG['OS_ARCH'] == 'WINNT':
LDFLAGS += ['-mconsole']
else:
LDFLAGS += ['-SUBSYSTEM:CONSOLE']
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -16,7 +16,7 @@ XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
if CONFIG['OS_ARCH'] != 'Darwin':
XPCSHELL_TESTS_MANIFESTS += ['unit_ipc/xpcshell.ini']
SimplePrograms([
GeckoSimplePrograms([
'PropertiesTest',
'ReadNTLM',
'TestBlockingSocket',
@ -58,11 +58,4 @@ RESOURCE_FILES += [
'urlparse_unx.dat',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
CXXFLAGS += CONFIG['TK_CFLAGS']

Просмотреть файл

@ -1154,22 +1154,6 @@ INSTALL_TARGETS += %(prefix)s
build_target = self._build_target_for_obj(obj)
self._compile_graph[build_target]
# Until MOZ_GLUE_LDFLAGS/MOZ_GLUE_PROGRAM_LDFLAGS are properly
# handled in moz.build world, assume any program or shared library
# we build depends on it.
if obj.KIND == 'target' and not isinstance(obj, StaticLibrary) and \
build_target not in ('mozglue/build/target',
'mozglue/crt/target') and \
not obj.config.substs.get('JS_STANDALONE') and \
(not isinstance(obj, SharedLibrary) or
obj.basename != 'clang-plugin'):
if obj.config.substs.get('MOZ_CRT'):
self._compile_graph[build_target].add('mozglue/crt/target')
else:
self._compile_graph[build_target].add('mozglue/build/target')
if obj.config.substs.get('MOZ_MEMORY'):
self._compile_graph[build_target].add('memory/build/target')
for lib in obj.linked_libraries:
if not isinstance(lib, ExternalLibrary):
self._compile_graph[build_target].add(

Просмотреть файл

@ -4,17 +4,10 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('rdfcat')
GeckoProgram('rdfcat', linkage='dependent')
SOURCES += [
'rdfcat.cpp',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
CXXFLAGS += CONFIG['TK_CFLAGS']

Просмотреть файл

@ -4,15 +4,8 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('rdfpoll')
GeckoProgram('rdfpoll', linkage='dependent')
SOURCES += [
'rdfpoll.cpp',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,17 +4,10 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('triplescat')
GeckoProgram('triplescat', linkage='dependent')
SOURCES += [
'triplescat.cpp',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
CXXFLAGS += CONFIG['TK_CFLAGS']

Просмотреть файл

@ -4,13 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestCertDB',
])
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -6,12 +6,12 @@
FAIL_ON_WARNINGS = True
SimplePrograms([
GeckoSimplePrograms([
'BadCertServer',
'ClientAuthServer',
'GenerateOCSPResponse',
'OCSPStaplingServer',
])
], linkage=None)
LOCAL_INCLUDES += [
'../lib',

Просмотреть файл

@ -1,9 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
ifeq ($(OS_ARCH),WINNT)
MOZ_GLUE_LDFLAGS =
endif
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -1,5 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
MOZ_GLUE_LDFLAGS =

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'TestStartupCache',
])
@ -12,10 +12,3 @@ EXTRA_COMPONENTS += [
'TestStartupCacheTelemetry.js',
'TestStartupCacheTelemetry.manifest',
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -6,7 +6,7 @@
XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
CppUnitTests([
GeckoCppUnitTests([
'test_AsXXX_helpers',
'test_async_callbacks_with_spun_event_loops',
'test_asyncStatementExecution_transaction',
@ -24,7 +24,7 @@ CppUnitTests([
if CONFIG['MOZ_DEBUG'] and CONFIG['OS_ARCH'] not in ('WINNT', 'Darwin'):
# FIXME bug 523392: test_deadlock_detector doesn't like Windows
# FIXME bug 523378: also fails on OS X
CppUnitTests([
GeckoCppUnitTests([
'test_deadlock_detector',
])
@ -35,9 +35,5 @@ LOCAL_INCLUDES += [
FAIL_ON_WARNINGS = True
USE_LIBS += [
'mozalloc',
'nspr',
'sqlite',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('ssltunnel')
GeckoProgram('ssltunnel', linkage=None)
SOURCES += [
'ssltunnel.cpp',

Просмотреть файл

@ -1,5 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_PROGRAM_LDFLAGS =

Просмотреть файл

@ -9,5 +9,3 @@ INSTALL_TARGETS += LIB_1
LIB_3_FILES = $(SHARED_LIBRARY)
LIB_3_DEST = $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)/chrome
INSTALL_TARGETS += LIB_3
MOZ_GLUE_LDFLAGS =

Просмотреть файл

@ -4,11 +4,6 @@
DIST_PROGRAM = maintenanceservice$(BIN_SUFFIX)
# Don't link the maintenanceservice against mozglue.dll. See bug 687139 and
# bug 725876
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
ifndef MOZ_WINCONSOLE
ifdef MOZ_DEBUG
MOZ_WINCONSOLE = 1

Просмотреть файл

@ -4,19 +4,12 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CppUnitTests([
GeckoCppUnitTests([
'test_IHistory',
])
FAIL_ON_WARNINGS = True
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]
if CONFIG['JS_SHARED_LIBRARY']:
USE_LIBS += [
'js',

Просмотреть файл

@ -1,5 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =

Просмотреть файл

@ -5,10 +5,6 @@
ifneq ($(OS_TARGET),Android)
DIST_PROGRAM = crashreporter$(BIN_SUFFIX)
# Don't link the updater against libmozglue.
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
endif
ifeq ($(OS_ARCH),WINNT)

Просмотреть файл

@ -1,7 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOZ_GLUE_LDFLAGS =
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -17,7 +17,7 @@ UNIFIED_SOURCES += [
'nsTestCrasher.cpp',
]
SharedLibrary('testcrasher')
GeckoSharedLibrary('testcrasher')
EXTRA_JS_MODULES += [
'CrashTestUtils.jsm',
@ -36,10 +36,3 @@ LOCAL_INCLUDES += [
]
include('/toolkit/crashreporter/crashreporter.mozbuild')
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -11,10 +11,10 @@ def Libxul(name):
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
# This is going to be a framework named "XUL", not an ordinary library named
# "libxul.dylib"
Framework(name)
GeckoFramework(name, linkage=None)
SHARED_LIBRARY_NAME = 'XUL'
else:
SharedLibrary(name)
GeckoSharedLibrary(name, linkage=None)
SHARED_LIBRARY_NAME = 'xul'
DELAYLOAD_DLLS += [

Просмотреть файл

@ -60,8 +60,6 @@ INI_TEST_FILES = \
TestAUSReadStrings3.ini \
$(NULL)
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
MOZ_WINCONSOLE = 1
endif # Not Android

Просмотреть файл

@ -3,15 +3,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Don't link the updater against libmozglue. See bug 687139
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
ifeq (gonk,$(MOZ_WIDGET_TOOLKIT)) #{
# clear out all the --wrap flags and remove dependency on mozglue for Gonk
WRAP_LDFLAGS :=
endif #}
ifndef MOZ_WINCONSOLE
ifdef MOZ_DEBUG
MOZ_WINCONSOLE = 1

Просмотреть файл

@ -3,10 +3,3 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
PROGRAMS_DEST = $(DEPTH)/_tests/testing/mochitest/chrome/$(relativesrcdir)
include $(topsrcdir)/config/rules.mk
# Don't create a dependency on mozglue, which is impossible (difficult?)
# to dynamically link into our executable, as we copy it to arbitrary locations.
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =

Просмотреть файл

@ -24,7 +24,7 @@ SimplePrograms([
'tmstats',
], ext='.c')
SimplePrograms([
GeckoSimplePrograms([
'bloatblame',
'leaksoup',
])
@ -32,10 +32,3 @@ SimplePrograms([
RESOURCE_FILES += [
'spacetrace.css'
]
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -16,9 +16,9 @@ if CONFIG['OS_ARCH'] != 'Darwin':
if not CONFIG['MOZ_JSDOWNLOADS']:
XPCSHELL_TESTS_MANIFESTS += ['unit_ipc/xpcshell.ini']
SimplePrograms([
GeckoSimplePrograms([
'WriteArgument',
])
], linkage=None)
USE_LIBS += [
'nspr',

Просмотреть файл

@ -4,7 +4,9 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Program('webapprt-stub')
# mozglue is statically linked into GeckoPrograms on gtk builds, so
# we can use GeckoProgram, contrary to other platforms.
GeckoProgram('webapprt-stub')
SOURCES += [
'webapprt.cpp',
@ -12,8 +14,6 @@ SOURCES += [
FAIL_ON_WARNINGS = True
DEFINES['XPCOM_GLUE'] = True
GENERATED_INCLUDES += ['/build']
LOCAL_INCLUDES += [
'/toolkit/xre',
@ -21,10 +21,6 @@ LOCAL_INCLUDES += [
'/xpcom/build',
]
USE_LIBS += [
'xpcomglue',
]
DISABLE_STL_WRAPPING = True
CXXFLAGS += CONFIG['TK_CFLAGS']

Просмотреть файл

@ -6,11 +6,6 @@
# shouldn't get 755 perms need $(IFLAGS1) for either way of calling nsinstall.
NSDISTMODE = copy
# Don't create a dependency on mozglue, which is impossible (difficult?)
# to dynamically link into our executable, as we copy it to arbitrary locations.
MOZ_GLUE_LDFLAGS =
MOZ_GLUE_PROGRAM_LDFLAGS =
PROGRAMS_DEST = $(DIST)/bin
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -4,6 +4,9 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Can't use GeckoProgram, because we don't want to create a dependency on
# mozglue, which is impossible (difficult?) to dynamically link into our
# executable, as we copy it to arbitrary locations.
Program('webapprt-stub')
SOURCES += [

Просмотреть файл

@ -2,10 +2,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.
# Don't create a dependency on mozglue, which is impossible (difficult?)
# to dynamically link into our executable, as we copy it to arbitrary locations.
MOZ_GLUE_LDFLAGS =
ifndef MOZ_WINCONSOLE
ifdef MOZ_DEBUG
MOZ_WINCONSOLE = 1

Просмотреть файл

@ -4,6 +4,9 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Can't use GeckoProgram, because we don't want to create a dependency on
# mozglue, which is impossible (difficult?) to dynamically link into our
# executable, as we copy it to arbitrary locations.
Program('webapprt-stub')
SOURCES += [

Просмотреть файл

@ -8,7 +8,7 @@ XPCSHELL_TESTS_MANIFESTS += ['unit/xpcshell.ini']
MOCHITEST_MANIFESTS += ['mochitest.ini']
MOCHITEST_CHROME_MANIFESTS += ['chrome.ini']
CppUnitTests([
GeckoCppUnitTests([
'TestAppShellSteadyState',
])
@ -23,10 +23,3 @@ FAIL_ON_WARNINGS = True
# Test disabled because it requires the internal API. Re-enabling this test
# is bug 652123.
# CPP_UNIT_TESTS += ['TestChromeMargin']
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,13 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
SimplePrograms([
GeckoSimplePrograms([
'TestXPTCInvoke',
])
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Просмотреть файл

@ -4,13 +4,6 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
SimplePrograms([
GeckoSimplePrograms([
'TestInterfaceInfo'
])
USE_LIBS += [
'mozalloc',
'nspr',
'xpcomglue_s',
'xul',
]

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше