Lsbspec Tools
From ISP_RAS
Contents |
[edit]
Description
Lsbspec module contains some tools that are used during specification generation. These are mk* scripts and fixc++spec script. The 'lsbspec' module also contains 'diffinterfacetable' and 'checksynop' scripts that have no usage in any makefiles or other tools.
fixc++spec script is used to fix the result of mklibspec work for libstdcxx library.
mk* scripts:
| Script | Description |
|---|---|
| mkcmdlist | makes list of commands for given module |
| mkcmdtable | creates sgml file containing table of commnads included in Specification or built in commands (depending on arguments) |
| mkdyntagtable | creates sgml file containg a list of dynamic entries described in given standard for given architecture |
| mkintlist | generates list of interfaces with 'Included' status (including deprecated interfaces) for given architecture |
| mklibapnd | generates sgml file with information (list of interfaces and list of standards used by library) about all (!except libstdcxx) libraries described in given module for given architecture. Library must be included in LSB specification (i.e. must have 'Included' status) |
| mklibsgmltable | generates sgml file with a list of libraries for given architecture |
| mklibspec | generates information (libgroups with lists of class data, interfaces and deprecated interfaces for each group, standards used by library, list of data interfaces and list of deprecated data interfaces) for given library for a given architecture |
| mklsbmanpage | generates man page (in sgml format) for given interface |
| mkrpmtagtable | generates sgml file with table describing rpm tags from given group |
| mksectiontable | generates sgml file with table describing elf sections defined in given standard for given architecture |
| mksecttypestable | generates sgml file with table describing elf section types defined in given standard for given architecture |
| mkstandardsgmltable | generates sgml file with table of standards that apply given architecture |
| mksynop | prints synopsis for given interfaces. Each interface must be a function (i.e. Itype='Function') and must have 'Included' or 'SrcOnly' status |
[edit]
Usage
[edit]
mkcmdlist
mkcmdlist -v <lsbversion> [-m <moduleid>]
-v <lsbversion> target LSB version
-m <moduleid> module id (Module.Mid). Default module id is 1 (i.e. LSB Core)
[edit]
mkcmdtable
mkcmdtable -v <lsbversion> [-b] [-m <moduleid>]
-v <lsbversion> target LSB version
-b produce the list of built in utilities. Without this option,
the list of commands with 'Included' status will be created
-m <moduleid> module id (Module.Mid). Default module id is 1 (i.e. LSB Core)
[edit]
mkdyntagtable
mkdyntagtable -a <archname> -s <stdname> -v <lsbversion> [-c <numcols>] [-d]
-a <archname> generate list of dynamic entries for this architecture
-s <stdname> generate list of dynamic entries described in this standard
-v <lsbversion> target LSB version
-c seems to have no usage
-d seems to have no usage
[edit]
mkintlist
mkintlist -a <archname> -v <lsbversion>
-a <archname> generate list of interfaces for this architecure
-v <lsbversion> target LSB version
[edit]
mklibapdn
mklibapdn -a <archname> -v <lsbversion> [-m module]
-a <archname> generate information for this architecture
-v <lsbversion> target LSB version
-m <module> process libraries from this module. Default module is 'LSB Core'
[edit]
mklibsgmltable
mklibsgmltable -a <archname> -v <lsbversion> [-f] [-m <modname>] [-l <incllibs> | -x <excllibs>]
-a <archname> generate info for this architecture
-v <lsbversion> target LSB version
-f process libraries with both 'Future' and 'Included' status. By default only
'Included' libraries are processed
-m <modname> process libraries described in this module
-l <incllibs> process only records from Library table whose Lname field value is in <incllibs> list
-x <excllibs> do not process records from Library table whose Lname field value is in <excllibs> list
[edit]
mklibspec
mklibspec -l <libname> -a <archname> -v <lsbversion> [-c cols] [-d]
-l <libname> generate information for this library
-a <archname> generate information for this architecture
-v <lsbversion> target LSB version
-d indicates that interface and lib groups names should be unmangled
it is used now only when work with 'libstdcxx' library
-c <numcols> how many columns will be in the tables with interfaces. By default 4 columns are generated
[edit]
mklsbmanpage
mklsbmanpage -v <lsbversion> <libname> <interfacename>
-v <lsbversion> target LSB version
<libname> library where this interface is situated. This value is not
used in any sql queries, it is just printed directly into file
<interfacename> interfacename
[edit]
mkrpmtagtable
mkrpmtagtable -g <groupname> -t <tabletitle> -v <lsbversion>
-g <groupname> generate table of tags from <groupname> group
-t <tabletitle> title of the table in sgml file
-v <lsbversion> target LSB version
[edit]
mksectiontable
mksectiontable -a <archname> -s <stdname> -t <tabletitle> -v <lsbversion>
-a <archname> generate table of sections for this architecture
-s <stdname> generate table of sections described in this standard
-t <tabletitle> title of the table in sgml file
-v <lsbversion> target LSB version
[edit]
mksecttypestable
mksecttypestable -a <archname> -s <stdname> -t <tabletitle>
-a <archname> generate table of section types for this architecture
-s <stdname> generate table of section types described in this standard
-t <tabletitle> title of the table in sgml file
[edit]
mkstandardsgmltable
mkstandardsgmltable -a <archname> [-s <specids>] [-x <exclids>] [-t <stype>]
-a <archname> - generate list of standards for this architecture
-s <specids> - process only records from Standard table whose Sname field value is in <specids> list
-x <exclids> - do not process records from Standard table whose Sname field value is in <exclids> list
-t <Stype> - process standards only of this type ('Standard'/'Reference')
[edit]
mksynop
mksynop -v <lsbversion> [<interface_name> ...]
-v <lsbversion> target LSB version
<interface_name> mksynop should be provided with a list of space-separated function names
[edit]
Dependencies on DB
[edit]
checksynop
| Table | Insert | Select |
|---|---|---|
| Interface | - | + |
| Parameter | - | + |
| Type | - | + |
| TypeMember | - | + |
[edit]
diffinterfacetable
| Table | Insert | Select |
|---|---|---|
| Interface | - | + |
| LibInt | - | + |
| Library | - | + |
| Mangle | - | + |
Note: 'Mangle' table required by this tool doesn't exist in database.
[edit]
fixc++spec
This tool doesn't work directly with db.
[edit]
mkcmdlist
| Table | Insert | Select |
|---|---|---|
| Command | - | + |
| ModCmd | - | + |
| Standard | - | + |
[edit]
mkcmdtable
| Table | Insert | Select |
|---|---|---|
| Command | - | + |
| ModCmd | - | + |
| Standard | - | + |
[edit]
mkdyntagtable
| Table | Insert | Select |
|---|---|---|
| ArchDE | - | + |
| Architecture | - | + |
| DynamicEntries | - | + |
| Standard | - | + |
[edit]
mkintlist
| Table | Insert | Select |
|---|---|---|
| ArchInt | - | + |
| Architecture | - | + |
| Interface | - | + |
| LGInt | - | + |
| LibGroup | - | + |
| Library | - | + |
| Version | - | + |
[edit]
mklibapnd
| Table | Insert | Select |
|---|---|---|
| ArchInt | - | + |
| Architecture | - | + |
| Interface | - | + |
| LGInt | - | + |
| LibGroup | - | + |
| Library | - | + |
| ModLib | - | + |
| SubModule | - | + |
| Standard | - | + |
| Version | - | + |
[edit]
mklibsgmltable
| Table | Insert | Select |
|---|---|---|
| Architecture | - | + |
| ArchLib | - | + |
| Library | - | + |
| ModLib | - | + |
| SubModule | - | + |
[edit]
mklibspec
| Table | Insert | Select |
|---|---|---|
| ArchClass | - | + |
| ArchInt | - | + |
| Architecture | - | + |
| ArchLib | - | + |
| BaseTypes | - | + |
| ClassInfo | - | + |
| ClassVtab | - | + |
| Header | - | + |
| Interface | - | + |
| LGInt | - | + |
| LibGroup | - | + |
| Library | - | + |
| Standard | - | + |
| Version | - | + |
| VMIBaseTypes | - | + |
| Vtable | - | + |
[edit]
mklsbmanpage
| Table | Insert | Select |
|---|---|---|
| Interface | - | + |
| Parameter | - | + |
| Type | - | + |
| TypeMember | - | + |
[edit]
mkrpmtagtable
| Table | Insert | Select |
|---|---|---|
| RpmTag | - | + |
[edit]
mksectiontable
| Table | Insert | Select |
|---|---|---|
| ArchES | - | + |
| Architecture | - | + |
| ElfSection | - | + |
| SectionTypes | - | + |
| Standard | - | + |
[edit]
mksecttypestable
| Table | Insert | Select |
|---|---|---|
| Architecture | - | + |
| SectionTypes | - | + |
| Standard | - | + |
[edit]
mkstandardsgmltable
| Table | Insert | Select |
|---|---|---|
| Architecture | - | + |
| Standard | - | + |
[edit]
mksynop
| Table | Insert | Select |
|---|---|---|
| Interface | - | + |
| Parameter | - | + |
| Type | - | + |
| TypeMember | - | + |