Closed Bug 484353 Opened 12 years ago Closed 12 years ago

libxul fails to link - nsWildCard.o doubly included

Categories

(Core :: General, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: jeremyhu, Assigned: jeremyhu)

Details

Attachments

(1 obsolete file)

User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3) Gecko/20090305 Firefox/3.1b3
Build Identifier: xulrunner 1.9.0.7

Upon linking libxul:
ld: duplicate symbol NS_WildCardValid(unsigned short*)in nsWildCard.o and nsWildCard.o

because it's included twice:
./modules/libjar/.deps/nsWildCard.pp
./modules/libjar/nsWildCard.cpp
./modules/libjar/nsWildCard.h
./modules/libjar/nsWildCard.o
./toolkit/library/nsWildCard.o
./xpfe/components/filepicker/src/.deps/nsWildCard.pp
./xpfe/components/filepicker/src/nsWildCard.cpp
./xpfe/components/filepicker/src/nsWildCard.h
./xpfe/components/filepicker/src/nsWildCard.o



Reproducible: Always

Steps to Reproduce:
Building xulrunner-1.9.0.7 using:

configure.args \
        --disable-static \
        --enable-shared \
        --disable-official-branding \
        --with-distribution-id=org.macports \
        --enable-default-toolkit=cairo-gtk2 \
        --x-includes=${prefix}/include \
        --x-libraries=${prefix}/lib \
        --with-system-nspr \
        --with-nspr-prefix=${prefix} \
        --with-system-nss \
        --with-nss-prefix=${prefix} \
        --with-system-bzip2=${prefix} \
        --with-system-jpeg=${prefix} \
        --with-system-zlib=${prefix} \
        --enable-system-cairo \
        --with-system-cairo=${prefix} \
        --enable-system-sqlite \
        --with-default-mozilla-five-home=${prefix}/lib/${name} \
        --enable-oji \
        --enable-mathml \
        --enable-extensions="default,spellcheck" \
        --enable-permissions \
        --enable-cookie \
        --enable-image-encoder=all \
        --enable-canvas \
        --enable-jsd \
        --enable-xpctools \
        --enable-crypto \
        --enable-pango \
        --enable-svg \
        --enable-svg-renderer=cairo \
        --enable-xinerama \
        --with-pthreads \
        --enable-gnomevfs \
        --enable-postscript \
        --enable-help-viewer \
        --enable-safe-browsing \
        --enable-xft \
        --disable-freetype2 \
        --disable-crashreporter \
        --enable-optimize=-O2 \
        --disable-prebinding \
        --enable-strip \
        --disable-debug \
        --disable-installer \
        --disable-updater \
        --disable-pedantic \
        --disable-tests

