diff --git a/build/win32/mozilla-dos2unix.py b/build/win32/mozilla-dos2unix.py deleted file mode 100755 index bfdbd6f7f4b..00000000000 --- a/build/win32/mozilla-dos2unix.py +++ /dev/null @@ -1,73 +0,0 @@ -#!/usr/bin/python - -import sys -if not sys.platform == "win32": - raise Exception("This script was only meant for Windows.") - -import os - -def dos2unix(path): - print "dos2unix: %s" % path - - inf = open(path, "r") - data = inf.read() - inf.close() - - - outf = open(path, "wb") - outf.write(data) - outf.close() - -adminfiles = [ - "Root", - "Repository", - "Entries", - "Entries.Log", - "Entries.Static", - "Tag", - "Notify", - "Template" - ] - -def walkdirectory(path): - if not os.path.exists(os.path.join(path, "CVS")): - return - - print "Directory: %s" % path - - for f in adminfiles: - cvsf = os.path.join(path, "CVS", f) - if os.path.exists(cvsf): - dos2unix(cvsf) - - entries = open(os.path.join(path, "CVS", "Entries"), "r") - for entry in entries: - if entry == "D\n": - continue - - (type, filename, rev, date, flags, extra) = entry.split('/') - if type == "D" or flags == "-kb" or rev[0] == "-": - continue - - dos2unix(os.path.join(path, filename)) - - # Now walk subdirectories - for entry in os.listdir(path): - subdir = os.path.join(path, entry) - if os.path.isdir(subdir): - walkdirectory(subdir) - -topsrcdir = os.sep.join(os.path.abspath(__file__).split(os.sep)[:-3]) - -print """This command will convert the source tree at -%s -to an MSYS-compatible (unix mode) source tree. You can run this -command multiple times safely. Are you sure you want to continue (Y/N)? """ % topsrcdir, -sys.stdout.flush() -print - -ask = raw_input() -if len(ask) == 0 or (ask[0] != "y" and ask[0] != "Y"): - raise Exception("User aborted action.") - -walkdirectory(topsrcdir) diff --git a/config/autoconf.mk.in b/config/autoconf.mk.in index 54f44a796e4..9c22fe2d6e1 100644 --- a/config/autoconf.mk.in +++ b/config/autoconf.mk.in @@ -140,6 +140,7 @@ MOZ_UPDATE_PACKAGING = @MOZ_UPDATE_PACKAGING@ MOZ_DISABLE_PARENTAL_CONTROLS = @MOZ_DISABLE_PARENTAL_CONTROLS@ NS_ENABLE_TSF = @NS_ENABLE_TSF@ MOZ_SPELLCHECK = @MOZ_SPELLCHECK@ +MOZ_ANDROID_HISTORY = @MOZ_ANDROID_HISTORY@ MOZ_JAVA_COMPOSITOR = @MOZ_JAVA_COMPOSITOR@ MOZ_PROFILELOCKING = @MOZ_PROFILELOCKING@ MOZ_FEEDS = @MOZ_FEEDS@ diff --git a/config/rules.mk b/config/rules.mk index d1b969becd4..4b8ae1f9f7c 100644 --- a/config/rules.mk +++ b/config/rules.mk @@ -122,6 +122,19 @@ testxpcobjdir = $(DEPTH)/_tests/xpcshell ifdef ENABLE_TESTS +# Add test directories to the regular directories list. TEST_DIRS should +# arguably have the same status as TOOL_DIRS and other *_DIRS variables. It is +# coded this way until Makefiles stop using the "ifdef ENABLE_TESTS; DIRS +=" +# convention. +# +# The current developer workflow expects tests to be updated when processing +# the default target. If we ever change this implementation, the behavior +# should be preserved or the change should be widely communicated. A +# consequence of not processing test dir targets during the default target is +# that changes to tests may not be updated and code could assume to pass +# locally against non-current test code. +DIRS += $(TEST_DIRS) + ifdef XPCSHELL_TESTS ifndef relativesrcdir $(error Must define relativesrcdir when defining XPCSHELL_TESTS.) diff --git a/configure.in b/configure.in index f1a05c2fd58..1efc17257ed 100644 --- a/configure.in +++ b/configure.in @@ -4681,7 +4681,7 @@ NECKO_PROTOCOLS_DEFAULT="about data file ftp http res viewsource websocket wyciw USE_ARM_KUSER= BUILD_CTYPES=1 MOZ_USE_NATIVE_POPUP_WINDOWS= - +MOZ_ANDROID_HISTORY= case "${target}" in *darwin*) @@ -8465,6 +8465,7 @@ AC_SUBST(MOZ_D3DCOMPILER_CAB) AC_SUBST(MOZ_D3DX9_DLL) AC_SUBST(MOZ_D3DCOMPILER_DLL) +AC_SUBST(MOZ_ANDROID_HISTORY) AC_SUBST(ENABLE_STRIP) AC_SUBST(PKG_SKIP_STRIP) AC_SUBST(USE_ELF_DYNSTR_GC) diff --git a/embedding/Makefile.in b/embedding/Makefile.in index 0502b6cb83a..da2e38fee40 100644 --- a/embedding/Makefile.in +++ b/embedding/Makefile.in @@ -53,4 +53,13 @@ XPCSHELL_TESTS = tests/unit DIRS += test endif +<<<<<<< local +======= +ifeq ($(MOZ_WIDGET_TOOLKIT),android) +ifeq ($(MOZ_BUILD_APP),mobile/xul) +DIRS += android +endif +endif + +>>>>>>> other include $(topsrcdir)/config/rules.mk diff --git a/js/src/config/rules.mk b/js/src/config/rules.mk index d1b969becd4..4b8ae1f9f7c 100644 --- a/js/src/config/rules.mk +++ b/js/src/config/rules.mk @@ -122,6 +122,19 @@ testxpcobjdir = $(DEPTH)/_tests/xpcshell ifdef ENABLE_TESTS +# Add test directories to the regular directories list. TEST_DIRS should +# arguably have the same status as TOOL_DIRS and other *_DIRS variables. It is +# coded this way until Makefiles stop using the "ifdef ENABLE_TESTS; DIRS +=" +# convention. +# +# The current developer workflow expects tests to be updated when processing +# the default target. If we ever change this implementation, the behavior +# should be preserved or the change should be widely communicated. A +# consequence of not processing test dir targets during the default target is +# that changes to tests may not be updated and code could assume to pass +# locally against non-current test code. +DIRS += $(TEST_DIRS) + ifdef XPCSHELL_TESTS ifndef relativesrcdir $(error Must define relativesrcdir when defining XPCSHELL_TESTS.) diff --git a/toolkit/components/places/Database.cpp b/toolkit/components/places/Database.cpp index 9b8b4bc3f65..8ec74099726 100644 --- a/toolkit/components/places/Database.cpp +++ b/toolkit/components/places/Database.cpp @@ -297,6 +297,12 @@ Database::~Database() nsresult Database::Init() { +#ifdef MOZ_ANDROID_HISTORY + // Currently places has deeply weaved it way throughout the gecko codebase. + // Here we disable all database creation and loading of places. + return NS_ERROR_NOT_IMPLEMENTED; +#endif + MOZ_ASSERT(NS_IsMainThread()); nsCOMPtr storage = diff --git a/toolkit/components/places/Makefile.in b/toolkit/components/places/Makefile.in index 8b48b3bab03..8534eb83986 100644 --- a/toolkit/components/places/Makefile.in +++ b/toolkit/components/places/Makefile.in @@ -101,7 +101,7 @@ CPPSRCS = \ LOCAL_INCLUDES += -I$(srcdir)/../build -ifeq ($(OS_TARGET),Android) +ifdef MOZ_ANDROID_HISTORY CPPSRCS += nsAndroidHistory.cpp LOCAL_INCLUDES += \ -I$(topsrcdir)/docshell/base \ @@ -109,10 +109,6 @@ LOCAL_INCLUDES += \ $(NULL) endif - -# This is the default value. Must be in sync with the one defined in SQLite. -DEFINES += -DSQLITE_DEFAULT_PAGE_SIZE=32768 - EXTRA_COMPONENTS = \ toolkitplaces.manifest \ nsLivemarkService.js \ diff --git a/toolkit/components/places/nsPlacesModule.cpp b/toolkit/components/places/nsPlacesModule.cpp index 14c216e6597..e47c6c2d0ed 100644 --- a/toolkit/components/places/nsPlacesModule.cpp +++ b/toolkit/components/places/nsPlacesModule.cpp @@ -10,7 +10,7 @@ #include "History.h" #include "nsDocShellCID.h" -#ifdef ANDROID +#ifdef MOZ_ANDROID_HISTORY #include "nsAndroidHistory.h" #endif @@ -24,13 +24,13 @@ NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsNavBookmarks, nsNavBookmarks::GetSingleton) NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsFaviconService, nsFaviconService::GetSingleton) -#ifdef ANDROID +NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsPlacesImportExportService, + nsPlacesImportExportService::GetSingleton) +#ifdef MOZ_ANDROID_HISTORY NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsAndroidHistory, nsAndroidHistory::GetSingleton) #else NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(History, History::GetSingleton) #endif -NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsPlacesImportExportService, - nsPlacesImportExportService::GetSingleton) NS_GENERIC_FACTORY_CONSTRUCTOR(nsAnnoProtocolHandler) NS_DEFINE_NAMED_CID(NS_NAVHISTORYSERVICE_CID); @@ -38,12 +38,13 @@ NS_DEFINE_NAMED_CID(NS_ANNOTATIONSERVICE_CID); NS_DEFINE_NAMED_CID(NS_ANNOPROTOCOLHANDLER_CID); NS_DEFINE_NAMED_CID(NS_NAVBOOKMARKSSERVICE_CID); NS_DEFINE_NAMED_CID(NS_FAVICONSERVICE_CID); -#ifdef ANDROID +NS_DEFINE_NAMED_CID(NS_PLACESIMPORTEXPORTSERVICE_CID); + +#ifdef MOZ_ANDROID_HISTORY NS_DEFINE_NAMED_CID(NS_ANDROIDHISTORY_CID); #else NS_DEFINE_NAMED_CID(NS_HISTORYSERVICE_CID); #endif -NS_DEFINE_NAMED_CID(NS_PLACESIMPORTEXPORTSERVICE_CID); const mozilla::Module::CIDEntry kPlacesCIDs[] = { { &kNS_NAVHISTORYSERVICE_CID, false, NULL, nsNavHistoryConstructor }, @@ -51,7 +52,7 @@ const mozilla::Module::CIDEntry kPlacesCIDs[] = { { &kNS_ANNOPROTOCOLHANDLER_CID, false, NULL, nsAnnoProtocolHandlerConstructor }, { &kNS_NAVBOOKMARKSSERVICE_CID, false, NULL, nsNavBookmarksConstructor }, { &kNS_FAVICONSERVICE_CID, false, NULL, nsFaviconServiceConstructor }, -#ifdef ANDROID +#ifdef MOZ_ANDROID_HISTORY { &kNS_ANDROIDHISTORY_CID, false, NULL, nsAndroidHistoryConstructor }, #else { &kNS_HISTORYSERVICE_CID, false, NULL, HistoryConstructor }, @@ -69,7 +70,7 @@ const mozilla::Module::ContractIDEntry kPlacesContracts[] = { { NS_NAVBOOKMARKSSERVICE_CONTRACTID, &kNS_NAVBOOKMARKSSERVICE_CID }, { NS_FAVICONSERVICE_CONTRACTID, &kNS_FAVICONSERVICE_CID }, { "@mozilla.org/embeddor.implemented/bookmark-charset-resolver;1", &kNS_NAVHISTORYSERVICE_CID }, -#ifdef ANDROID +#ifdef MOZ_ANDROID_HISTORY { NS_IHISTORY_CONTRACTID, &kNS_ANDROIDHISTORY_CID }, #else { NS_IHISTORY_CONTRACTID, &kNS_HISTORYSERVICE_CID }, diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in index 4f6de767f01..7295432fea0 100644 --- a/toolkit/library/Makefile.in +++ b/toolkit/library/Makefile.in @@ -20,6 +20,7 @@ # the Initial Developer. All Rights Reserved. # # Contributor(s): +# Shawn Wilsher # # Alternatively, the contents of this file may be used under the terms of # either of the GNU General Public License Version 2 or later (the "GPL"), @@ -35,10 +36,10 @@ # # ***** END LICENSE BLOCK ***** -DEPTH = ../.. -topsrcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ +DEPTH = ../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk @@ -76,19 +77,352 @@ DEFINES += -DMOZ_ENABLE_GTK2 endif SHARED_LIBRARY_LIBS += \ - $(DEPTH)/toolkit/xre/$(LIB_PREFIX)xulapp_s.$(LIB_SUFFIX) \ - $(NULL) + $(DEPTH)/toolkit/xre/$(LIB_PREFIX)xulapp_s.$(LIB_SUFFIX) \ + $(NULL) SHARED_LIBRARY_LIBS += \ - $(foreach component,$(COMPONENT_LIBS),$(DEPTH)/staticlib/components/$(LIB_PREFIX)$(component).$(LIB_SUFFIX)) \ - $(foreach lib,$(STATIC_LIBS),$(DEPTH)/staticlib/$(LIB_PREFIX)$(lib).$(LIB_SUFFIX)) \ - $(NULL) + $(foreach component,$(COMPONENT_LIBS),$(DEPTH)/staticlib/components/$(LIB_PREFIX)$(component).$(LIB_SUFFIX)) \ + $(foreach lib,$(STATIC_LIBS),$(DEPTH)/staticlib/$(LIB_PREFIX)$(lib).$(LIB_SUFFIX)) \ + $(NULL) -include $(srcdir)/libxul-config.mk +CPPSRCS += \ + nsStaticXULComponents.cpp \ + $(NULL) + +ifeq ($(OS_ARCH),WINNT) +REQUIRES += widget gfx +CPPSRCS += \ + nsDllMain.cpp \ + $(NULL) +endif + +ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_) +CPPSRCS += \ + nsGFXDeps.cpp \ + $(NULL) + +RCINCLUDE = xulrunner.rc + +ifndef MOZ_NATIVE_ZLIB +CPPSRCS += dlldeps-zlib.cpp +endif + +LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/windows +LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base +endif + +ifneq (,$(filter WINNT OS2,$(OS_ARCH))) +REQUIRES += libreg +DEFINES += -DZLIB_DLL=1 +endif + +ifeq ($(OS_ARCH),OS2) +REQUIRES += widget gfx + +CPPSRCS += \ + nsGFXDeps.cpp \ + $(NULL) + +ifndef MOZ_NATIVE_ZLIB +CPPSRCS += dlldeps-zlib.cpp +endif + +RESFILE = xulrunos2.res +RCFLAGS += -i $(topsrcdir)/widget/src/os2 + +LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2 +LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base +endif + +# dependent libraries +STATIC_LIBS += \ + jsipc_s \ + domipc_s \ + domplugins_s \ + mozipc_s \ + mozipdlgen_s \ + ipcshell_s \ + gfx2d \ + gfxipc_s \ + hal_s \ + $(NULL) + +ifdef MOZ_IPDL_TESTS +STATIC_LIBS += ipdlunittest_s +endif + +ifeq (Linux,$(OS_ARCH)) +ifneq (Android,$(OS_TARGET)) +OS_LIBS += -lrt +endif +endif + +STATIC_LIBS += \ + xpcom_core \ + ucvutil_s \ + chromium_s \ + mozreg_s \ + $(NULL) + +# component libraries +COMPONENT_LIBS += \ + necko \ + uconv \ + i18n \ + chardet \ + jar$(VERSION_NUMBER) \ + startupcache \ + pref \ + htmlpars \ + imglib2 \ + gkgfx \ + gklayout \ + docshell \ + embedcomponents \ + webbrwsr \ + nsappshell \ + txmgr \ + commandlines \ + toolkitcomps \ + pipboot \ + pipnss \ + appcomps \ + jsreflect \ + composer \ + jetpack_s \ + telemetry \ + jsdebugger \ + storagecomps \ + rdf \ + windowds \ + $(NULL) + +ifdef BUILD_CTYPES +COMPONENT_LIBS += \ + jsctypes \ + $(NULL) +endif + +COMPONENT_LIBS += \ + jsperf \ + gkplugin \ + $(NULL) + +ifdef MOZ_XUL +ifdef MOZ_ENABLE_GTK2 +COMPONENT_LIBS += \ + unixproxy \ + $(NULL) +endif +endif + +ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT))) +COMPONENT_LIBS += \ + osxproxy \ + $(NULL) +endif + +ifdef MOZ_XUL +ifeq (qt,$(MOZ_WIDGET_TOOLKIT)) +COMPONENT_LIBS += \ + unixproxy \ + $(NULL) +endif +endif + +ifneq (,$(filter windows,$(MOZ_WIDGET_TOOLKIT))) +COMPONENT_LIBS += \ + windowsproxy \ + $(NULL) +endif + +ifdef MOZ_JSDEBUGGER +DEFINES += -DMOZ_JSDEBUGGER +COMPONENT_LIBS += \ + jsd \ + $(NULL) +endif + +ifdef MOZ_PREF_EXTENSIONS +DEFINES += -DMOZ_PREF_EXTENSIONS +COMPONENT_LIBS += \ + autoconfig \ + $(NULL) +endif + +ifdef MOZ_AUTH_EXTENSION +COMPONENT_LIBS += auth +DEFINES += -DMOZ_AUTH_EXTENSION +endif + +ifdef MOZ_PERMISSIONS +COMPONENT_LIBS += cookie permissions +DEFINES += -DMOZ_PERMISSIONS +endif + +ifdef MOZ_UNIVERSALCHARDET +COMPONENT_LIBS += universalchardet +DEFINES += -DMOZ_UNIVERSALCHARDET +endif + +ifeq (,$(filter android gonk qt os2 cocoa windows,$(MOZ_WIDGET_TOOLKIT))) +ifdef MOZ_XUL +COMPONENT_LIBS += fileview +DEFINES += -DMOZ_FILEVIEW +endif +endif + +ifdef MOZ_PLACES +COMPONENT_LIBS += \ + places \ + $(NULL) +endif + +ifdef MOZ_XUL +COMPONENT_LIBS += \ + tkautocomplete \ + satchel \ + pippki \ + $(NULL) +endif + +ifdef MOZ_ENABLE_GTK2 +COMPONENT_LIBS += widget_gtk2 +ifdef MOZ_PREF_EXTENSIONS +COMPONENT_LIBS += system-pref +endif +endif + +ifdef MOZ_ENABLE_GTK2 +ifdef MOZ_X11 +STATIC_LIBS += gtkxtbin +endif +endif + +# Platform-specific icon channel stuff - supported mostly-everywhere +ifneq (,$(filter windows os2 mac cocoa gtk2 qt android,$(MOZ_WIDGET_TOOLKIT))) +DEFINES += -DICON_DECODER +COMPONENT_LIBS += imgicon +endif + +ifeq ($(MOZ_WIDGET_TOOLKIT),android) +COMPONENT_LIBS += widget_android +endif + +ifeq ($(MOZ_WIDGET_TOOLKIT),gonk) +COMPONENT_LIBS += widget_gonk +endif + +STATIC_LIBS += thebes ycbcr + +ifeq ($(MOZ_WIDGET_TOOLKIT),android) +STATIC_LIBS += profiler skia-npapi +endif + +STATIC_LIBS += angle + +ifeq (windows,$(MOZ_WIDGET_TOOLKIT)) +COMPONENT_LIBS += gkwidget +endif +ifeq (os2,$(MOZ_WIDGET_TOOLKIT)) +COMPONENT_LIBS += wdgtos2 +endif +ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) +COMPONENT_LIBS += widget_mac +endif +ifeq (qt,$(MOZ_WIDGET_TOOLKIT)) +COMPONENT_LIBS += widget_qt +endif + +ifdef ACCESSIBILITY +COMPONENT_LIBS += accessibility +endif + +ifdef MOZ_ENABLE_XREMOTE +COMPONENT_LIBS += remoteservice +endif + +ifdef MOZ_SPELLCHECK +DEFINES += -DMOZ_SPELLCHECK +COMPONENT_LIBS += spellchecker +endif + +ifdef MOZ_ZIPWRITER +DEFINES += -DMOZ_ZIPWRITER +COMPONENT_LIBS += zipwriter +endif + +COMPONENT_LIBS += services-crypto + +ifdef MOZ_DEBUG +ifdef ENABLE_TESTS +COMPONENT_LIBS += gkdebug +endif +endif + +ifdef MOZ_APP_COMPONENT_LIBS +COMPONENT_LIBS += $(MOZ_APP_COMPONENT_LIBS) +endif + +ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) +OS_LIBS += -framework OpenGL -lcups +endif + +EXTRA_DSO_LDOPTS += \ + $(LIBS_DIR) \ + $(JPEG_LIBS) \ + $(PNG_LIBS) \ + $(QCMS_LIBS) \ + $(MOZ_JS_LIBS) \ + $(NSS_LIBS) \ + $(MOZ_CAIRO_LIBS) \ + $(MOZ_HARFBUZZ_LIBS) \ + $(MOZ_OTS_LIBS) \ + $(MOZ_APP_EXTRA_LIBS) \ + $(SQLITE_LIBS) \ + $(NULL) + +ifdef MOZ_NATIVE_ZLIB +EXTRA_DSO_LDOPTS += $(ZLIB_LIBS) +else +EXTRA_DSO_LDOPTS += $(MOZ_ZLIB_LIBS) +endif + +ifdef MOZ_NATIVE_HUNSPELL +EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS) +endif + +ifdef MOZ_NATIVE_LIBEVENT +EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS) +endif + +ifdef MOZ_NATIVE_LIBVPX +EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS) +endif + +ifdef MOZ_SYDNEYAUDIO +ifeq ($(OS_ARCH),Linux) +EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS) +endif +endif + +ifdef HAVE_CLOCK_MONOTONIC +EXTRA_DSO_LDOPTS += $(REALTIME_LIBS) +endif + +ifeq (,$(filter-out cocoa android windows,$(MOZ_WIDGET_TOOLKIT))) +EXTRA_DSO_LDOPTS += $(MOZ_SKIA_LIBS) +endif + +ifeq (android,$(MOZ_WIDGET_TOOLKIT)) +OS_LIBS += -lGLESv2 +endif + +ifeq (gonk,$(MOZ_WIDGET_TOOLKIT)) +OS_LIBS += -lui +endif EXTRA_DEPS += \ - $(srcdir)/libxul-config.mk \ - $(srcdir)/libxul-rules.mk \ $(topsrcdir)/intl/unicharutil/util/objs.mk \ $(topsrcdir)/rdf/util/src/objs.mk \ $(NULL) @@ -98,7 +432,7 @@ CPPSRCS += \ $(RDF_UTIL_SRC_LCPPSRCS) \ $(NULL) -GARBAGE += \ +GARBAGE += \ $(INTL_UNICHARUTIL_UTIL_LCPPSRCS) \ $(wildcard *.$(OBJ_SUFFIX)) \ $(RDF_UTIL_SRC_LCPPSRCS) \ @@ -113,10 +447,13 @@ else SDK_LIBRARY = $(SHARED_LIBRARY) endif -# See bug 653662 - some builders are hitting an internal size limit -# on incremental builds. Disable this for debug builds using VC8/9. +# See bug 653662 - some builders are hitting an internal size limit on +# incremental builds. Disable incremental linking for debug builds on VC8 or +# on 32-bit hosts. +# See: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/c34d5c37-ca4a-4580-9c7c-4379a8c76d1f/ ifeq ($(OS_ARCH),WINNT) -ifeq (,$(filter-out 1400 1500,$(_MSC_VER))) +IS_32BIT_HOST := $(if $(filter AMD64,$(PROCESSOR_ARCHITECTURE) $(PROCESSOR_ARCHITEW6432)),,yes) +ifneq (,$(or $(filter 1400,$(_MSC_VER)),$(IS_32BIT_HOST))) ifdef MOZ_DEBUG EXTRA_DSO_LDOPTS += -INCREMENTAL:NO endif @@ -130,27 +467,27 @@ DEFINES += -DIMPL_XREAPI EXTRA_DSO_LDOPTS += $(NSPR_LIBS) $(MOZALLOC_LIB) ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) -CXXFLAGS += $(TK_CFLAGS) +CXXFLAGS += $(TK_CFLAGS) OS_LIBS += \ - -framework SystemConfiguration \ - -framework QuickTime \ - -framework IOKit \ - -F/System/Library/PrivateFrameworks -framework CoreUI \ - $(TK_LIBS) \ - $(NULL) + -framework SystemConfiguration \ + -framework QuickTime \ + -framework IOKit \ + -F/System/Library/PrivateFrameworks -framework CoreUI \ + $(TK_LIBS) \ + $(NULL) endif ifeq ($(OS_ARCH),Darwin) ifdef MOZ_SYDNEYAUDIO EXTRA_DSO_LDOPTS += \ - -framework Carbon \ - -framework CoreAudio \ - -framework AudioToolbox \ - -framework AudioUnit \ - -framework IOKit \ - -framework Foundation \ - -framework AppKit \ - $(NULL) + -framework Carbon \ + -framework CoreAudio \ + -framework AudioToolbox \ + -framework AudioUnit \ + -framework IOKit \ + -framework Foundation \ + -framework AppKit \ + $(NULL) endif endif @@ -162,7 +499,7 @@ endif ifdef MOZ_PLATFORM_MAEMO EXTRA_DSO_LDOPTS += $(MOZ_PLATFORM_MAEMO_LIBS) -endif +endif ifdef MOZ_ENABLE_LIBCONIC EXTRA_DSO_LDOPTS += $(LIBCONIC_LIBS) @@ -228,7 +565,27 @@ include $(topsrcdir)/config/rules.mk export:: $(RDF_UTIL_SRC_CPPSRCS) $(INTL_UNICHARUTIL_UTIL_CPPSRCS) $(INSTALL) $^ . -include $(srcdir)/libxul-rules.mk +# need widget/src/windows for resource.h (included from widget.rc) +LOCAL_INCLUDES += \ + -I$(topsrcdir)/config \ + -I$(topsrcdir)/widget/src/windows \ + -I$(topsrcdir)/widget/src/build \ + $(NULL) + +OS_LIBS += $(LIBICONV) + +DEFINES += \ + -D_IMPL_NS_COM \ + -D_IMPL_NS_STRINGAPI \ + -DEXPORT_XPT_API \ + -DEXPORT_XPTC_API \ + -D_IMPL_NS_GFX \ + -D_IMPL_NS_WIDGET \ + $(NULL) + +ifeq ($(MOZ_WIDGET_TOOLKIT),windows) +OS_LIBS += $(call EXPAND_LIBNAME,usp10 oleaut32) +endif ifeq ($(OS_ARCH),OpenBSD) # Needed by nsAuthGSSAPI diff --git a/toolkit/library/libxul-config.mk b/toolkit/library/libxul-config.mk deleted file mode 100644 index fc3832a2b96..00000000000 --- a/toolkit/library/libxul-config.mk +++ /dev/null @@ -1,375 +0,0 @@ -# -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Original Code is Mozilla libxul -# -# The Initial Developer of the Original Code is -# Benjamin Smedberg -# -# Portions created by the Initial Developer are Copyright (C) 2005 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Shawn Wilsher -# -# Alternatively, the contents of this file may be used under the terms of -# either of the GNU General Public License Version 2 or later (the "GPL"), -# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - -CPPSRCS += \ - nsStaticXULComponents.cpp \ - $(NULL) - -ifeq ($(OS_ARCH),WINNT) -REQUIRES += widget gfx -CPPSRCS += \ - nsDllMain.cpp \ - $(NULL) -endif - -ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_) -CPPSRCS += \ - nsGFXDeps.cpp \ - $(NULL) - -RCINCLUDE = xulrunner.rc - -ifndef MOZ_NATIVE_ZLIB -CPPSRCS += dlldeps-zlib.cpp -endif - -LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/windows -LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base -endif - -ifneq (,$(filter WINNT OS2,$(OS_ARCH))) -REQUIRES += libreg -DEFINES += -DZLIB_DLL=1 -endif - -ifeq ($(OS_ARCH),OS2) -REQUIRES += widget gfx - -CPPSRCS += \ - nsGFXDeps.cpp \ - $(NULL) - -ifndef MOZ_NATIVE_ZLIB -CPPSRCS += dlldeps-zlib.cpp -endif - -RESFILE = xulrunos2.res -RCFLAGS += -i $(topsrcdir)/widget/src/os2 - -LOCAL_INCLUDES += -I$(topsrcdir)/widget/src/os2 -LOCAL_INCLUDES += -I$(topsrcdir)/xpcom/base -endif - -# dependent libraries -STATIC_LIBS += \ - jsipc_s \ - domipc_s \ - domplugins_s \ - mozipc_s \ - mozipdlgen_s \ - ipcshell_s \ - gfx2d \ - gfxipc_s \ - hal_s \ - $(NULL) - -ifdef MOZ_IPDL_TESTS -STATIC_LIBS += ipdlunittest_s -endif - -ifeq (Linux,$(OS_ARCH)) -ifneq (Android,$(OS_TARGET)) -OS_LIBS += -lrt -endif -endif - -STATIC_LIBS += \ - xpcom_core \ - ucvutil_s \ - chromium_s \ - mozreg_s \ - $(NULL) - -# component libraries -COMPONENT_LIBS += \ - necko \ - uconv \ - i18n \ - chardet \ - jar$(VERSION_NUMBER) \ - startupcache \ - pref \ - htmlpars \ - imglib2 \ - gkgfx \ - gklayout \ - docshell \ - embedcomponents \ - webbrwsr \ - nsappshell \ - txmgr \ - commandlines \ - toolkitcomps \ - pipboot \ - pipnss \ - appcomps \ - jsreflect \ - composer \ - jetpack_s \ - telemetry \ - jsdebugger \ - storagecomps \ - rdf \ - windowds \ - $(NULL) - -ifdef BUILD_CTYPES -COMPONENT_LIBS += \ - jsctypes \ - $(NULL) -endif - -COMPONENT_LIBS += \ - jsperf \ - gkplugin \ - $(NULL) - -ifdef MOZ_XUL -ifdef MOZ_ENABLE_GTK2 -COMPONENT_LIBS += \ - unixproxy \ - $(NULL) -endif -endif - -ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT))) -COMPONENT_LIBS += \ - osxproxy \ - $(NULL) -endif - -ifdef MOZ_XUL -ifeq (qt,$(MOZ_WIDGET_TOOLKIT)) -COMPONENT_LIBS += \ - unixproxy \ - $(NULL) -endif -endif - -ifneq (,$(filter windows,$(MOZ_WIDGET_TOOLKIT))) -COMPONENT_LIBS += \ - windowsproxy \ - $(NULL) -endif - -ifdef MOZ_JSDEBUGGER -DEFINES += -DMOZ_JSDEBUGGER -COMPONENT_LIBS += \ - jsd \ - $(NULL) -endif - -ifdef MOZ_PREF_EXTENSIONS -DEFINES += -DMOZ_PREF_EXTENSIONS -COMPONENT_LIBS += \ - autoconfig \ - $(NULL) -endif - -ifdef MOZ_AUTH_EXTENSION -COMPONENT_LIBS += auth -DEFINES += -DMOZ_AUTH_EXTENSION -endif - -ifdef MOZ_PERMISSIONS -COMPONENT_LIBS += cookie permissions -DEFINES += -DMOZ_PERMISSIONS -endif - -ifdef MOZ_UNIVERSALCHARDET -COMPONENT_LIBS += universalchardet -DEFINES += -DMOZ_UNIVERSALCHARDET -endif - -ifeq (,$(filter android gonk qt os2 cocoa windows,$(MOZ_WIDGET_TOOLKIT))) -ifdef MOZ_XUL -COMPONENT_LIBS += fileview -DEFINES += -DMOZ_FILEVIEW -endif -endif - -ifdef MOZ_PLACES -COMPONENT_LIBS += \ - places \ - $(NULL) -endif - -ifdef MOZ_XUL -COMPONENT_LIBS += \ - tkautocomplete \ - satchel \ - pippki \ - $(NULL) -endif - -ifdef MOZ_ENABLE_GTK2 -COMPONENT_LIBS += widget_gtk2 -ifdef MOZ_PREF_EXTENSIONS -COMPONENT_LIBS += system-pref -endif -endif - -ifdef MOZ_ENABLE_GTK2 -ifdef MOZ_X11 -STATIC_LIBS += gtkxtbin -endif -endif - -# Platform-specific icon channel stuff - supported mostly-everywhere -ifneq (,$(filter windows os2 mac cocoa gtk2 qt android,$(MOZ_WIDGET_TOOLKIT))) -DEFINES += -DICON_DECODER -COMPONENT_LIBS += imgicon -endif - -ifeq ($(MOZ_WIDGET_TOOLKIT),android) -COMPONENT_LIBS += widget_android -endif - -ifeq ($(MOZ_WIDGET_TOOLKIT),gonk) -COMPONENT_LIBS += widget_gonk -endif - -STATIC_LIBS += thebes ycbcr - -ifeq ($(MOZ_WIDGET_TOOLKIT),android) -STATIC_LIBS += profiler skia_npapi -endif - -STATIC_LIBS += angle - -ifeq (windows,$(MOZ_WIDGET_TOOLKIT)) -COMPONENT_LIBS += gkwidget -endif -ifeq (os2,$(MOZ_WIDGET_TOOLKIT)) -COMPONENT_LIBS += wdgtos2 -endif -ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) -COMPONENT_LIBS += widget_mac -endif -ifeq (qt,$(MOZ_WIDGET_TOOLKIT)) -COMPONENT_LIBS += widget_qt -endif - -ifdef ACCESSIBILITY -COMPONENT_LIBS += accessibility -endif - -ifdef MOZ_ENABLE_XREMOTE -COMPONENT_LIBS += remoteservice -endif - -ifdef MOZ_SPELLCHECK -DEFINES += -DMOZ_SPELLCHECK -COMPONENT_LIBS += spellchecker -endif - -ifdef MOZ_ZIPWRITER -DEFINES += -DMOZ_ZIPWRITER -COMPONENT_LIBS += zipwriter -endif - -COMPONENT_LIBS += services-crypto - -ifdef MOZ_DEBUG -ifdef ENABLE_TESTS -COMPONENT_LIBS += gkdebug -endif -endif - -ifdef MOZ_APP_COMPONENT_LIBS -COMPONENT_LIBS += $(MOZ_APP_COMPONENT_LIBS) -endif - -ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) -OS_LIBS += -framework OpenGL -lcups -endif - -EXTRA_DSO_LDOPTS += \ - $(LIBS_DIR) \ - $(JPEG_LIBS) \ - $(PNG_LIBS) \ - $(QCMS_LIBS) \ - $(MOZ_JS_LIBS) \ - $(NSS_LIBS) \ - $(MOZ_CAIRO_LIBS) \ - $(MOZ_HARFBUZZ_LIBS) \ - $(MOZ_OTS_LIBS) \ - $(MOZ_APP_EXTRA_LIBS) \ - $(SQLITE_LIBS) \ - $(NULL) - -ifdef MOZ_NATIVE_ZLIB -EXTRA_DSO_LDOPTS += $(ZLIB_LIBS) -else -EXTRA_DSO_LDOPTS += $(MOZ_ZLIB_LIBS) -endif - -ifdef MOZ_NATIVE_HUNSPELL -EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS) -endif - -ifdef MOZ_NATIVE_LIBEVENT -EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS) -endif - -ifdef MOZ_NATIVE_LIBVPX -EXTRA_DSO_LDOPTS += $(MOZ_LIBVPX_LIBS) -endif - -ifdef MOZ_SYDNEYAUDIO -ifeq ($(OS_ARCH),Linux) -EXTRA_DSO_LDOPTS += $(MOZ_ALSA_LIBS) -endif -endif - -ifdef HAVE_CLOCK_MONOTONIC -EXTRA_DSO_LDOPTS += $(REALTIME_LIBS) -endif - -ifeq (,$(filter-out cocoa android windows,$(MOZ_WIDGET_TOOLKIT))) -EXTRA_DSO_LDOPTS += $(MOZ_SKIA_LIBS) -endif - -ifeq (android,$(MOZ_WIDGET_TOOLKIT)) -OS_LIBS += -lGLESv2 -endif - -ifeq (gonk,$(MOZ_WIDGET_TOOLKIT)) -OS_LIBS += -lui -endif diff --git a/toolkit/library/libxul-rules.mk b/toolkit/library/libxul-rules.mk deleted file mode 100644 index e4517595f0c..00000000000 --- a/toolkit/library/libxul-rules.mk +++ /dev/null @@ -1,59 +0,0 @@ -# -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# The Original Code is Mozilla libxul -# -# The Initial Developer of the Original Code is -# Benjamin Smedberg -# -# Portions created by the Initial Developer are Copyright (C) 2005 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# -# Alternatively, the contents of this file may be used under the terms of -# either of the GNU General Public License Version 2 or later (the "GPL"), -# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - -# need widget/src/windows for resource.h (included from widget.rc) -LOCAL_INCLUDES += \ - -I$(topsrcdir)/config \ - -I$(topsrcdir)/widget/src/windows \ - -I$(topsrcdir)/widget/src/build \ - $(NULL) - -OS_LIBS += $(LIBICONV) - -DEFINES += \ - -D_IMPL_NS_COM \ - -D_IMPL_NS_STRINGAPI \ - -DEXPORT_XPT_API \ - -DEXPORT_XPTC_API \ - -D_IMPL_NS_GFX \ - -D_IMPL_NS_WIDGET \ - $(NULL) - -ifeq ($(MOZ_WIDGET_TOOLKIT),windows) -OS_LIBS += $(call EXPAND_LIBNAME,usp10 oleaut32) -endif diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk index 2743779e247..ba56bb47c71 100644 --- a/toolkit/mozapps/installer/packager.mk +++ b/toolkit/mozapps/installer/packager.mk @@ -320,10 +320,16 @@ ABI_DIR = armeabi endif endif +ifeq ($(MOZ_BUILD_APP),mobile/xul) +GECKO_APP_AP_PATH = ../embedding/android +else +GECKO_APP_AP_PATH = ../mobile/android/base +endif + PKG_SUFFIX = .apk INNER_MAKE_PACKAGE = \ - make -C ../mobile/android/base gecko.ap_ && \ - cp ../mobile/android/base/gecko.ap_ $(_ABS_DIST) && \ + make -C $(GECKO_APP_AP_PATH) gecko.ap_ && \ + cp $(GECKO_APP_AP_PATH)/gecko.ap_ $(_ABS_DIST) && \ ( cd $(STAGEPATH)$(MOZ_PKG_DIR)$(_BINPATH) && \ mkdir -p lib/$(ABI_DIR) && \ mv libmozutils.so $(MOZ_CHILD_PROCESS_NAME) lib/$(ABI_DIR) && \ @@ -662,7 +668,7 @@ ifdef USE_ELF_HACK @echo === and your environment \(compiler and linker versions\), and use @echo === --disable-elf-hack until this is fixed. @echo === - cd $(DIST)/bin; find . -name "*$(DLL_SUFFIX)" | xargs $(DEPTH)/build/unix/elfhack/elfhack + cd $(DIST)/bin; find . -name "*$(DLL_SUFFIX)" | xargs ../../build/unix/elfhack/elfhack endif stage-package: $(MOZ_PKG_MANIFEST) $(MOZ_PKG_REMOVALS_GEN) elfhack