135 lines
2.3 KiB
Perl
Executable file
135 lines
2.3 KiB
Perl
Executable file
#!/usr/bin/perl
|
|
# vim: set ts=4:
|
|
|
|
$manvolnum="3";
|
|
$header="#include <comedilib.h>";
|
|
|
|
$end = "";
|
|
$refentry_end = "";
|
|
|
|
$s = <>;
|
|
chomp $s;
|
|
|
|
print
|
|
'<?xml version="1.0" encoding="utf-8"?>
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
|
<!ENTITY % comedilib_entities SYSTEM "comedilib.ent">
|
|
%comedilib_entities;
|
|
]>
|
|
<!--This file is autogenerated. Do not edit-->
|
|
<section>
|
|
<title>';
|
|
print $s;
|
|
print '</title>
|
|
';
|
|
|
|
while($s = <>){
|
|
chomp $s;
|
|
if($s =~ m/^Function: (.*)/){
|
|
$funcname = $1;
|
|
$refpurpose = "";
|
|
if($s =~ m/^Function: (.*) -- (.*)/){
|
|
$funcname = $1;
|
|
$refpurpose = $2;
|
|
}
|
|
$refname = $funcname;
|
|
$refname =~ s/_/-/g;
|
|
$refname = "func-ref-" . $refname;
|
|
print $end;
|
|
print $refentry_end;
|
|
$refentry_end =
|
|
"</refentry>
|
|
";
|
|
print
|
|
"<refentry id=\"$refname\">
|
|
|
|
<refmeta>
|
|
<refentrytitle>$funcname</refentrytitle>
|
|
<manvolnum>$manvolnum</manvolnum>
|
|
<refmiscinfo class=\"source\">Comedi</refmiscinfo>
|
|
<refmiscinfo class=\"manual\">Comedi reference</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>$funcname</refname>
|
|
<refpurpose>$refpurpose</refpurpose>
|
|
</refnamediv>
|
|
";
|
|
$end = "";
|
|
}elsif($s =~ m/^Retval: (.*)/){
|
|
print
|
|
" <refsynopsisdiv>
|
|
<funcsynopsis>
|
|
<funcsynopsisinfo>$header</funcsynopsisinfo>
|
|
<funcprototype>
|
|
<funcdef><type>$1</type> <function>$funcname</function></funcdef>
|
|
";
|
|
$end =
|
|
" </funcprototype>
|
|
</funcsynopsis>
|
|
</refsynopsisdiv>
|
|
";
|
|
}elsif($s =~ m/^Param:[[:space:]]*void/){
|
|
print
|
|
" <void/>
|
|
"
|
|
}elsif($s =~ m/^Param: (.*)/){
|
|
$p = $1;
|
|
$p =~ m/(.*) (.*)/;
|
|
print
|
|
" <paramdef><type>$1</type> <parameter>$2</parameter></paramdef>
|
|
"
|
|
}elsif($s =~ m/^Description:/){
|
|
print $end;
|
|
print
|
|
" <refsect1>
|
|
<title>
|
|
Description
|
|
</title>
|
|
<para>
|
|
";
|
|
$end =
|
|
" </para>
|
|
</refsect1>
|
|
";
|
|
}elsif($s =~ m/^Returns:/){
|
|
print $end;
|
|
print
|
|
" <refsect1>
|
|
<title>
|
|
Return value
|
|
</title>
|
|
<para>
|
|
";
|
|
$end =
|
|
" </para>
|
|
</refsect1>
|
|
";
|
|
}elsif($s =~ m/^Status: (.*)/){
|
|
print $end;
|
|
print
|
|
" <refsect1>
|
|
<title>
|
|
Status
|
|
</title>
|
|
<para>
|
|
$1
|
|
";
|
|
$end =
|
|
" </para>
|
|
</refsect1>
|
|
";
|
|
}elsif($s eq ""){
|
|
print "</para><para>\n";
|
|
}elsif($s =~ m/^[\s](.*)/){
|
|
print "$1\n";
|
|
}
|
|
}
|
|
|
|
print $end;
|
|
print $refentry_end;
|
|
print "</section>";
|
|
|
|
exit(0);
|
|
|