Actual Results:  
Making symlinks to the original object files in the archive libraries ../../embedding/browser/gtk/src/libgtkembedmoz.a ../../toolkit/xre/libxulapp_s.a ../../staticlib/components/libxpconnect.a ../../staticlib/components/libnecko.a ../../staticlib/components/libuconv.a ../../staticlib/components/libi18n.a ../../staticlib/components/libchardet.a ../../staticlib/components/libjar50.a ../../staticlib/components/libpref.a ../../staticlib/components/libcaps.a ../../staticlib/components/libhtmlpars.a ../../staticlib/components/libimglib2.a ../../staticlib/components/libgklayout.a ../../staticlib/components/libdocshell.a ../../staticlib/components/libembedcomponents.a ../../staticlib/components/libwebbrwsr.a ../../staticlib/components/libnsappshell.a ../../staticlib/components/libtxmgr.a ../../staticlib/components/libchrome.a ../../staticlib/components/libcommandlines.a ../../staticlib/components/libtoolkitcomps.a ../../staticlib/components/libpipboot.a ../../staticlib/components/libpipnss.a ../../staticlib/components/libxmlextras.a ../../staticlib/components/libgkplugin.a ../../staticlib/components/libmozfind.a ../../staticlib/components/libappcomps.a ../../staticlib/components/libunixproxy.a ../../staticlib/components/libxpinstall.a ../../staticlib/components/libjsd.a ../../staticlib/components/libautoconfig.a ../../staticlib/components/libauth.a ../../staticlib/components/libcookie.a ../../staticlib/components/libpermissions.a ../../staticlib/components/libuniversalchardet.a ../../staticlib/components/libcomposer.a ../../staticlib/components/librdf.a ../../staticlib/components/libwindowds.a ../../staticlib/components/libintlapp.a ../../staticlib/components/libfileview.a ../../staticlib/components/libstoragecomps.a ../../staticlib/components/libplaces.a ../../staticlib/components/libtkautocomplete.a ../../staticlib/components/libsatchel.a ../../staticlib/components/libpippki.a ../../staticlib/components/libucvmath.a ../../staticlib/components/libwidget_gtk2.a ../../staticlib/components/libsystem-pref.a ../../staticlib/components/libgkgfxthebes.a ../../staticlib/components/liboji.a ../../staticlib/components/libremoteservice.a ../../staticlib/components/libspellchecker.a ../../staticlib/components/libzipwriter.a ../../staticlib/libxpcom_core.a ../../staticlib/libucvutil_s.a ../../staticlib/libgkgfx.a ../../staticlib/libgfxshared_s.a ../../staticlib/libmozreg_s.a ../../staticlib/libmorkreader_s.a ../../staticlib/libgtkxtbin.a ../../staticlib/libgfxpsshar.a ../../staticlib/libthebes.a ../../staticlib/libjsj.a ../../extensions/java/xpcom/src/libjavaxpcom.a
/usr/bin/g++-4.0 -I/opt/local/include  -I/opt/local/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -O2 -fno-strict-aliasing -fpascal-strings -fno-common -fshort-wchar -pthread -pipe  -DNDEBUG -DTRIMMED -O2 -fPIC  -o libxul.dylib  nsStaticXULComponents.o nsUnicharUtils.o nsCompressedCharMap.o nsBidiUtils.o nsRDFResource.o   gtkmozembedmarshal.o gtkmozembed2.o EmbedPrivate.o EmbedWindow.o EmbedProgress.o EmbedContentListener.o EmbedEventListener.o EmbedWindowCreator.o EmbedPrompter.o GtkPromptService.o showOSAlert.o nsSigHandlers.o nsAppRunner.o nsConsoleWriter.o nsXREDirProvider.o nsNativeAppSupportBase.o nsAppData.o nsEmbedFunctions.o nsNativeAppSupportUnix.o nsProfileLock.o nsToolkitProfileService.o XRemoteClient.o nsScriptError.o nsXPConnect.o xpccallcontext.o xpccomponents.o xpccontext.o xpcconvert.o xpcdebug.o xpcexception.o xpcjsid.o xpcjsruntime.o xpclog.o xpcmaps.o xpcmodule.o xpcruntimesvc.o xpcstack.o xpcstring.o xpcthreadcontext.o xpcthrower.o xpcwrappedjs.o xpcvariant.o xpcwrappedjsclass.o xpcwrappednative.o xpcwrappednativeinfo.o xpcwrappednativejsops.o xpcwrappednativeproto.o xpcwrappednativescope.o XPCNativeWrapper.o xpcJSWeakReference.o XPCSafeJSObjectWrapper.o XPCCrossOriginWrapper.o XPCWrapper.o mozJSComponentLoader.o mozJSSubScriptLoader.o nsNetModule.o nsTransportUtils.o nsAsyncStreamCopier.o nsAuthInformationHolder.o nsBaseChannel.o nsBaseContentStream.o nsBufferedStreams.o nsDirectoryIndexStream.o nsDownloader.o nsFileStreams.o nsIncrementalDownload.o nsInputStreamChannel.o nsInputStreamPump.o nsStreamTransportService.o nsIOService.o nsLoadGroup.o nsMIMEInputStream.o nsProtocolProxyService.o nsProxyInfo.o nsPACMan.o nsRequestObserverProxy.o nsSimpleStreamListener.o nsSimpleURI.o nsSimpleNestedURI.o nsStandardURL.o nsSocketTransport2.o nsSocketTransportService2.o nsServerSocket.o nsStreamListenerTee.o nsStreamLoader.o nsSyncStreamListener.o nsUnicharStreamLoader.o nsURIChecker.o nsURLHelper.o nsURLParsers.o nsNetStrings.o nsBase64Encoder.o nsSerializationHelper.o nsURLHelperUnix.o race.o nameprep.o punycode.o nsIDNService.o nsDNSService2.o nsHostResolver.o nsEffectiveTLDService.o nsSocketProviderService.o nsSOCKSSocketProvider.o nsSOCKSIOLayer.o nsUDPSocketProvider.o nsStreamConverterService.o mozTXTToHTMLConv.o nsUnknownDecoder.o nsHTTPCompressConv.o nsTXTToHTMLConv.o nsDirIndex.o nsDirIndexParser.o nsIndexedToHTML.o nsMultiMixedConv.o ParseFTPList.o nsFTPDirListingConv.o nsGopherDirListingConv.o nsBinHexDecoder.o nsMIMEHeaderParamImpl.o nsCache.o nsCacheEntry.o nsCacheEntryDescriptor.o nsCacheMetaData.o nsCacheService.o nsCacheSession.o nsMemoryCacheDevice.o nsDiskCacheBinding.o nsDiskCacheBlockFile.o nsDiskCacheDevice.o nsDiskCacheEntry.o nsDiskCacheMap.o nsDiskCacheStreams.o nsDeleteDir.o nsDiskCacheDeviceSQL.o nsAboutProtocolHandler.o nsAboutBlank.o nsAboutBloat.o nsAboutCache.o nsAboutCacheEntry.o nsDataHandler.o nsDataChannel.o nsFileProtocolHandler.o nsFileChannel.o nsFtpProtocolHandler.o nsFTPChannel.o nsFtpConnectionThread.o nsFtpControlConnection.o nsGopherHandler.o nsGopherChannel.o nsHttp.o nsHttpHeaderArray.o nsHttpConnectionInfo.o nsHttpConnection.o nsHttpConnectionMgr.o nsHttpRequestHead.o nsHttpResponseHead.o nsHttpChunkedDecoder.o nsHttpAuthCache.o nsHttpAuthManager.o nsHttpBasicAuth.o nsHttpDigestAuth.o nsHttpNTLMAuth.o nsHttpTransaction.o nsHttpHandler.o nsHttpChannel.o nsHttpPipeline.o nsResProtocolHandler.o nsViewSourceHandler.o nsViewSourceChannel.o nsCookie.o nsCookieService.o nsUConvModule.o nsCharsetAliasImp.o nsConverterInputStream.o nsConverterOutputStream.o nsTextToSubURI.o nsGREResProperties.o nsCharsetConverterManager.o nsUTF8ConverterService.o nsUTF8ToUnicode.o nsUnicodeToUTF8.o nsScriptableUConv.o nsISO88591ToUnicode.o nsCP1252ToUnicode.o nsMacRomanToUnicode.o nsUnicodeToISO88591.o nsUnicodeToCP1252.o nsUnicodeToMacRoman.o nsUNIXCharset.o nsAsciiToUnicode.o nsISO88592ToUnicode.o nsISO88593ToUnicode.o nsISO88594ToUnicode.o nsISO88595ToUnicode.o nsISO88596ToUnicode.o nsISO88596EToUnicode.o nsISO88596IToUnicode.o nsISO88597ToUnicode.o nsISO88598ToUnicode.o nsISO88598EToUnicode.o nsISO88598IToUnicode.o nsISO88599ToUnicode.o nsISO885910ToUnicode.o nsISO885911ToUnicode.o nsISO885913ToUnicode.o nsISO885914ToUnicode.o nsISO885915ToUnicode.o nsISO885916ToUnicode.o nsISOIR111ToUnicode.o nsCP1250ToUnicode.o nsCP1251ToUnicode.o nsCP1253ToUnicode.o nsCP1254ToUnicode.o nsCP1255ToUnicode.o nsCP1256ToUnicode.o nsCP1257ToUnicode.o nsCP1258ToUnicode.o nsCP866ToUnicode.o nsCP874ToUnicode.o nsTIS620ToUnicode.o nsKOI8UToUnicode.o nsKOI8RToUnicode.o nsMacCEToUnicode.o nsMacGreekToUnicode.o nsMacTurkishToUnicode.o nsMacCroatianToUnicode.o nsMacRomanianToUnicode.o nsMacCyrillicToUnicode.o nsMacUkrainianToUnicode.o nsMacIcelandicToUnicode.o nsMacHebrewToUnicode.o nsMacArabicToUnicode.o nsMacDevanagariToUnicode.o nsMacFarsiToUnicode.o nsMacGujaratiToUnicode.o nsMacGurmukhiToUnicode.o nsGEOSTD8ToUnicode.o nsARMSCII8ToUnicode.o nsTCVN5712ToUnicode.o nsVISCIIToUnicode.o nsVPSToUnicode.o nsVIQRToUnicode.o nsVNIToUnicode.o nsUTF7ToUnicode.o nsMUTF7ToUnicode.o nsUCS2BEToUnicode.o nsUTF32ToUnicode.o nsT61ToUnicode.o nsUserDefinedToUnicode.o nsUnicodeToAscii.o nsUnicodeToISO88592.o nsUnicodeToISO88593.o nsUnicodeToISO88594.o nsUnicodeToISO88595.o nsUnicodeToISO88596.o nsUnicodeToISO88596E.o nsUnicodeToISO88596I.o nsUnicodeToISO88597.o nsUnicodeToISO88598.o nsUnicodeToISO88598E.o nsUnicodeToISO88598I.o nsUnicodeToISO88599.o nsUnicodeToISO885910.o nsUnicodeToISO885911.o nsUnicodeToISO885913.o nsUnicodeToISO885914.o nsUnicodeToISO885915.o nsUnicodeToISO885916.o nsUnicodeToISOIR111.o nsUnicodeToCP1250.o nsUnicodeToCP1251.o nsUnicodeToCP1253.o nsUnicodeToCP1254.o nsUnicodeToCP1255.o nsUnicodeToCP1256.o nsUnicodeToCP1257.o nsUnicodeToCP1258.o nsUnicodeToCP874.o nsUnicodeToTIS620.o nsUnicodeToCP866.o nsUnicodeToKOI8R.o nsUnicodeToKOI8U.o nsUnicodeToMacCE.o nsUnicodeToMacGreek.o nsUnicodeToMacTurkish.o nsUnicodeToMacCroatian.o nsUnicodeToMacRomanian.o nsUnicodeToMacCyrillic.o nsUnicodeToMacUkrainian.o nsUnicodeToMacIcelandic.o nsUnicodeToMacHebrew.o nsUnicodeToMacArabic.o nsUnicodeToMacDevanagari.o nsUnicodeToMacFarsi.o nsUnicodeToMacGujarati.o nsUnicodeToMacGurmukhi.o nsUnicodeToGEOSTD8.o nsUnicodeToARMSCII8.o nsUnicodeToTCVN5712.o nsUnicodeToVISCII.o nsUnicodeToVPS.o nsUnicodeToVIQR.o nsUnicodeToVNI.o nsUnicodeToUTF7.o nsUnicodeToMUTF7.o nsUnicodeToUCS2BE.o nsUnicodeToUTF32.o nsUnicodeToT61.o nsUnicodeToUserDefined.o nsUnicodeToSymbol.o nsUnicodeToZapfDingbat.o nsUnicodeToAdobeEuro.o nsUnicodeToTSCII.o nsCP850ToUnicode.o nsCP852ToUnicode.o nsCP855ToUnicode.o nsCP857ToUnicode.o nsCP862ToUnicode.o nsCP864ToUnicode.o nsCP864iToUnicode.o nsUnicodeToCP850.o nsUnicodeToCP852.o nsUnicodeToCP855.o nsUnicodeToCP857.o nsUnicodeToCP862.o nsUnicodeToCP864.o nsUnicodeToCP864i.o nsJapaneseToUnicode.o nsUnicodeToSJIS.o nsUnicodeToEUCJP.o nsUnicodeToISO2022JP.o nsUnicodeToJISx0201.o nsEUCTWToUnicode.o nsUnicodeToEUCTW.o nsBIG5ToUnicode.o nsUnicodeToBIG5.o nsBIG5HKSCSToUnicode.o nsUnicodeToBIG5HKSCS.o nsUnicodeToHKSCS.o nsEUCKRToUnicode.o nsUnicodeToEUCKR.o nsISO2022KRToUnicode.o nsUnicodeToISO2022KR.o nsCP949ToUnicode.o nsUnicodeToCP949.o nsUnicodeToJohab.o nsJohabToUnicode.o nsUnicodeToJamoTTF.o nsGB2312ToUnicodeV2.o nsUnicodeToGB2312V2.o nsGBKToUnicode.o nsUnicodeToGBK.o nsISO2022CNToUnicode.o nsUnicodeToISO2022CN.o nsHZToUnicode.o nsUnicodeToHZ.o nsCP936ToUnicode.o nsUnicodeToCP936.o nsGBKConvUtil.o nsI18nModule.o nsJISx4501LineBreaker.o nsSampleWordBreaker.o nsSemanticUnitScanner.o nsPangoBreaker.o nsCaseConversionImp2.o nsCategoryImp.o nsHankakuToZenkaku.o nsEntityConverter.o nsSaveAsCharset.o nsUnicodeNormalizer.o nsStringBundle.o nsStringBundleTextOverride.o nsCollation.o nsScriptableDateFormat.o nsLanguageAtomService.o nsLocale.o nsLocaleService.o nsCollationUnix.o nsDateTimeFormatUnix.o nsPosixLocale.o nsObserverBase.o nsXMLEncodingObserver.o nsMetaCharsetObserver.o nsDetectionAdaptor.o nsDebugDetector.o nsCyrillicDetector.o nsDocumentCharsetInfo.o nsChardetModule.o nsZipArchive.o nsWildCard.o nsJARInputStream.o nsJAR.o nsJARFactory.o nsXPTZipLoader.o nsJARProtocolHandler.o nsJARChannel.o nsJARURI.o nsPref.o nsPrefBranch.o nsPrefService.o nsPrefsFactory.o prefapi.o prefread.o nsPrincipal.o nsSystemPrincipal.o nsNullPrincipal.o nsJSPrincipals.o nsScriptSecurityManager.o nsSecurityManagerFactory.o nsScannerString.o nsDTDUtils.o nsHTMLTokenizer.o nsElementTable.o nsExpatDriver.o CNavDTD.o nsHTMLEntities.o nsHTMLTags.o nsHTMLTokens.o nsParser.o CParserContext.o nsParserService.o nsParserModule.o nsParserNode.o nsScanner.o nsToken.o nsParserMsgUtils.o nsViewSourceHTML.o xmlparse.o xmlrole.o xmltok.o nsSAXAttributes.o nsSAXLocator.o nsSAXXMLReader.o nsImageModule.o imgCache.o imgContainer.o imgLoader.o imgRequest.o imgRequestProxy.o imgTools.o nsPNGDecoder.o nsGIFDecoder2.o iccjpeg.o nsJPEGDecoder.o nsBMPDecoder.o nsICODecoder.o nsXBMDecoder.o nsPNGEncoder.o nsJPEGEncoder.o nsLayoutModule.o nsContentDLF.o nsLayoutStatics.o nsCSSColorUtils.o nsCSSFrameConstructor.o nsCSSRendering.o nsCaret.o nsChildIterator.o nsCounterManager.o nsDisplayList.o nsDocumentViewer.o nsFrameManager.o nsFrameTraversal.o nsGenConList.o nsImageLoader.o nsLayoutDebugger.o nsLayoutHistoryState.o nsLayoutUtils.o nsPresContext.o nsPresShell.o nsPresState.o nsQuoteList.o nsStyleChangeList.o nsStyleSheetService.o nsFocusEventSuppressor.o nsBidiPresUtils.o nsBidi.o nsAbsoluteContainingBlock.o nsAreaFrame.o nsBRFrame.o nsBlockBandData.o nsBlockFrame.o nsBlockReflowContext.o nsBlockReflowState.o nsBulletFrame.o nsColumnSetFrame.o nsContainerFrame.o nsFirstLetterFrame.o nsFrame.o nsFrameFrame.o nsFrameList.o nsFrameSetFrame.o nsFrameUtil.o nsGfxScrollFrame.o nsHTMLCanvasFrame.o nsHTMLContainerFrame.o nsHTMLFrame.o nsHTMLReflowState.o nsImageFrame.o nsImageMap.o nsInlineFrame.o nsIntervalSet.o nsLeafFrame.o nsLineBox.o nsLineLayout.o nsObjectFrame.o nsPageContentFrame.o nsPageFrame.o nsPlaceholderFrame.o nsSelection.o nsSimplePageSequence.o nsSpaceManager.o nsSpacerFrame.o nsSplittableFrame.o nsTextFrameThebes.o nsTextFrameUtils.o nsTextRunTransformations.o nsViewportFrame.o nsBidiFrames.o nsButtonFrameRenderer.o nsComboboxControlFrame.o nsFieldSetFrame.o nsFileControlFrame.o nsFormControlFrame.o nsGfxButtonControlFrame.o nsGfxCheckboxControlFrame.o nsGfxRadioControlFrame.o nsTextControlFrame.o nsHTMLButtonControlFrame.o nsImageControlFrame.o nsLegendFrame.o nsListControlFrame.o nsIsIndexFrame.o nsSelectsAreaFrame.o nsCSSAnonBoxes.o nsCSSDataBlock.o nsCSSDeclaration.o nsCSSKeywords.o nsCSSLoader.o nsCSSOMFactory.o nsCSSParser.o nsCSSProps.o nsCSSPseudoClasses.o nsCSSPseudoElements.o nsCSSRule.o nsCSSRuleProcessor.o nsCSSRules.o nsCSSScanner.o nsCSSStruct.o nsCSSStyleRule.o nsCSSStyleSheet.o nsCSSValue.o nsComputedDOMStyle.o nsDOMCSSAttrDeclaration.o nsDOMCSSDeclaration.o nsDOMCSSRGBColor.o nsDOMCSSRect.o nsDOMCSSValueList.o nsHTMLCSSStyleSheet.o nsHTMLStyleSheet.o nsInspectorCSSUtils.o nsLayoutStylesheetCache.o nsROCSSPrimitiveValue.o nsRuleNode.o nsStyleContext.o nsStyleCoord.o nsStyleSet.o nsStyleStruct.o nsStyleUtil.o BasicTableLayoutStrategy.o FixedTableLayoutStrategy.o SpanningCellSorter.o nsCellMap.o nsTableCellFrame.o nsTableColFrame.o nsTableColGroupFrame.o nsTableFrame.o nsTableOuterFrame.o nsTableRowFrame.o nsTableRowGroupFrame.o nsTablePainter.o nsScrollBoxFrame.o nsRootBoxFrame.o nsBox.o nsBoxFrame.o nsBoxLayoutState.o nsSprocketLayout.o nsStackFrame.o nsStackLayout.o nsBoxLayout.o nsScrollbarFrame.o nsScrollbarButtonFrame.o nsButtonBoxFrame.o nsSliderFrame.o nsRepeatService.o nsXULTooltipListener.o nsScrollBoxObject.o nsContainerBoxObject.o nsMenuBoxObject.o nsPopupBoxObject.o nsListBoxObject.o nsBoxObject.o nsImageBoxFrame.o nsDocElementBoxFrame.o nsLeafBoxFrame.o nsTextBoxFrame.o nsGroupBoxFrame.o nsFrameNavigator.o nsSplitterFrame.o nsDeckFrame.o nsProgressMeterFrame.o nsMenuPopupFrame.o nsMenuFrame.o nsMenuBarFrame.o nsMenuBarListener.o nsPopupSetFrame.o nsTitleBarFrame.o nsResizerFrame.o nsListBoxBodyFrame.o nsListItemFrame.o nsListBoxLayout.o nsXULPopupManager.o mozSanitizingSerializer.o nsAtomListUtils.o nsAttrAndChildArray.o nsAttrValue.o nsCCUncollectableMarker.o nsCommentNode.o nsContentAreaDragDrop.o nsContentIterator.o nsContentList.o nsContentPolicy.o nsContentSink.o nsContentUtils.o nsCopySupport.o nsDataDocumentContentPolicy.o nsDOMAttribute.o nsDOMAttributeMap.o nsDOMDocumentType.o nsDOMFile.o nsDOMLists.o nsDOMParser.o nsDOMSerializer.o nsDocument.o nsDocumentEncoder.o nsDocumentFragment.o nsFrameLoader.o nsGenConImageContent.o nsGenericDOMDataNode.o nsGenericDOMNodeList.o nsGenericElement.o nsGkAtoms.o nsHTMLContentSerializer.o nsImageLoadingContent.o nsLineBreaker.o nsLoadListenerProxy.o nsMappedAttributeElement.o nsMappedAttributes.o nsNameSpaceManager.o nsNoDataProtocolContentPolicy.o nsNodeInfo.o nsNodeInfoManager.o nsNodeUtils.o nsObjectLoadingContent.o nsParserUtils.o nsPlainTextSerializer.o nsPropertyTable.o nsRange.o nsScriptElement.o nsScriptEventManager.o nsScriptLoader.o nsStubDocumentObserver.o nsStubImageDecoderObserver.o nsStubMutationObserver.o nsStyledElement.o nsStyleLinkElement.o nsSyncLoadService.o nsTextFragment.o nsTextNode.o nsTreeWalker.o nsXMLContentSerializer.o nsXMLHttpRequest.o nsXMLNameSpaceMap.o dummy.o nsCanvasRenderingContext2D.o nsEventListenerManager.o nsEventStateManager.o nsDOMEvent.o nsDOMDataContainerEvent.o nsDOMUIEvent.o nsDOMKeyboardEvent.o nsDOMTextEvent.o nsDOMMouseEvent.o nsDOMMutationEvent.o nsDOMPopupBlockedEvent.o nsDOMBeforeUnloadEvent.o nsDOMPageTransitionEvent.o nsDOMXULCommandEvent.o nsDOMCommandEvent.o nsDOMMessageEvent.o nsPrivateTextRange.o nsDOMEventGroup.o nsXMLEventsManager.o nsXMLEventsElement.o nsPLDOMEvent.o nsEventDispatcher.o nsIMEStateManager.o nsQueryContentEventHandler.o nsClientRect.o nsGenericHTMLElement.o nsFormSubmission.o nsImageMapUtils.o nsHTMLAnchorElement.o nsHTMLAreaElement.o nsHTMLBRElement.o nsHTMLBodyElement.o nsHTMLButtonElement.o nsHTMLCanvasElement.o nsHTMLDelElement.o nsHTMLDivElement.o nsHTMLFieldSetElement.o nsHTMLFontElement.o nsHTMLFormElement.o nsHTMLFrameElement.o nsHTMLFrameSetElement.o nsHTMLHRElement.o nsHTMLHeadElement.o nsHTMLHeadingElement.o nsHTMLHtmlElement.o nsHTMLIFrameElement.o nsHTMLImageElement.o nsHTMLInputElement.o nsHTMLLIElement.o nsHTMLLabelElement.o nsHTMLLegendElement.o nsHTMLLinkElement.o nsHTMLMapElement.o nsHTMLMetaElement.o nsHTMLObjectElement.o nsHTMLOListElement.o nsHTMLSharedObjectElement.o nsHTMLOptionElement.o nsHTMLOptGroupElement.o nsHTMLParagraphElement.o nsHTMLPreElement.o nsHTMLScriptElement.o nsHTMLSelectElement.o nsHTMLSharedElement.o nsHTMLSpanElement.o nsHTMLStyleElement.o nsHTMLTableElement.o nsHTMLTableCaptionElement.o nsHTMLTableCellElement.o nsHTMLTableColElement.o nsHTMLTableRowElement.o nsHTMLTableSectionElement.o nsHTMLTextAreaElement.o nsHTMLTitleElement.o nsHTMLContentSink.o nsHTMLFragmentContentSink.o nsHTMLDocument.o nsMediaDocument.o nsPluginDocument.o nsImageDocument.o nsWyciwygChannel.o nsWyciwygProtocolHandler.o nsXMLElement.o nsXMLCDATASection.o nsXMLProcessingInstruction.o nsXMLStylesheetPI.o nsXMLContentSink.o nsXMLFragmentContentSink.o nsXMLDocument.o nsXMLPrettyPrinter.o txDouble.o txList.o txExpandedNameMap.o txNamespaceMap.o txURIUtils.o txXMLUtils.o txXMLParser.o txBooleanExpr.o txBooleanResult.o txCoreFunctionCall.o txExpr.o txExprLexer.o txExprParser.o txFilterExpr.o txFunctionCall.o txLocationStep.o txNumberExpr.o txNumberResult.o txPathExpr.o txPredicatedNodeTest.o txPredicateList.o txRelationalExpr.o txRootExpr.o txStringResult.o txErrorExpr.o txLiteralExpr.o txNameTest.o txNamedAttributeStep.o txNodeSet.o txNodeTypeTest.o txForwardContext.o txNodeSetContext.o txResultRecycler.o txUnionExpr.o txUnionNodeTest.o txUnaryExpr.o txVariableRefExpr.o txXPathOptimizer.o nsXPathEvaluator.o nsXPathExpression.o nsXPathNSResolver.o nsXPathResult.o nsXPath1Scheme.o txMozillaXPathTreeWalker.o txNodeSetAdaptor.o txXPCOMExtensionFunction.o txNodeSorter.o txXPathResultComparator.o txBufferingHandler.o txExecutionState.o txEXSLTFunctions.o txInstructions.o txOutputFormat.o txRtfHandler.o txStylesheet.o txStylesheetCompileHandlers.o txStylesheetCompiler.o txTextHandler.o txToplevelItems.o txXSLTNumber.o txXSLTNumberCounters.o txPatternOptimizer.o txXSLTPatterns.o txXSLTProcessor.o txPatternParser.o txUnknownHandler.o txCurrentFunctionCall.o txDocumentFunctionCall.o txFormatNumberFunctionCall.o txGenerateIdFunctionCall.o txKeyFunctionCall.o txXSLTEnvironmentFunctionCall.o txMozillaStylesheetCompiler.o txMozillaTextOutput.o txMozillaXMLOutput.o txMozillaXSLTProcessor.o nsXBLBinding.o nsXBLPrototypeBinding.o nsXBLPrototypeResources.o nsXBLResourceLoader.o nsXBLDocumentInfo.o nsXBLContentSink.o nsXBLProtoImplProperty.o nsXBLProtoImplMethod.o nsXBLProtoImplField.o nsXBLProtoImpl.o nsXBLEventHandler.o nsXBLWindowKeyHandler.o nsXBLPrototypeHandler.o nsXBLService.o nsBindingManager.o nsXBLInsertionPoint.o nsXULControllers.o nsElementMap.o nsXULCommandDispatcher.o nsXULContentSink.o nsXULDocument.o nsXULPrototypeCache.o nsXULPrototypeDocument.o nsView.o nsScrollPortView.o nsViewManager.o nsBarProps.o nsDOMException.o nsDOMWindowUtils.o nsJSEnvironment.o nsJSTimeoutHandler.o nsFocusController.o nsGlobalWindow.o nsGlobalWindowCommands.o nsLocation.o nsDOMWindowList.o nsJSUtils.o nsScreen.o nsHistory.o nsMimeTypeArray.o nsPluginArray.o nsWindowRoot.o nsDOMClassInfo.o nsScriptNameSpaceManager.o nsDOMScriptObjectFactory.o nsJSEventListener.o nsJSON.o nsJSProtocolHandler.o nsDOMStorage.o nsDOMStorageDB.o nsDOMOfflineResourceList.o nsPlaintextDataTransfer.o nsPlaintextEditor.o nsTextEditUtils.o nsTextEditRules.o nsEditorEventListeners.o nsWrapUtils.o nsInternetCiter.o nsAOLCiter.o nsTextEditRulesBidi.o nsEditor.o nsEditorCommands.o nsEditorController.o nsEditorUtils.o nsSelectionState.o EditTxn.o PlaceholderTxn.o ChangeAttributeTxn.o ChangeCSSInlineStyleTxn.o CreateElementTxn.o DeleteElementTxn.o DeleteRangeTxn.o DeleteTextTxn.o EditAggregateTxn.o IMETextTxn.o InsertElementTxn.o InsertTextTxn.o JoinElementTxn.o SetDocTitleTxn.o SplitElementTxn.o nsStyleSheetTxns.o TransactionFactory.o nsPrintEngine.o nsPrintData.o nsPrintObject.o nsPagePrintTimer.o nsPrintPreviewListener.o nsTreeBodyFrame.o nsTreeBoxObject.o nsTreeColFrame.o nsTreeColumns.o nsTreeContentView.o nsTreeImageListener.o nsTreeSelection.o nsTreeStyleCache.o nsTreeUtils.o nsGridLayout2.o nsGridRowLayout.o nsGridRowLeafLayout.o nsGridRowLeafFrame.o nsGridRowGroupLayout.o nsGridRowGroupFrame.o nsGrid.o nsGridRow.o nsGridCell.o nsXULElement.o nsXULPopupListener.o nsContentSupportMap.o nsContentTestNode.o nsInstantiationNode.o nsTreeRows.o nsRDFConInstanceTestNode.o nsRDFConMemberTestNode.o nsRDFPropertyTestNode.o nsRDFBinding.o nsRDFQuery.o nsResourceSet.o nsRuleNetwork.o nsTemplateMatch.o nsTemplateRule.o nsXULContentBuilder.o nsXULContentUtils.o nsXULTreeBuilder.o nsXULSortService.o nsXULTemplateBuilder.o nsXULTemplateQueryProcessorRDF.o nsXULTemplateResultRDF.o nsXULTemplateResultSetRDF.o nsXMLBinding.o nsXULTemplateQueryProcessorXML.o nsXULTemplateResultXML.o nsXULTemplateQueryProcessorStorage.o nsXULTemplateResultStorage.o inDeepTreeWalker.o inFlasher.o inSearchLoop.o inCSSValueSearch.o inDOMUtils.o inLayoutUtils.o inDOMView.o nsMathMLOperators.o nsMathMLChar.o nsMathMLFrame.o nsMathMLContainerFrame.o nsMathMLForeignFrameWrapper.o nsMathMLTokenFrame.o nsMathMLmoFrame.o nsMathMLmrowFrame.o nsMathMLmphantomFrame.o nsMathMLmfencedFrame.o nsMathMLmfracFrame.o nsMathMLmsupFrame.o nsMathMLmsubFrame.o nsMathMLmsubsupFrame.o nsMathMLmmultiscriptsFrame.o nsMathMLmtableFrame.o nsMathMLmunderFrame.o nsMathMLmoverFrame.o nsMathMLmunderoverFrame.o nsMathMLmpaddedFrame.o nsMathMLmspaceFrame.o nsMathMLmstyleFrame.o nsMathMLmsqrtFrame.o nsMathMLmrootFrame.o nsMathMLmactionFrame.o nsMathMLElement.o nsMathMLElementFactory.o nsXMLContentBuilder.o nsXTFElementWrapper.o nsXTFInterfaceAggregator.o nsXTFService.o nsXTFWeakTearoff.o nsSVGAFrame.o nsSVGClipPathFrame.o nsSVGContainerFrame.o nsSVGFilterFrame.o nsSVGGFrame.o nsSVGGenericContainerFrame.o nsSVGGeometryFrame.o nsSVGGlyphFrame.o nsSVGGradientFrame.o nsSVGImageFrame.o nsSVGInnerSVGFrame.o nsSVGLeafFrame.o nsSVGMarkerFrame.o nsSVGMaskFrame.o nsSVGOuterSVGFrame.o nsSVGPaintServerFrame.o nsSVGPathGeometryFrame.o nsSVGPatternFrame.o nsSVGStopFrame.o nsSVGTextContainerFrame.o nsSVGTextFrame.o nsSVGTextPathFrame.o nsSVGTSpanFrame.o nsSVGUseFrame.o nsSVGUtils.o nsSVGForeignObjectFrame.o nsSVGDocument.o nsDOMSVGZoomEvent.o nsDOMSVGEvent.o nsSVGAElement.o nsSVGAngle.o nsSVGAnimatedLengthList.o nsSVGAnimatedNumberList.o nsSVGAnimatedRect.o nsSVGAnimatedPreserveAspectRatio.o nsSVGAnimatedString.o nsSVGAnimatedTransformList.o nsSVGBoolean.o nsSVGCircleElement.o nsSVGClassValue.o nsSVGClipPathElement.o nsSVGDataParser.o nsSVGDefsElement.o nsSVGDescElement.o nsSVGElement.o nsSVGElementFactory.o nsSVGEllipseElement.o nsSVGEnum.o nsSVGFeatures.o nsSVGFilterElement.o nsSVGFilters.o nsSVGGElement.o nsSVGGradientElement.o nsSVGGraphicElement.o nsSVGImageElement.o nsSVGInteger.o nsSVGLength.o nsSVGLength2.o nsSVGLengthList.o nsSVGLineElement.o nsSVGMarkerElement.o nsSVGMaskElement.o nsSVGMatrix.o nsSVGMetadataElement.o nsSVGNumber.o nsSVGNumber2.o nsSVGNumberList.o nsSVGPathDataParser.o nsSVGPathElement.o nsSVGPathGeometryElement.o nsSVGPathSeg.o nsSVGPathSegList.o nsSVGPatternElement.o nsSVGPoint.o nsSVGPointList.o nsSVGPolyElement.o nsSVGPolygonElement.o nsSVGPolylineElement.o nsSVGPreserveAspectRatio.o nsSVGScriptElement.o nsSVGStringProxyValue.o nsSVGStylableElement.o nsSVGRect.o nsSVGRectElement.o nsSVGSVGElement.o nsSVGStopElement.o nsSVGStyleElement.o nsSVGSwitchElement.o nsSVGSymbolElement.o nsSVGTSpanElement.o nsSVGTextElement.o nsSVGTextPathElement.o nsSVGTitleElement.o nsSVGTransform.o nsSVGTransformList.o nsSVGTransformListParser.o nsSVGUseElement.o nsSVGValue.o nsSVGForeignObjectElement.o nsEditProperty.o nsHTMLAbsPosition.o nsHTMLAnonymousUtils.o nsHTMLDataTransfer.o nsHTMLCSSUtils.o nsHTMLEditor.o nsHTMLEditorStyle.o nsHTMLEditRules.o nsHTMLEditUtils.o nsHTMLObjectResizer.o nsHTMLEditorMouseListener.o nsHTMLInlineTableEditor.o nsHTMLURIRefObject.o nsTableEditor.o nsWSRunObject.o TypeInState.o TextEditorTest.o nsFilteredContentIterator.o nsTextServicesDocument.o nsTSDNotifier.o nsDocShellModule.o nsDocShell.o nsWebShell.o nsDocShellLoadInfo.o nsDocShellEditorData.o nsDocShellTransferableHooks.o nsDocShellEnumerator.o nsDSURIContentListener.o nsDefaultURIFixup.o nsGlobalHistoryAdapter.o nsGlobalHistory2Adapter.o nsWebNavigationInfo.o nsAboutRedirector.o nsDownloadHistory.o nsURILoader.o nsDocLoader.o nsExternalHelperAppService.o nsExternalProtocolHandler.o nsMIMEInfoImpl.o nsLocalHandlerApp.o nsOSHelperAppService.o nsGNOMERegistry.o nsMIMEInfoUnix.o nsPrefetchService.o nsOfflineCacheUpdate.o nsSHEntry.o nsSHTransaction.o nsSHistory.o nsEmbeddingModule.o nsPrompt.o nsWWJSUtils.o nsWindowWatcher.o nsAutoWindowStateHelper.o nsDialogParamBlock.o nsPromptService.o nsAppStartupNotifier.o nsWebBrowserFind.o nsFind.o nsWebBrowserPersist.o nsBaseCommandController.o nsCommandGroup.o nsCommandManager.o nsCommandParams.o nsControllerCommandTable.o nsPrintingPromptService.o nsPrintProgressParams.o nsPrintProgress.o nsWebBrowserModule.o nsDocShellTreeOwner.o nsWebBrowser.o nsCommandHandler.o nsWebBrowserContentPolicy.o nsContextMenuInfo.o nsEmbedStream.o nsChromeTreeOwner.o nsContentTreeOwner.o nsXULWindow.o nsAppShellService.o nsAppShellWindowEnumerator.o nsWebShellWindow.o nsWindowMediator.o nsAbout.o nsAppShellFactory.o nsTransactionItem.o nsTransactionList.o nsTransactionManager.o nsTransactionManagerFactory.o nsTransactionStack.o nsChromeFactory.o nsChromeRegistry.o nsChromeProtocolHandler.o nsCommandLine.o nsToolkitCompsModule.o nsAppStartup.o nsUserInfoUnix.o nsDownloadManager.o nsAlertsService.o nsUrlClassifierDBService.o nsUrlClassifierStreamUpdater.o nsUrlClassifierUtils.o nsUrlClassifierHashCompleter.o nsScriptableUnescapeHTML.o nsTypeAheadFind.o nsEntropyCollector.o nsSecureBrowserUIImpl.o nsBOOTModule.o nsSecurityWarningDialogs.o md4.o nsNSSCleaner.o nsCertOverrideService.o nsRecentBadCerts.o nsPSMBackgroundThread.o nsSSLThread.o nsCertVerificationThread.o nsCipherInfo.o nsProtectedAuthThread.o nsNSSCallbacks.o nsNSSComponent.o nsNSSErrors.o nsNSSIOLayer.o nsSSLStatus.o nsNSSModule.o nsSSLSocketProvider.o nsTLSSocketProvider.o nsSDR.o nsPK11TokenDB.o nsNSSCertificate.o nsPKCS12Blob.o nsNSSASN1Object.o nsKeygenHandler.o nsCrypto.o nsPKCS11Slot.o nsKeygenThread.o nsCMSSecureMessage.o nsCMS.o nsCertPicker.o nsCRLInfo.o nsNSSCertCache.o nsNSSCertHelper.o nsNSSCertificateDB.o nsNSSCertTrust.o nsNSSCertValidity.o nsOCSPResponder.o nsUsageArrayHelper.o nsCRLManager.o nsNSSShutDown.o nsNTLMAuthModule.o nsSmartCardMonitor.o nsSmartCardEvent.o nsStreamCipher.o nsKeyModule.o nsIdentityChecking.o nsDataSignatureVerifier.o nsRandomGenerator.o nsCertTree.o nsXMLExtrasModule.o nsFIXptr.o nsXPointer.o ns4xPlugin.o ns4xPluginInstance.o nsPluginHostImpl.o nsPluginModule.o nsPluginInstancePeer.o nsJSNPRuntime.o nsPluginsDirUnix.o nsPluginNativeWindowGtk2.o nsFindService.o nsFindModule.o nsModule.o nsDirectoryViewer.o nsBrowserInstance.o nsBrowserStatusFilter.o nsUnixSystemProxySettings.o CertReader.o nsInstallTrigger.o nsJSInstallTriggerGlobal.o nsSoftwareUpdate.o nsXPITriggerInfo.o nsXPInstallManager.o nsXPIInstallInfo.o jsdebug.o jsd_atom.o jsd_high.o jsd_hook.o jsd_lock.o jsd_obj.o jsd_scpt.o jsd_stak.o jsd_step.o jsd_text.o jsd_val.o jsd_xpc.o nsReadConfig.o nsAutoConfig.o nsConfigFactory.o nsJSConfigTriggers.o nsAuthFactory.o nsHttpNegotiateAuth.o nsAuthGSSAPI.o nsAuthSASL.o nsAuthSambaNTLM.o nsCookieModule.o nsPermission.o nsPermissionManager.o nsPopupWindowManager.o nsCookiePromptService.o nsCookiePermission.o nsModuleFactory.o nsContentBlocker.o nsUniversalCharDetModule.o nsUdetXPCOMWrapper.o CharDistribution.o JpCntx.o LangBulgarianModel.o LangCyrillicModel.o LangGreekModel.o LangHungarianModel.o LangHebrewModel.o nsHebrewProber.o nsCharSetProber.o nsBig5Prober.o nsEUCJPProber.o nsEUCKRProber.o nsEUCTWProber.o nsEscCharsetProber.o nsEscSM.o nsGB2312Prober.o nsMBCSGroupProber.o nsMBCSSM.o nsSBCSGroupProber.o nsSBCharSetProber.o nsSJISProber.o nsUTF8Prober.o nsLatin1Prober.o nsUniversalDetector.o LangThaiModel.o nsComposeTxtSrvFilter.o nsComposerController.o nsComposerCommands.o nsComposerDocumentCommands.o nsComposerRegistration.o nsEditingSession.o nsComposerCommandsUpdater.o nsEditorSpellCheck.o nsRDFModule.o rdfTriplesSerializer.o nsCompositeDataSource.o nsContainerEnumerator.o nsDefaultResourceFactory.o nsInMemoryDataSource.o nsNameSpaceMap.o nsRDFContentSink.o nsRDFContainer.o nsRDFContainerUtils.o nsRDFService.o nsRDFXMLDataSource.o nsRDFXMLParser.o nsRDFXMLSerializer.o rdfutil.o nsLocalStore.o nsFileSystemDataSource.o nsWindowDataSource.o nsCharsetMenu.o nsFileView.o nsWildCard.o mozStorageModule.o mozStorageService.o mozStorageConnection.o mozStorageStatement.o mozStorageStatementWrapper.o mozStorageValueArray.o mozStorageUnicodeFunctions.o nsAnnoProtocolHandler.o nsAnnotationService.o nsFaviconService.o nsNavHistory.o nsNavHistoryExpire.o nsNavHistoryQuery.o nsNavHistoryResult.o nsNavBookmarks.o nsMaybeWeakPtr.o nsMorkHistoryImporter.o nsPlacesModule.o nsNavHistoryAutoComplete.o nsAutoCompleteController.o nsAutoCompleteSimpleResult.o nsFormFillController.o nsStorageFormHistory.o nsNSSDialogs.o nsPKIModule.o nsPKIParamBlock.o nsASN1Tree.o nsNSSDialogHelper.o nsFormSigningDialog.o nsUnicodeToMathematica1.o nsUnicodeToMathematica2.o nsUnicodeToMathematica3.o nsUnicodeToMathematica4.o nsUnicodeToMathematica5.o nsUnicodeToMTExtra.o nsUCvMathModule.o nsUnicodeToTeXCMRt1.o nsUnicodeToTeXCMMIt1.o nsUnicodeToTeXCMSYt1.o nsUnicodeToTeXCMEXt1.o nsUnicodeToTeXCMRttf.o nsUnicodeToTeXCMMIttf.o nsUnicodeToTeXCMSYttf.o nsUnicodeToTeXCMEXttf.o mozcontainer.o mozdrawingarea.o keysym2ucs.o nsPrintdGTK.o gtk2drawing.o nsWindow.o nsAppShell.o nsWidgetFactory.o nsToolkit.o nsBidiKeyboard.o nsCommonWidget.o nsLookAndFeel.o nsGtkKeyUtils.o nsClipboard.o nsDragService.o nsFilePicker.o nsSound.o nsNativeKeyBindings.o nsScreenGtk.o nsScreenManagerGtk.o nsDeviceContextSpecG.o nsPrintOptionsGTK.o nsImageToPixbuf.o nsAccessibilityHelper.o nsIdleServiceGTK.o nsPrintDialogGTK.o nsPrintSettingsGTK.o nsNativeThemeGTK.o nsBaseAppShell.o nsBaseWidget.o nsTransferable.o nsHTMLFormatConverter.o nsBaseDragService.o nsPrimitiveHelpers.o nsXPLookAndFeel.o nsClipboardHelper.o nsPrintOptionsImpl.o nsPrintSettingsImpl.o nsPrintSession.o nsWidgetAtoms.o nsIdleService.o nsBaseFilePicker.o nsNativeTheme.o nsSystemPrefService.o nsSystemPrefFactory.o nsSystemPref.o nsThebesDeviceContext.o nsThebesImage.o nsThebesRegion.o nsThebesGfxFactory.o nsThebesRenderingContext.o nsThebesFontMetrics.o nsThebesFontEnumerator.o nsSystemFontsGTK2.o jvmmgr.o scd.o nsJVMManager.o nsJVMPluginTagInfo.o ProxyJNI.o nsCNullSecurityContext.o ProxyClassLoader.o nsCSecurityContext.o nsCJVMManagerFactory.o nsJVMConfigManager.o lcglue.o nsJVMAuthTools.o nsJVMConfigManagerUnix.o nsGTKRemoteService.o mozSpellCheckerFactory.o mozSpellChecker.o mozPersonalDictionary.o mozEnglishWordUtils.o mozGenericWordUtils.o mozSpellI18NManager.o mozInlineSpellChecker.o mozInlineSpellWordUtil.o mozHunspell.o affentry.o affixmgr.o csutil.o hashmgr.o hunspell.o phonet.o suggestmgr.o mozHunspellDirProvider.o StreamFunctions.o nsDeflateConverter.o nsZipHeader.o nsZipDataStream.o nsZipWriter.o ZipWriterModule.o pldhash.o nsArrayEnumerator.o nsArrayUtils.o nsCategoryCache.o nsCOMPtr.o nsCOMArray.o nsCRTGlue.o nsComponentManagerUtils.o nsEnumeratorUtils.o nsID.o nsIInterfaceRequestorUtils.o nsINIParser.o nsISupportsImpl.o nsMemory.o nsWeakReference.o nsGREGlue.o nsVersionComparator.o nsTHashtable.o nsQuickSort.o nsVoidArray.o nsTArray.o nsThreadUtils.o nsTObserverArray.o nsCycleCollectionParticipant.o nsDeque.o nsAutoLock.o nsGenericFactory.o nsProxyRelease.o nsTextFormatter.o nsXPComInit.o nsXPCOMStrings.o nsAtomTable.o nsAtomService.o nsByteBuffer.o nsCheapSets.o nsCRT.o nsFixedSizeAllocator.o nsHashSets.o nsHashtable.o nsINIParserImpl.o nsObserverList.o nsObserverService.o nsProperties.o nsPersistentProperties.o nsRecyclingAllocator.o nsStaticNameTable.o nsStringEnumerator.o nsSupportsArray.o nsSupportsArrayEnumerator.o nsSupportsPrimitives.o nsUnicharBuffer.o nsVariant.o nsTimelineService.o nsArray.o nsHashPropertyBag.o nsAppFileLocationProvider.o nsBinaryStream.o nsDirectoryService.o nsEscape.o nsInputStreamTee.o nsLinebreakConverter.o nsLocalFileCommon.o nsMultiplexInputStream.o nsPipe3.o nsStreamUtils.o nsScriptableInputStream.o nsSegmentedBuffer.o SpecialSystemDirectory.o nsStorageStream.o nsStringStream.o nsUnicharInputStream.o nsNativeCharsetUtils.o nsFastLoadFile.o nsFastLoadService.o nsLocalFileUnix.o nsCategoryManager.o nsComponentManager.o nsNativeComponentLoader.o nsStaticComponentLoader.o nsServiceManagerObsolete.o nsEventQueue.o nsEnvironment.o nsThread.o nsThreadManager.o nsThreadPool.o nsProcessCommon.o nsTimerImpl.o TimerThread.o nsProxyEvent.o nsProxyEventClass.o nsProxyEventObject.o nsProxyObjectManager.o nsAllocator.o nsVersionComparatorImpl.o nsConsoleMessage.o nsConsoleService.o nsDebugImpl.o nsErrorService.o nsExceptionService.o nsMemoryImpl.o nsTraceRefcntImpl.o nsInterfaceRequestorAgg.o nsUUIDGenerator.o nsSystemInfo.o nsCycleCollector.o nsStackWalk.o nsMemoryReporterManager.o xptcall.o xptcinvoke_unixish_x86.o xptcstubs_unixish_x86.o xptiFile.o xptiInterfaceInfo.o xptiInterfaceInfoManager.o xptiManifest.o xptiMisc.o xptiTypelibGuts.o xptiWorkingSet.o xptiZipItem.o xptiZipLoader.o xpt_arena.o xpt_struct.o xpt_xdr.o nsDependentString.o nsDependentSubstring.o nsPrintfCString.o nsPromiseFlatString.o nsReadableUtils.o nsSubstring.o nsSubstringTuple.o nsString.o nsStringComparator.o nsStringObsolete.o ugen.o uscan.o umap.o nsUCSupport.o nsUCConstructors.o nsUnicodeDecodeHelper.o nsUnicodeEncodeHelper.o nsColor.o nsColorNames.o nsDeviceContext.o nsFont.o nsRect.o nsRegion.o nsTransform2D.o nsScriptableRegion.o nsRenderingContextImpl.o gfxImageFrame.o reg.o VerReg.o vr_stubs.o nr_bufio.o nsMorkReader.o gtk2xtbin.o nsCUPSShim.o nsPaperPS.o nsPSPrinters.o cairo-xlib-utils.o gfxASurface.o gfxAlphaRecovery.o gfxContext.o gfxImageSurface.o gfxFont.o gfxFontMissingGlyphs.o gfxFontTest.o gfxFontUtils.o gfxMatrix.o gfxPath.o gfxPattern.o gfxPlatform.o gfxRect.o gfxSkipChars.o gfxTextRunCache.o gfxTextRunWordCache.o gfxXlibSurface.o gfxPlatformGtk.o gfxXlibNativeRenderer.o gfxPangoFonts.o gfxPDFSurface.o gfxPSSurface.o gfxFontconfigUtils.o nsUnicodeRange.o jsj.o jsj_JSObject.o jsj_JavaArray.o jsj_JavaClass.o jsj_JavaMember.o jsj_JavaObject.o jsj_JavaPackage.o jsj_array.o jsj_class.o jsj_convert.o jsj_field.o jsj_hash.o jsj_method.o jsj_utils.o nsCLiveconnect.o nsCLiveconnectFactory.o nsAppFileLocProviderProxy.o nsJavaInterfaces.o nsJavaWrapper.o nsJavaXPTCStub.o nsJavaXPTCStubWeakRef.o nsJavaXPCOMBindingUtils.o MacJawt.o  -L/opt/local/lib -framework Cocoa  -Wl,-executable_path,../../dist/bin -Wl,-dead_strip -L/opt/local/lib -lsqlite3   -dynamiclib -install_name @executable_path/libxul.dylib -compatibility_version 1 -current_version 1 -single_module -L../../dist/bin -L../../dist/lib  -L../../dist/bin -L../../dist/lib -L/opt/local/lib -ljpeg  -L../../modules/libimg/png -lmozpng -L../../dist/bin -lmozlcms -L../../dist/bin -lmozjs -L/opt/local/lib/nss -lssl3 -lsmime3 -lnss3 -lnssutil3 -lcrmf  -L/opt/local/lib -lz  -L/opt/local/lib -lpangocairo-1.0 -lcairo -lpixman-1 -lpng12 -lXrender -lX11 -lXau -lXdmcp -lpangoft2-1.0 -lpango-1.0 -lm -lfontconfig -lexpat -lfreetype -lz -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv   -L/opt/local/lib -lcairo -lpixman-1 -lpng12 -lXrender -lX11 -lXau -lXdmcp -lfontconfig -lexpat -lfreetype -lz    -L/opt/local/lib -L/opt/local/lib -lcairo -lpixman-1 -lfontconfig -lexpat -lfreetype -lpng12 -lz -lXrender -lX11 -lXau -lXdmcp   -L/opt/local/lib -lplds4 -lplc4 -lnspr4 -L/opt/local/lib -L/opt/local/lib -lX11  -L/opt/local/lib -lXft -lXrender -lfontconfig -lexpat -lfreetype -lz -lX11 -lXau -lXdmcp   -L/opt/local/lib -lgtk-x11-2.0 -latk-1.0 -lgio-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpangoft2-1.0 -lpixman-1 -lpng12 -lXrender -lX11 -lXau -lXdmcp -lpango-1.0 -lm -lfontconfig -lexpat -lfreetype -lz -lgmodule-2.0 -lgobject-2.0 -lglib-2.0 -lintl -liconv   -lXt -lgthread-2.0 -L/opt/local/lib -lfreetype -lz     
ld: duplicate symbol NS_WildCardValid(unsigned short*)in nsWildCard.o and nsWildCard.o
collect2: ld returned 1 exit status
gmake[3]: *** [libxul.dylib] Error 1
gmake[3]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_devel_xulrunner/work/mozilla/toolkit/library'
gmake[2]: *** [libs_tier_toolkit] Error 2
gmake[2]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_devel_xulrunner/work/mozilla'
gmake[1]: *** [tier_toolkit] Error 2
gmake[1]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_devel_xulrunner/work/mozilla'
make: *** [all] Error 2
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_devel_xulrunner/work/mozilla" && make all " returned error 2
And to make matters worse, the two versions are slightly different:

