Wireshark-dev: [Wireshark-dev] Packaging automation (was: Re: PortableApps Wireshark feedback)
From: Stephen Fisher <stephentfisher@xxxxxxxxx>
Date: Fri, 16 Nov 2007 17:09:29 -0700
On Tue, Nov 13, 2007 at 08:18:54PM +0100, Ulf Lamping wrote:

> Having a meta format to describe the required files seems a good idea. 
> However, I don't think we currently have a tool to handle XML and I
> don't like the idea of adding another tool. As the number of tools a
> newbie needs to install to generate Wireshark is already very huge
> IMHO.  Each new tool also adds the possibility of new problems.
> 
> Maybe we can find a way to use the existing toolchain for this (e.g. 
> like the version stuff using sed today)?

That is a good idea.  I would prefer to stay away from XML files if
possible as they are a bit harder to read/edit by hand than plain-text
files.

BTW, I'm in the early stages of working on yet another packaging method,
this time for MacOS X :-).  It copies Wireshark and needed
files/libraries into an Application Bundle (a single "file" - actually a
directory structure named Wireshark.app - that can be dropped into the
Applications folder with everything in it).  I don't plan to even put it
in the SVN tree until I can automate it more.

It would be great to have *one* location to specify the current version,
an automated way to get SVN version info for all platforms, and a place
to list all files that are needed for installation.  Perhaps this could
be extracted from the existing makefiles?

More details for those who are interested: My MacOS X packaging consists
of a single Perl script that calls some standard MacOS X tools to
determine library dependencies to copy in (otool -L) and modify the
paths of those libraries in Wireshark & dumpcap (install_name_tool).  I
now need to make it copy in files like the radius dictionaries, SNMP
MIBs, AUTHORS-SHORT & COPYING (for the About menu), etc.  My packaging
script needs to know what files are needed as well as figuring out the
current version & SVN version of Wireshark.  The only thing it doesn't
need is WinPcap.  So far, it gets Wireshark up and running just fine. 
It can bundle either a GTK/X11 version or native GTK/Quartz (which works
almost perfectly these days!) version of Wireshark.  Unfortunately, they
don't release pre-built binaries of GTK and friends like they do for
Windows, so those need to be compiled first.


Steve