Commit 60a18f12 authored by Xavier Guimard's avatar Xavier Guimard

Remove old Doxygen files

parent c4f5a0d1
......@@ -115,12 +115,6 @@ Files: doc/media/icons/flags/*
Copyright: Mark James
License: CC-3
Files: scripts/doxygenfilter scripts/DoxyGen/Filter.pm
scripts/DoxyGen/SQLFilter.pm
Copyright: 2002, Bart Schuller
2006, Phinex Informatik AG <tom.aeby@phinex.ch>
License: Artistic or GPL-1+
Files: doc/lib/tpl/default/images/* doc/lib/images/*
doc/lib/plugins/note/images/* doc/media/wiki/dokuwiki-128.png
Copyright: 2004-2012 Andreas Gohr <andi@splitbrain.org>
......
This diff is collapsed.
......@@ -242,8 +242,6 @@ all: configure common handler manager portal
@echo 'Other targets :'
@echo " * Partial build :"
@echo " - portal, manager, handler"
@echo " * Doxygen documentation"
@echo " - doxygen (to build Doxygen documentation in doc/devel/)"
@echo
@echo 'Other targets launched by "make install" :'
@echo " * Perl libraries install :"
......@@ -962,18 +960,6 @@ manager_cpan: manager_conf
documentation:
@cd doc/ && ../scripts/doc.pl
doxygen: clean
$(PERL) -i -pe 's/^(PROJECT_NUMBER\s*=\s*)\d.*$$/$${1}'$(VERSION)'/' Doxyfile
COLLABORATIVE_GRAPH=1 doxygen Doxyfile
mkdir doc/devel/tmp
mv doc/devel/html/inherit* doc/devel/tmp/
COLLABORATIVE_GRAPH=0 doxygen Doxyfile
mv -f doc/devel/tmp/* doc/devel/html/
rm -rf doc/devel/tmp
$(PERL) -i -pe 's/Graphical Class Hierarchy/Class Collaboration Graph/' doc/devel/html/inherits.html doc/devel/html/tree.html
# Some files are not generated
for i in doc/devel/html/*dot; do dot -T png -o $${i/.dot/.png} $$i; rm -f $$i; done
diff: debian-diff
# TODO: change this
......
......@@ -115,12 +115,6 @@ Files: doc/media/icons/flags/*
Copyright: Mark James
License: CC-3
Files: scripts/doxygenfilter scripts/DoxyGen/Filter.pm
scripts/DoxyGen/SQLFilter.pm
Copyright: 2002, Bart Schuller
2006, Phinex Informatik AG <tom.aeby@phinex.ch>
License: Artistic or GPL-1+
Files: doc/lib/tpl/default/images/* doc/lib/images/*
doc/lib/plugins/note/images/* doc/media/wiki/dokuwiki-128.png
Copyright: 2004-2012 Andreas Gohr <andi@splitbrain.org>
......
# =======================================================================
# Doxygen Pre-Processor for Perl
# Copyright (C) 2002 Bart Schuller
# Copyright (C) 2006 Phinex Informatik AG
# All Rights Reserved
#
# Doxygen Filter is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
#
# Larry Wall's 'Artistic License' for perl can be found in
# http://www.perl.com/pub/a/language/misc/Artistic.html
#
# =======================================================================
#
# Author: Aeby Thomas, Phinex Informatik AG,
# Based on DoxygenFilter from Bart Schuller
# E-Mail: tom.aeby@phinex.ch
#
# Phinex Informatik AG
# Thomas Aeby
# Kirchweg 52
# 1735 Giffers
#
# =======================================================================
#
# @(#) $Id: Filter.pm,v 1.2 2006/01/31 16:53:52 aeby Exp $
#
# Revision History:
#
# $Log: Filter.pm,v $
# Revision 1.2 2006/01/31 16:53:52 aeby
# added copyright info
#
#
# =======================================================================
## @file
# implementation of DoxyGen::Filter.
## @class
# Filter from non-C++ syntax API docs to Doxygen-compatible syntax.
# This class is meant to be used as a filter for the
# <a href="http://www.doxygen.org/">Doxygen</a> documentation tool.
package DoxyGen::Filter;
use warnings;
use strict;
## @cmethod object new($outfh)
# create a filter object.
# @param outfh optional output filehandle; defaults to STDOUT
# @return filter object
sub new {
my $class = shift;
my $outfh = shift || \*STDOUT;
return bless { outfh => $outfh }, $class;
}
## @method virtual void filter($infh)=0
# do the filtering.
# @param infh input filehandle, normally STDIN
sub filter {
die "subclass responsibility";
}
## @method protected string protection($sig)
# Return the protection of a method/function signature.
# @param sig the method signature
# @return Either "Public" or "Private".
sub protection {
my ( $self, $sig ) = @_;
return $sig =~ /^(private|protected)/ ? "\u$1" : 'Public';
}
## @method void start($command)
# start a doc comment.
# Outputs the start of a javadoc comment.
# @param command the javadoc command
sub start {
my $self = shift;
my $command = shift;
$self->print("/** $command\n");
return $self;
}
## @method void end()
# end a doc comment.
# Outputs the end of a javadoc comment.
sub end {
my $self = shift;
$self->print("*/\n");
return $self;
}
## @method void push($section)
# Start a diversion to a section.
# @param section The name of the section to divert all output to.
# @see pop(), print(), flush()
sub push {
my ( $self, $section ) = @_;
$self->{current_section} = $section;
return $self;
}
## @method void pop()
# End a diversion to a section.
# @see push(), flush()
sub pop {
my ($self) = @_;
delete $self->{current_section};
return $self;
}
## @method void print(@args)
# print a string to the output handle.
# If a diversion to a specific section is in effect: saves the text under
# that section.
# @param args the strings to be printed
# @see push(), flush()
sub print {
my $self = shift;
return unless @_;
if ( my $section = $self->{current_section} ) {
CORE::push @{ $self->{sections}{$section} }, @_;
}
else {
my $outfh = $self->{outfh};
print $outfh @_;
}
return $self;
}
## @method void more(@args)
# process the follow-up lines after the initial apidoc line.
# @param args the lines to be processed
sub more {
my $self = shift;
$self->print(@_);
return $self;
}
my @order = (
'Public Initialization Methods',
'Public Initialization Functions',
'Public Class Methods',
'Public Authentication Process Methods',
'Public Running Methods',
'Public Running Functions',
'Public Object Methods',
'Public Functions',
'Protected Initialization Methods',
'Protected Initialization Functions',
'Protected Class Methods',
'Protected Authentication Process Methods',
'Protected Running Methods',
'Protected Running Functions',
'Protected Object Methods',
'Protected Functions',
'Private Initialization Methods',
'Private Initialization Functions',
'Private Class Methods',
'Private Authentication Process Methods',
'Private Running Methods',
'Private Running Functions',
'Private Object Methods',
'Private Functions',
);
## @method void flush()
# Flush the saved sections. Should be called at the end of a class.
# @see push(), print()
sub flush {
my $self = shift;
my $sections = $self->{sections};
foreach (@order) {
next unless $sections->{$_};
$self->start("\@name $_\n")->end;
$self->start("\@{")->end;
$self->print("\n");
$self->print( @{ $sections->{$_} } );
$self->print("\n");
$self->start("\@}")->end;
$self->print("\n");
}
delete $self->{sections};
return $self;
}
1;
__END__
=head1 NAME
Doxygen::Filter - use DoxyGen with Perl and other languages.
=head1 DESCRIPTION
Filter from non-C++ syntax API docs to Doxygen-compatible syntax.
This class is meant to be used as a filter for the
Doxygen (http://www.doxygen.org/) documentation tool
This diff is collapsed.
# =======================================================================
# Doxygen Pre-Processor for Perl
# Copyright (C) 2002 Bart Schuller
# Copyright (C) 2006 Phinex Informatik AG
# All Rights Reserved
#
# Doxygen Filter is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
#
# Larry Wall's 'Artistic License' for perl can be found in
# http://www.perl.com/pub/a/language/misc/Artistic.html
#
# =======================================================================
#
# Author: Aeby Thomas, Phinex Informatik AG,
# Based on DoxygenFilter from Bart Schuller
# E-Mail: tom.aeby@phinex.ch
#
# Phinex Informatik AG
# Thomas Aeby
# Kirchweg 52
# 1735 Giffers
#
# =======================================================================
#
# @(#) $Id: SQLFilter.pm,v 1.2 2006/01/31 16:53:52 aeby Exp $
#
# Revision History:
#
# $Log: SQLFilter.pm,v $
# Revision 1.2 2006/01/31 16:53:52 aeby
# added copyright info
#
#
# =======================================================================
## @file
# implementation of DoxyGen::SQLFilter.
#
## @class
# Filter from SQL syntax API docs to Doxygen-compatible syntax.
# This class is meant to be used as a filter for the
# <a href="http://www.doxygen.org/">Doxygen</a> documentation tool.
package DoxyGen::SQLFilter;
use warnings;
use strict;
use base qw(DoxyGen::Filter);
## @method void filter($infh)
# do the filtering.
# @param infh input filehandle, normally STDIN
sub filter {
my ( $self, $infile ) = @_;
open( my $infh, $infile );
my $current_class;
while (<$infh>) {
if (/\/\*\*\s*\@(\S+)\s*(.*)/) {
my ( $command, $args ) = ( $1, $2 );
my @more;
while (<$infh>) {
if (/\*\//) {
# We expect to be on the line after a comment.
$_ = <$infh>;
last;
}
else {
/\s*(\*\s)?(.+)/s;
push @more, $2;
}
}
if ( $command eq 'file' ) {
$args ||= $infile;
$self->start("\@$command $args");
$self->more(@more);
$self->end;
}
elsif ( $command eq 'class' ) {
unless ($args) {
($args) = /package\s(\S*)/;
}
if ($current_class) {
$self->flush;
$self->print("}\n");
}
$current_class = $args;
$self->start("\@$command $args")->more(@more);
$self->print("\@nosubgrouping")->end;
$self->print("class $args");
$self->print(" {\npublic:\n");
}
elsif ( $command eq 'fn' ) {
unless ($args) {
($args) = /function\s+(.*)\b/;
$args = "retval $args(\@args)";
}
$self->push( $self->protection($args) . ' Functions' );
$self->start("\@fn $args")->more(@more)->end;
$self->print( $args, ";\n" );
$self->pop;
}
else {
$self->start("\@$command $args");
$self->more(@more);
$self->end;
}
# We ate a line when we got the rest of the comment lines
redo if defined $_;
}
elsif (/\@(\w+)/) {
my $inc = $1;
$self->print("#include \"$inc.sql\"\n");
}
}
if ($current_class) {
$self->flush;
$self->print("}\n");
}
}
1;
#!/usr/bin/perl -Iscripts
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
# =======================================================================
# Doxygen Pre-Processor for Perl
# Copyright (C) 2002 Bart Schuller
# Copyright (C) 2006 Phinex Informatik AG
# All Rights Reserved
#
# Doxygen Filter is free software; you can redistribute it and/or modify
# it under the same terms as Perl itself.
#
# Larry Wall's 'Artistic License' for perl can be found in
# http://www.perl.com/pub/a/language/misc/Artistic.html
#
# =======================================================================
#
# Author: Aeby Thomas, Phinex Informatik AG,
# Based on DoxygenFilter from Bart Schuller
# E-Mail: tom.aeby@phinex.ch
#
# Phinex Informatik AG
# Thomas Aeby
# Kirchweg 52
# 1735 Giffers
#
# =======================================================================
#
# @(#) $Id: doxygenfilter,v 1.3 2006/02/01 12:54:07 aeby Exp $
#
# Revision History:
#
# $Log: doxygenfilter,v $
# Revision 1.3 2006/02/01 12:54:07 aeby
# call pas2dox for .pas files, js2doxy for .js files
# add "lib" to the include path
#
# Revision 1.2 2006/01/31 16:53:28 aeby
# parse command line options, understand -h and -v, output a usage message if
# command line syntax is not ok
# treat input as perl if filename is ending with .pl, .pm or .perl, as sql
# if filename ends with .sql, if no file extension is used treat it as perl
# if the first line starts with #!....bin.perl. In all other cases just pass
# the file through as is.
#
#
# =======================================================================
use warnings;
use strict;
use lib "lib";
use DoxyGen::PerlFilter;
use DoxyGen::SQLFilter;
use Getopt::Long;
$Getopt::Long::ignorecase = 0;
my $verbose;
my $help;
unless( GetOptions( "verbose" => \$verbose, "v" => \$verbose,
"help" => \$help, "h" => \$help ) && $ARGV[0] ) {
$help = 1;
}
if( $help ) {
my $prog = $0;
$prog =~ s#.*/##;
print STDERR <<END;
Usage: $prog [-v] filename
Pre-processes Perl code in file <filename> and outputs
something doxygen does understand.
END
exit 1;
}
open( FILE, "<$ARGV[0]" );
my $filehead = "";
for( my $line=0; ($line<3) && ($_ = <FILE>); $line++ ) {
$filehead .= $_;
}
close FILE;
my $ext = "";
if( $ARGV[0] =~ /\.([a-z]+)$/i ) {
$ext = lc($1);
}
my $filter;
if( $ext eq "sql" ) {
print STDERR "treating file as SQL\n" if( $verbose );
$filter = DoxyGen::SQLFilter->new(\*STDOUT);
} elsif( grep( $_ eq $ext, "pl", "pm", "perl" )
|| $filehead =~ /^#!.{0,10}bin.perl/ ) {
print STDERR "treating file as Perl\n" if( $verbose );
$filter = DoxyGen::PerlFilter->new(\*STDOUT);
}
elsif( $ext eq "js" ) {
print STDERR "treating file as JavaScript\n" if( $verbose );
exec( "js2doxy", @ARGV ) or exec( "js2doxypl", @ARGV )
or print STDERR "js2doxy not installed? - see http://jsunit.berlios.de/internal.html\n";
}
elsif( $ext eq "pas" ) {
print STDERR "treating file as Pascal\n" if( $verbose );
exec( "pas2dox", @ARGV )
or print STDERR "pas2dox not installed? - see http://sourceforge.net/projects/pas2dox/\n";
}
if( $filter ) {
$filter->filter($ARGV[0]);
}
else {
print STDERR "passing file through\n" if( $verbose );
print <>;
}
#!/usr/bin/perl
use strict;
my $errorMsg;
foreach my $module (qw(common handler manager portal)) {
open CMD,
"find lemonldap-ng-$module/lib/Lemonldap/NG -type f -name '*.pm'|";
my @files;
while (<CMD>) {
chomp;
push @files, $_;
}
close CMD;
#my @files = qw(lemonldap-ng-portal/lib/Lemonldap/NG/Portal/AuthChoice.pm);
foreach my $file (@files) {
open F, $file;
$file =~ s#.*/NG/##;
$_ = <F>;
unless (/^##\s*\@file/) {
push @{ $errorMsg->{$module}->{undocumented} }, $file;
next;
}
my $autoload = 0;
while (<F>) {
next if /^(?:\s*#|\*lmLog|sub lmLog)/;
$autoload = 1 if (/use\s+AutoLoader/);
last if ( /^__END__$/ and not $autoload );
next unless (/abort|lmLog|STDERR/);
if (/lmLog/) {
$_ .= <F> while ( !/[\)\}];/s );
}
else {
$_ .= <F> while ( !/(?:\s+if\s*\()?;$/ );
}
$_ =~ s/\n//gs;
my ( $msg, $level );
if (/lmLog/) {
/lmLog\s*\(\s*(.+?)\s*,\s*(['"])(info|notice|warn|error)\2/s
or next;
( $msg, $level ) = ( $1, $3 );
}
elsif (/abort/) {
/abort\s*\(\s*(.+?)\s*(?:,\s*(.+?)\s*)?\)/s or next;
( $msg, $level ) = ( "$1 ($2)", 'abort' );
}
else {
$level = 'error';
/STDERR\s+(.*)(?:\s+if\s*\()?;$/ or next;
$msg = $1;
}
push @{ $errorMsg->{$module}->{$level} }, $msg;
}
close F;
}
print "\n###### " . uc($module) . " ######\n";
foreach ( @{ $errorMsg->{$module}->{undocumented} } ) {
print "## No Doxygen ## $_\n";
}
foreach my $level (qw(abort error warn notice info)) {
my $last = '';
next unless ( ref( $errorMsg->{$module}->{$level} ) );
foreach ( sort ( @{ $errorMsg->{$module}->{$level} } ) ) {
print "[$level] $_\n" unless ( $_ eq $last );
$last = $_;
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment