Wireshark-dev: [Wireshark-dev] Win32: The best way to solve dependencies for user-guide.chm / H

From: Ulf Lamping <ulf.lamping@xxxxxx>
Date: Thu, 18 Jan 2007 01:15:55 +0100
Hi List!

Unfortunately, the online help feature is only *almost* ready, but I would like to add it to 0.99.5 as it's stable in my eyes - but I was busy the last days to do the final step. So here's my current problem in short, I'm looking for opinions.

Background:
- using user-guide.chm on Win32 instead of .html files for the new "online help" has some advantages and is therefore desired - when the user looks into the help, having user-guide.chm locally installed frees user from having an internet connection - to enable WS to show user-guide.chm requires htmlhelp.h / .lib at compile time, which is not available as default for MSVC6 (but as a free download) - generating user-guide.chm requires some advanced tool/library setup (JAVA, FOP, ...) - therefore only developers of the guide itself should be required to generate user-guide.chm

This means for the buildbot:
- create docbook before the Wireshark setup - Gerald already changed this
- it has htmlhelp.c/.lib already installed - no change
- enabling WS setup.exe generation with user-guide.chm requires HHC_DIR set in config.nmake - can be easily changed

This means for other developers (three options possible):
A.)
- disable HHC_DIR in config.nmake again (and as a consequence don't provide the online help with "personal generated" WS installations) - quite easy / but no help and a required change from the default values in config.nmake
or
B.):
- install HTML HELP WORKSHOP, small download from Microsoft (2-3MB?) - easy, but some additional work - download user-guide.chm and copy it into the /docbook dir of the sources - maybe we could add this to the setup target somehow (where currently only the win32 libraries are downloaded)
or
C.)
Declare docbook generation (user-guide, developer-guide) mandatory, which requires a lot of additional tools and libs - this seems overkill to me for this purpose.


I would like to keep things for newbie developers as simple as possible. For this reason I prefer B.) as it seems to be the cleanest way without adding too much additional trouble for a newbie developer ...

So which is the way to go?

Regards, ULFL