No subject


Wed Aug 13 15:23:46 PDT 2008


might be the place to add the missing lsb version information so that
lsbcc would know what to link shared for a given LSB version. =20

=20

I'm thinking of a schema change that would add two columns to each
table, one called 'LSB_Version_Appeared', and another called
'LSB_Version_Removed'

=20

Since I'm new around here I'd probably populate the current contents of
specdb with '3.0' for all things not desktop and '3.1' for all things
desktop as the appeared version and provide a magic value for the
its-never-been-removed version.

=20

To complete the picture, I would then at build-time use a build-time
supplied LSB version number to generate the currently in-line tables of
LSB shared libs in lsbcc from the specdb.

=20

Upside: one less change to forget when adding a new lib to LSB, one
small step towards complete LSB version data in the specdb, and one less
thing that bugs me.  It might also be possible to pre-flight new libs in
the production DB w/o perturbing the current LSB version builds.

=20

Downside: Uncertain: would this collide with other work going on
someplace?  Libtodb would need another update and command line parameter
to insert the records.

=20

Thanks,

=20

Tracy Camp


------_=_NextPart_001_01C6F6CB.3788BC44
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns=3D"http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)">
<style>
<!--
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman";}
a:link, span.MsoHyperlink
	{color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:Arial;
	color:windowtext;}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
	{page:Section1;}
-->
</style>

</head>

<body lang=3DEN-US link=3Dblue vlink=3Dpurple>

<div class=3DSection1>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>I&#8217;ve been working on fixing up various things =
about
the lsb dev environment that bug me.&nbsp; As those that know me well =
can
attest, it&#8217;s the little things that bug me and one of them is
repeatability.&nbsp; In this context I would like to be able to produce =
an
lsbcc binary that can tell you what version of LSB it was built from and =
then
correctly link binaries for that version.&nbsp; Please note I =
didn&#8217;t
claim &#8216;correctly produce&#8217; binaries.&nbsp; This is just an
incremental solution I&#8217;m seeking.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>For reasons of sanity and quality I think it would be =
best
if this was not dependant on forking lsbcc.c and specdb for each and =
every LSB
release (though that might and probably does happen for other entirely
legitimate reasons).<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>There are actually two parts of this issue, one of =
them is
at a header level (what interfaces, constants, macros and associated ABI
information are allowed in this LSB version?) and the other is at a =
larger grained
lsbcc link fixup level (what shared libs are allowed in this LSB =
version?).&nbsp;
It is this latter problem I would like to address =
here.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>From looking at the specdb it appears that the ModCmd =
and
ModLib tables might be the place to add the missing lsb version =
information so
that lsbcc would know what to link shared for a given LSB version.&nbsp; =
<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>I&#8217;m thinking of a schema change that would add =
two columns
to each table, one called &#8216;LSB_Version_Appeared&#8217;, and =
another
called &#8216;LSB_Version_Removed&#8217;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Since I&#8217;m new around here I&#8217;d probably =
populate
the current contents of specdb with &#8216;3.0&#8217; for all things not
desktop and &#8216;3.1&#8217; for all things desktop as the appeared =
version
and provide a magic value for the its-never-been-removed =
version.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>To complete the picture, I would then at build-time =
use a
build-time supplied LSB version number to generate the currently in-line =
tables
of LSB shared libs in lsbcc from the =
specdb.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Upside: one less change to forget when adding a new =
lib to
LSB, one small step towards complete LSB version data in the specdb, and =
one
less thing that bugs me.&nbsp; It might also be possible to pre-flight =
new libs
in the production DB w/o perturbing the current LSB version =
builds.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Downside: Uncertain: would this collide with other =
work
going on someplace?&nbsp; Libtodb would need another update and command =
line
parameter to insert the records.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Thanks,<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Tracy Camp<o:p></o:p></span></font></p>

</div>

</body>

</html>

------_=_NextPart_001_01C6F6CB.3788BC44--




More information about the lsb-discuss mailing list