wiki:WikiStart/InstallationInstructions

Installing the VB Filter

The easiest way to install the documentation filter ist to add a new Doc folder to your project/solution.

Step 1: download and extract

Download vbfilter.zip and extract the contents of the package into the
root directory of your project/solution.

The package contains a single folder called "vbfilter-*" you can rename it to Doc or Documentation.

Classic VB: the structure of your VB6 project folder should look like this:

[V] MyProject
    +--- [V] Doc
    |        +--- Doxyfile
    |        +--- make.bat
    |        +--- [V] bin
    |                 +--- gawk.exe
    |                 +--- vbfilter.awk
    +--- MyProject.vbp
    +--- [...]

VB.NET: a .NET solution folder should look like this:

[V] MySolution
    +--- [V] Doc
    |        +--- Doxyfile
    |        +--- make.bat
    |        +--- [V] bin
    |                 +--- gawk.exe
    |                 +--- vbfilter.awk
    +--- [V] MyProject
    |        +--- MyProject.vbproj
    |        +--- [...]
    +--- MySolution.sln
    +--- [...]

Step 2: basic configuration

Before you begin, you should set some basic properties in the preconfigured Doxyfile.

Open Doc\Doxyfile with doxywizard or an editor of your choice
(Windows Notepad may have problems with the line breaks! Use Notepad++ on Windows!)
and change PROJECT_NAME according to your project.

If you have installed GraphViz, you can enable it using HAVE_DOT = YES.

For a more sophisicated configuration read the Configuring Doxygen
and Configuring the filter pages.

Additionally the package contains the default layout files,
which are preconfigured in Doc\Doxyfile:

[V] Doc
    +--- [V] layout
             +--- doxygen.css
             +--- DoxygenLayout.xml

You can customize the documentation layout to your needs.
Read more in the Doxygen manual:  http://www.stack.nl/~dimitri/doxygen/customize.html

Advanced Installation

The VB filter can be installed anywhere you like and be used in a svn hook for example.

The next steps describe a system wide installation.

Windows

Step 1: Prerequisites

Download and install Doxygen and optionally GraphViz. Both setups set the PATH environment variable correctly,
so you can run the binaries from everywhere on the command line.

Download the Gawk binary or setup package from  http://gnuwin32.sourceforge.net/packages/gawk.htm.[[BR]] You may want to add gawk.exe to your path, too. Simply copy gawk.exe to C:\Windows\,
or add the path to gawk.exe to your PATH environment variable.

Step 2: Unpack vbfilter.awk

Download vbfilter.zip and extract Doc\bin\vbfilter.awk to
a directory without whitespaces.

Alternatively you can checkout the current development version
from http://trac.sevo.org/svn/doxyvb/trunk/vbfilter.awk.

Good places could be:

  • c:\vbfilter\vbfilter.awk
  • c:\ProgramData\vbfilter\vbfilter.awk

Linux

Step 1: Prerequisites

Download and install Doxygen and optionally GraphViz.
Make sure that the binaries are installed in your PATH so you can run them directly (check with which doxygen; which dot).

Make sure you have gawk installed.

Step 2: Unpack vbfilter.awk

Download vbfilter.zip and extract Doc/bin/vbfilter.awk.

Alternatively you can checkout the current development version
from http://trac.sevo.org/svn/doxyvb/trunk/vbfilter.awk.

Good places for the script could be:

  • /var/lib/vbfilter/vbfilter.awk
  • /usr/local/share/vbfilter/vbfilter.awk

Wrapper script

If you have different source types in your solution and want
to use the FILTER_PATTERNS option,
or if you have many Doxyfiles and don't want to bother about pathes,
you should create a wrapper script.

A wrapper script simply runs gawk.exe with the "-f" parameter.
It's only a workaround, because Doxygen has problems with launching
a filter binary with additional parameters, if FILTER_PATTERNS Doxyfile option is used.

Windows

Create a new Batch file in the vbfilter or Windows folder with the following content:

@echo off
C:\vbfilter\gawk.exe -f C:\vbfilter\vbfilter.awk "%1%"

You can find an example script in the SVN repo: http://trac.sevo.org/projects/doxyvb/browser/trunk/vbfilter.bat

Change the pathes accordingly to your system!
Additionally you should add the path of the script to your PATH environment variable.

Now you can simply set

INPUT_FILTER           = vbfilter.bat

or

FILTER_PATTERNS        = *.vb=vbfilter.bat

in your Doxyfiles.

Linux

create a new shell script, named vbfilter.sh, in your path (/usr/local/bin/vbfilter.sh for example):

#/!bin/sh
gawk -f /var/lib/vbfilter/vbfilter.awk "$1"

You can find an example script in the SVN repo: http://trac.sevo.org/projects/doxyvb/browser/trunk/vbfilter.sh

Don't forget to make the script executable:

chmod +x /usr/local/bin/vbfilter.sh

Now you can simply set

INPUT_FILTER           = vbfilter.sh

or

FILTER_PATTERNS        = *.vb=vbfilter.sh

in your Doxyfiles.