--- modules/libjar/nsWildCard.cpp	2006-03-29 14:10:37.000000000 -0800
+++ xpfe/components/filepicker/src/nsWildCard.cpp	2004-04-17 09:51:24.000000000 -0700
@@ -22,8 +22,8 @@
  * Contributor(s):
  *
  * Alternatively, the contents of this file may be used under the terms of
- * either 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"),
+ * 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
@@ -38,24 +38,24 @@
 /* *
  * 
  *
- * nsWildCard.cpp: shell-like wildcard match routines
+ * shexp.c: shell-like wildcard match routines
  *
- * See nsIZipReader.findEntries documentation in nsIZipReader.idl for
- * a description of the syntax supported by the routines in this file.
+ * See shexp.h for public documentation.
  *
  * Rob McCool
  * 
  */
 
 #include "nsWildCard.h"
+#include "nsCRT.h"
 #include "plstr.h"
 #include "prmem.h"
 
-/* ----------------------------- _valid_subexp ------------------------------ */
+/* ----------------------------- shexp_valid ------------------------------ */
 
 
 static int 
-_valid_subexp(char *expr, char stop) 
+_valid_subexp(PRUnichar *expr, PRUnichar stop) 
 {
     register int x,y,t;
     int nsc,np,tld;
@@ -77,7 +77,7 @@ _valid_subexp(char *expr, char stop) 
             ++nsc;
             if((!expr[++x]) || (expr[x] == ']'))
                 return INVALID_SXP;
-            for(;expr[x] && (expr[x] != ']');++x)
+            for(++x;expr[x] && (expr[x] != ']');++x)
                 if(expr[x] == '\\')
                     if(!expr[++x])
                         return INVALID_SXP;
@@ -125,7 +125,7 @@ _valid_subexp(char *expr, char stop) 
 }
 
 int 
