dolibarr-doxygen-build.pl 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/usr/bin/perl
  2. #--------------------------------------------------------------------
  3. # Lance la generation de la doc dev doxygen
  4. #--------------------------------------------------------------------
  5. # Detecte repertoire du script
  6. ($DIR=$0) =~ s/([^\/\\]+)$//;
  7. $DIR||='.';
  8. $DIR =~ s/([^\/\\])[\\\/]+$/$1/;
  9. $OPTIONS="";
  10. #$OPTIONS="-d Preprocessor";
  11. $CONFFILE="dolibarr-doxygen.doxyfile";
  12. use Cwd;
  13. my $dir = getcwd;
  14. print "Current dir is: $dir\n";
  15. #print "Running dir for doxygen must be: $DIR\n";
  16. if (! -s "build/doxygen/$CONFFILE")
  17. {
  18. print "Error: current directory for building Dolibarr doxygen documentation is not correct.\n";
  19. print "\n";
  20. print "Change your current directory then, to launch the script, run:\n";
  21. print '> perl .\dolibarr-doxygen-build.pl (on Windows)'."\n";
  22. print '> perl ../dolibarr-doxygen-build.pl (on Linux or BSD)'."\n";
  23. sleep 4;
  24. exit 1;
  25. }
  26. $SOURCE=".";
  27. # Get version $MAJOR, $MINOR and $BUILD
  28. $result = open( IN, "< " . $SOURCE . "/htdocs/filefunc.inc.php" );
  29. if ( !$result ) { die "Error: Can't open descriptor file " . $SOURCE . "/htdocs/filefunc.inc.php\n"; }
  30. while (<IN>) {
  31. if ( $_ =~ /define\('DOL_VERSION', '([\d\.a-z\-]+)'\)/ ) { $PROJVERSION = $1; break; }
  32. }
  33. close IN;
  34. ($MAJOR,$MINOR,$BUILD)=split(/\./,$PROJVERSION,3);
  35. if ($MINOR eq '') { die "Error can't detect version into ".$SOURCE . "/htdocs/filefunc.inc.php"; }
  36. $version=$MAJOR.".".$MINOR.".".$BUILD;
  37. print "Running doxygen for version ".$version.", please wait...\n";
  38. print "cat build/doxygen/$CONFFILE | sed -e 's/x\.y\.z/".$version."/' | doxygen $OPTIONS - 2>&1\n";
  39. $result=`cat build/doxygen/$CONFFILE | sed -e 's/x\.y\.z/$version/' | doxygen $OPTIONS - 2>&1`;
  40. print $result;
  41. 0;