Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Status Cmake Win32 support

From: Joerg Mayer <jmayer@xxxxxxxxx>
Date: Mon, 2 Dec 2013 17:14:10 +0100
On Mon, Dec 02, 2013 at 02:28:43PM +0000, Graham Bloice wrote:
> On 2 December 2013 13:49, Joerg Mayer <jmayer@xxxxxxxxx> wrote:
> 
> > On Mon, Dec 02, 2013 at 11:34:21AM +0000, Graham Bloice wrote:
> > > On 2 December 2013 10:54, Joerg Mayer <jmayer@xxxxxxxxx> wrote:
> > > > On Sun, Dec 01, 2013 at 10:35:50PM +0000, Graham Bloice wrote:
> > > > > On 30 November 2013 23:18, Joerg Mayer <jmayer@xxxxxxxxx> wrote:
> > > >
> > > > > I still have the issue with GTK3, in that I have to comment out the
> > path
> > > > > "corrections" in FindGTK3.cmake.
> > > >
> > > > Hmm, can you please explain the problems you are encountering - I'd
> > like to
> > > > fix them. In case it involves rewriting the results from pkg-config,
> > can
> > > > you
> > > > please include the .pc file?
> > >
> > > In FindGTK3.cmake there is some code that modifies the paths found by
> > > pkg-config only on Windows.  Doing this totally messed up the paths for
> > me,
> > > I commented out the block of code and everything just worked.  Note that
> > > I'm using pkg-config from the gtk2 bundle not the Cygwin one.
> >
> > I can't find a pkg-config.exe in the gtk2 bundle. Where can I find it
> > (version, arch)? Do I need to do something special in the "nmake ... setup"
> > phase to get it?
> >
> > Weird, my CMake test system at home has one, but my nmake dev system I
> have here doesn't have it.  I'll try to find out where it came from.

OK, so I'm not blind ;->

> > > > > 8.  Fix build of plugins.
> > > >
> > > > They build on my system (cmake with nmake and msbuild).
> > > >
> > >
> > > When building wireshark, I don't see any attempt to build them, maybe
> > > there's a missing dependency in CMakeLists.  I haven't tried building
> > them
> > > explicitly.
> >
> > They are built automagically, i.e. right now I do out of tree builds
> > on 32 bit arch:
> > cmake ..\..\trunk 2>&1 | tee cmake.log
> > cmake --build . 2>&1 | tee build.log
> > With default cmakeoptions and default config.nmake files (OK, I modified
> > config.nmake temporarily to pull in gtk2 as well in order to have both
> > gtk versions to test with).
> >
> 
> On my cmake test env, using the VS201 generator and msbuild, building
> wireshark or tshark is successful without any plugins being built.

Perhaps see below.

> > > > > 9.  Fix build of executables that use WTAP_PLUGIN_SOURCES.
> > > >
> > > > Have to check what you are talking about :-)
> > > >
> > >
> > > Happened right at the end of my testing time so I didn't really
> > investigate
> > > it.  I was trying to build some one of the other executables (mergecap??)
> > > and it failed.  Then I noticed all other executables that depended on
> > > WTAP_PLUGIN_SOURCES also failed.
> >
> > I grepped the whole source tree and did not find anything:
> > jmayer@egg:~/work/wireshark/svn/trunk> grep -ri WTAP_PLUGIN_SOURCES .
> > jmayer@egg:~/work/wireshark/svn/trunk>
> >
> >
> In the main CMakeLists.txt:
> 
> W:\Wireshark\trunk>c:\cygwin\bin\grep.exe -ni WTAP_PLUGIN_SOURCES *.txt
> CMakeLists.txt:751:set(WTAP_PLUGIN_SOURCES
> CMakeLists.txt:1061:            ${WTAP_PLUGIN_SOURCES}
> CMakeLists.txt:1080:            ${WTAP_PLUGIN_SOURCES}
> CMakeLists.txt:1100:            ${WTAP_PLUGIN_SOURCES}
> CMakeLists.txt:1118:            ${WTAP_PLUGIN_SOURCES}

I just checked: This got removed by commit 53710 - so I possibly had that
problem before as well.
------------------------------------------------------------------------
r53710 | guy | 2013-12-02 09:30:29 +0100 (Mo, 02 Dez 2013) | 9 lines

Move most of the plugin code from epan to wsutil and remove all
knowledge of particular types of plugins.  Instead, let particular types
of plugins register with the common plugin code, giving a name and a
routine to recognize that type of plugin.

In particular applications, only process the relevant plugin types.

Add a Makefile.common to the codecs directory.

------------------------------------------------------------------------

Ciao
   Jörg
-- 
Joerg Mayer                                           <jmayer@xxxxxxxxx>
We are stuck with technology when what we really want is just stuff that
works. Some say that should read Microsoft instead of technology.