# -*- 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/. # On win we build two glue libs - glue linked to crt dlls here and in staticruntime we build # a statically linked glue lib. if CONFIG['OS_ARCH'] == 'WINNT': DIRS += ['staticruntime'] include('../objs.mozbuild') SOURCES += xpcom_glue_src_cppsrcs SOURCES += [ '../nsStringAPI.cpp', 'nsXPCOMGlue.cpp', ] Library('xpcomglue') EXPORTS += [ 'nsXPCOMGlue.h', ] SDK_LIBRARY = True FORCE_STATIC_LIB = True if CONFIG['_MSC_VER']: DEFINES['_USE_ANSI_CPP'] = True # Don't include directives about which CRT to use CFLAGS += ['-Zl'] CXXFLAGS += ['-Zl'] DEFINES['XPCOM_GLUE'] = True LOCAL_INCLUDES += [ '../../build', '../../threads', ] # Don't use STL wrappers here (i.e. wrapped ); they require mozalloc DISABLE_STL_WRAPPING = True if CONFIG['GNU_CXX']: CXXFLAGS += ['-Wshadow'] # Include fallible for third party code using the xpcom glue USE_LIBS += [ 'fallible', ] # Force to build a static library only NO_EXPAND_LIBS = True DIST_INSTALL = True if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'): CXXFLAGS += CONFIG['GLIB_CFLAGS']