Closed
Bug 384346
Opened 17 years ago
Closed 17 years ago
nsRDFResource.h does not use frozen linkage
Categories
(MailNews Core :: Backend, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: mscott, Assigned: mscott)
References
Details
Attachments
(1 file, 1 obsolete file)
6.15 KB,
patch
|
benjamin
:
superreview+
|
Details | Diff | Splinter Review |
Now that we've got most of the string cleanup out of the way (see Bug #379070) I'm now actually starting to compile without MOZ_INTERNAL_API in mailnews\base. The first non string error I ran into involved nsRDFResource.h Mailnews includes nsRDFResource.h (http://mxr.mozilla.org/mozilla/source/rdf/util/public/nsRDFResource.h) which does not support frozen linkage. cc'ing Benjamin so I can better understand the best way for us to proceed. As I see it we could: 1) Port rdf\util (which is just nsRDFResource.h/.cpp) to frozen linkage. But this gets linked in by rdf\base so this effectively means convert RDF to use frozen linkage. 2) Fork nsRDFResource.h/.cpp into mailnews\base\util and convert that implementation to use frozen linkage.
Assignee | ||
Comment 1•17 years ago
|
||
This doesn't actually do anything of course because rdf\util gets linked in by rdf\base\src... just saving off for safe keeping.
Comment 2•17 years ago
|
||
You're probably best-off ompiling two versions of rdfutil, one with internal linkage and one with external. You should be able to use the same sources, as long as you use nsStringGlue.h See for example intl/unicharutil/util/internal/Makefile.in which builds an internal version of unicharutils from the same sources as intl/unicharutil/util/Makefile.in
Updated•17 years ago
|
OS: Windows Vista → All
Assignee | ||
Comment 3•17 years ago
|
||
Thanks for the suggestion Benjamin. This is my first attempts at implementing this idea. Still testing it out.
Assignee | ||
Comment 4•17 years ago
|
||
Comment on attachment 268438 [details] [diff] [review] first attempt Benjamin, would it be better to export the library like unicharutil_s/unicharutil_external_s instead of linking against the library from /rdf/util/src/internal ?
Attachment #268438 -
Flags: superreview?(benjamin)
Comment 5•17 years ago
|
||
You're going to need to export the external-linkage version in order to get tbird+XR working, but you shouldn't export the internal-linkage version (just link directly from rdf/util/src/internal)
Comment 6•17 years ago
|
||
Comment on attachment 268438 [details] [diff] [review] first attempt >Index: rdf/util/src/Makefile.in > EXTRA_DEPS += $(srcdir)/objs.mk > > MODULE = rdfutil >-LIBRARY_NAME = rdfutil_s >-MOZILLA_INTERNAL_API = 1 >+LIBRARY_NAME = rdfutil_external_s Add DIST_INSTALL = 1 to this makefile.
Attachment #268438 -
Flags: superreview?(benjamin) → superreview+
Assignee | ||
Comment 7•17 years ago
|
||
fixed. Thanks for the pointers Benjamin.
Assignee | ||
Updated•17 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Updated•16 years ago
|
Product: Core → MailNews Core
You need to log in
before you can comment on or make changes to this bug.
Description
•