-NS_WildCardValid(char *expr) 
+NS_WildCardValid(PRUnichar *expr) 
 {
     int x;
 
@@ -134,19 +134,21 @@ NS_WildCardValid(char *expr) 
 }
 
 
-/* ----------------------------- _shexp_match ----------------------------- */
+/* ----------------------------- shexp_match ----------------------------- */
 
 
 #define MATCH 0
 #define NOMATCH 1
 #define ABORTED -1
 
-static int _shexp_match(char *str, char *expr, PRBool case_insensitive);
+static int _shexp_match(const PRUnichar *str, const PRUnichar *expr,
+                        PRBool case_insensitive);
 
 static int 
-_handle_union(char *str, char *expr, PRBool case_insensitive) 
+_handle_union(const PRUnichar *str, const PRUnichar *expr,
+              PRBool case_insensitive) 
 {
-    char *e2 = (char *) PR_Malloc(sizeof(char)*strlen(expr));
+    PRUnichar *e2 = (PRUnichar *) PR_Malloc(sizeof(PRUnichar)*nsCRT::strlen(expr));
     register int t,p2,p1 = 1;
     int cp;
 
@@ -174,7 +176,8 @@ _handle_union(char *str, char *expr, PRB
 
 
 static int 
-_shexp_match(char *str, char *expr, PRBool case_insensitive) 
+_shexp_match(const PRUnichar *str, const PRUnichar *expr,
+             PRBool case_insensitive) 
 {
     register int x,y;
     int ret,neg;
@@ -232,16 +235,8 @@ _shexp_match(char *str, char *expr, PRBo
                 else {
                     int matched;
                     
-                    for (matched=0;expr[y] != ']';y++) {
-                        /* match an escaped ']' character */
-                        if('\\' == expr[y] && ']' == expr[y+1]) {
-                            if(']' == str[x])
-                                matched |= 1;
-                            y++; /* move an extra char to compensate for '\\' */
-                            continue;
-                        }
+                    for (matched=0;expr[y] != ']';y++)
                         matched |= (str[x] == expr[y]);
-                    }
                     if (neg ^ (!matched))
                         ret = NOMATCH;
                 }
@@ -274,14 +269,15 @@ _shexp_match(char *str, char *expr, PRBo
 }
 
 int 
-NS_WildCardMatch(char *str, char *xp, PRBool case_insensitive) {
+NS_WildCardMatch(const PRUnichar *str, const PRUnichar *xp,
+                 PRBool case_insensitive) {
     register int x;
-    char *expr = PL_strdup(xp);
+    PRUnichar *expr = nsCRT::strdup(xp);
 
 	if(!expr)
 		return 1;
 
-    for(x=strlen(expr)-1;x;--x) {
+    for(x=nsCRT::strlen(expr)-1;x;--x) {
         if((expr[x] == '~') && (expr[x-1] != '\\')) {
             expr[x] = '\0';
             if(_shexp_match(str,&expr[++x], case_insensitive) == MATCH)
This can be easily fixed by copying modules/libjar/nsWildCard.cpp to modules/libjar/nsWildCard_jar.cpp and changing 
Index: modules/libjar/objs.mk
===================================================================
--- modules/libjar/objs.mk.orig 2009-03-24 18:01:04.967844294 +0000
+++ modules/libjar/objs.mk      2009-03-24 18:01:08.752677342 +0000
@@ -37,7 +37,7 @@
 
 MODULES_STANDALONE_LCPPSRCS = \
                nsZipArchive.cpp \
-               nsWildCard.cpp \
+               nsWildCard_jar.cpp \
                $(NULL)
 
 MODULES_LIBJAR_LCPPSRCS = \



It only affects platforms without the equivalent of --whole-archive, --no-whole-archive (at least HP-UX, Mac OS X)
Thanks, I'll give that a shot.
Thanks, that fixed the linking problem.  Could this change be merged into HEAD?
We'd like to see that too, we ran into this issue building firefox-3.0.x on HP-UX.
You'll need to attach a patch, and ask for review.
Attached file This is the "patch" to fix the problem (obsolete) —
Attachment #370657 - Flags: review?
Attachment #370657 - Flags: review? → review?(benjamin)
Comment on attachment 370657 [details]
This is the "patch" to fix the problem

Could you in fact submit a patch using mercurial? "hg mv" will let you rename files.
Attachment #370657 - Attachment is obsolete: true
Attachment #370657 - Flags: review?(benjamin)
I haven't used mercurial before, so that will require me learning it first...
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → jeremyhu
Status: NEW → ASSIGNED
Is this still a problem now that the filepicker version of nsWildCard has moved into toolkit/components/filepicker?

If I read this correctly, the copy of nsWildCard.o in toolkit/library/ is a copy of the filepicker version. Why is there a linking problem for that .o, but not for any of the other copied .o files in toolkit/library/?
(In reply to comment #10)
> Is this still a problem now that the filepicker version of nsWildCard has moved
> into toolkit/components/filepicker?

I still see this problem with the firefox-3.1b3 source, where xpfe/components/filepicker/src/nsWildCard.cpp was moved to toolkit/components/filepicker/src.
The problem is that there are two nsWildCard.o files built, one has functions that take a PRUnichar* and the other has functions that take a char*. Due to C++ name mangling the functions are named differently in the output, So one nsWildCard.o has NS_WildCardValid(unsigned short*), and the other has NS_WildCardValid(char *). Some users want the unsigned short* functions, some (well, specifically nsZipArchive.cpp) want the char* functions. When libxul is created it is made from multiple static archives, with --whole-archive file1.a file2.a --no-whole-archive, so both the char* and PRUnichar* end up in the output.

If there is no equivalent for --whole-archive, the archives are unpacked in toolkit/library, which means that one nsWildCard.o will overwrite the other, and nsWildCard.o will end up twice on the link line that attempts to create libxul. There are a few possible solutions to this problem:

1) As above, rename one of the nsWildCard.o to something else.
2) Patch nsZipArchive.cpp to use the  PRUnichar* versions of the nsWildCard functions, so only one nsWildCard is necessary.
3) When unpacking archives to create libxul, unpack each one to its own dir.

(1) seems easiest.
4) Bug 487192 (where Ted pointed me here)
I've attached some patches in bug 487192 that should do the trick.
Let me know if the fix to bug 487192 did the trick.
libxul.dylib now builds successfully for me w/out any duplicate symbols (OS X 10.5.6/intel/cairo-gtk2)
Yeah, this is no longer an issue in 1.9.2
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.