Closed
Bug 13509
Opened 26 years ago
Closed 16 years ago
[feature] special typelib annotations for builddate and sourcefile
Categories
(Core :: XPCOM, defect, P4)
Tracking
()
RESOLVED
INCOMPLETE
Future
People
(Reporter: jband_mozilla, Assigned: dbradley)
Details
a big link of xpt files creates a file that is about one quarter full of
meaningless annotations
| Reporter | ||
Updated•26 years ago
|
Assignee: mccabe → jband
Hardware: PC → All
Summary: xpt_link needs an option to disable creating annotations → xpt_link needs an option to enable creating annotations
| Reporter | ||
Comment 1•26 years ago
|
||
reaasigning to me.
changed this from "option to disable" to "option to enable" - i.e. we just don't
generally need the annotation that is being written. This annotation just
says when the linker was run and what files were merged. I'm going to make the
annotation not get written by default.
| Reporter | ||
Updated•26 years ago
|
Status: NEW → ASSIGNED
Summary: xpt_link needs an option to enable creating annotations → typelib annotations waste space
| Reporter | ||
Comment 2•26 years ago
|
||
OK, I'm renaming this bug again to reflect the problem, not just a possible
solution.
"typelib annotations waste space"
A couple of points:
1) Why bother to save what we save: source idl filename, build date, interface
name list?
2) If we want to save some or all of this info then why in verbose text? We
could declare some tagged types of annotations (e.g. BUILD_DATE) and save the
binary data. Annotations are optional, but they don't need to be all text. We
can have xpt_dump know how to dump well known types of annotations.
3) If we are going to limit annotations it should be in the xpidl compiler not
xpt_link.
In my tree I added a '-a' option to xpidl that will make it emit annotation.
Otherwise it emits none. Is there a reason why we should not simply not emit
these annotations? I realise that if we want to acually use the option then the
Mac tool will need a change.
A note: libxpt and the the dumper were broken in that they didn't even
check to see if a typelib header might have zero annotations.
Who has opinions?
Comment 3•26 years ago
|
||
Generally agreed, but the typelib spec says that you have to have at least one
annotation:
tag
The tag field discriminates among the variant record types for
Annotation's. If the tag is 0, this record is an EmptyAnnotation.
EmptyAnnotation's are ignored - they're only used to indicate an array
of Annotation's that's completely empty. If the tag is
1, the record is a PrivateAnnotation.
We should make a way for XPT_DoHeader to be told ``no annotations'' when it
restores as well, and save some CPU/memory. That's probably another bug,
though.
| Reporter | ||
Comment 4•26 years ago
|
||
[midair collision] Aha, I see that the typelib format requires at least one
single empty annotation. Fine.
Comment 5•26 years ago
|
||
...although we shouldn't crash if we have a typelib without one, and we probably
do.
| Reporter | ||
Comment 6•26 years ago
|
||
Yup. The 8bit chunk with the 'last' flag is the minimum requirement. That's
fine.
| Reporter | ||
Comment 7•26 years ago
|
||
I checked in these changes:
1) xpt_link now does not spit out its own meaningless annotation. And, it only
copies annotations from files if the first annotation is not empty (and marked
as the last annotation).
2) The xpidl compiler does not emit its (fairly) useless annotations anymore. It
*does* emit the required empty annotation marked as 'last'. I added a
commandline option to turn back on the old behavour at runtime if desired.
** The Mac compiler UI could add support for this option if desired **
I really think that if we want meaninful annotations then we should define some
flags for them and pack them in.
| Reporter | ||
Updated•26 years ago
|
Summary: typelib annotations waste space → [feature] special typelib annotations for builddate and sourcefile
| Reporter | ||
Comment 8•26 years ago
|
||
renamed from:
"typelib annotations waste space"
to
"[feature] special typelib annotations for builddate and sourcefile"
We could have tagged types of annotation records to tightly pack additional info
we might want to save rather than the humanreadable spacewasting annotations we
removed.
Comment 9•25 years ago
|
||
This bug has not been touched for more than nine months. In most cases, that
means it has "slipped through the net". Please could the owner take a moment to
add a comment to the bug with current status, and/or close it.
Thank you :-)
Gerv
| Reporter | ||
Comment 10•25 years ago
|
||
mass reassign of xpidl bugs to dbradley@netscape.com
Assignee: jband → dbradley
Status: ASSIGNED → NEW
Updated•25 years ago
|
Target Milestone: --- → Future
| Assignee | ||
Updated•25 years ago
|
Status: NEW → ASSIGNED
| Assignee | ||
Updated•25 years ago
|
Priority: P3 → P4
Updated•16 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•