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
parent 6bcd36f9cd
commit d667f4bb59
109 changed files with 318 additions and 658 deletions

View File

@ -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

View File

@ -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',

View File

@ -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':

View File

@ -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

View File

@ -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']:

View File

@ -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 =

View File

@ -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 =

View File

@ -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

View File

@ -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.

View File

@ -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

View File

@ -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')

View File

@ -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

View File

@ -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

View File

@ -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 =

View File

@ -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 =

View File

@ -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
#

View File

@ -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

View File

@ -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 += [

View File

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

View File

@ -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=

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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

View File

@ -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',
]

View File

@ -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 += [

View File

@ -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'

View File

@ -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'

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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

View File

@ -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

View File

@ -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',
]

View File

@ -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

View File

@ -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',

View File

@ -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',

View File

@ -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:

View File

@ -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']

View File

@ -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',
]

View File

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

View File

@ -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',

View File

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

View File

@ -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',

View File

@ -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']:

View File

@ -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',
]

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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']:

View File

@ -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

View File

@ -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',
]

View File

@ -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=

View File

@ -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

View File

@ -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

View File

@ -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=

View File

@ -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

View File

@ -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=

View File

@ -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) \

View File

@ -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

View File

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

View File

@ -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

View File

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

View File

@ -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',
]

View File

@ -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']

View File

@ -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(

View File

@ -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']

View File

@ -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',
]

View File

@ -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']

View File

@ -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',
]

View File

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

View File

@ -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

View File

@ -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 =

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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',

View File

@ -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 =

View File

@ -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 =

View File

@ -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

View File

@ -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',

View File

@ -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 =

View File

@ -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)

View File

@ -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

View File

@ -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',
]

View File

@ -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 += [

View File

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

View File

@ -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

View File

@ -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 =

View File

@ -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',
]

View File

@ -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',

View File

@ -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']

View File

@ -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

View File

@ -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 += [

View File

@ -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

View File

@ -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 += [

View File

@ -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',
]

View File

@ -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',
]

View File

@ -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',
]

Some files were not shown because too many files have changed in this diff Show More