Home page logo

wireshark logo Wireshark mailing list archives

Re: Status Cmake Win32 support
From: Graham Bloice <graham.bloice () trihedral com>
Date: Mon, 2 Dec 2013 11:34:21 +0000

On 2 December 2013 10:54, Joerg Mayer <jmayer () loplof de> wrote:

On Sun, Dec 01, 2013 at 10:35:50PM +0000, Graham Bloice wrote:
On 30 November 2013 23:18, Joerg Mayer <jmayer () loplof de> 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
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.

My current hit-list of things to do (some you've touched in in your

1.  Copy build artifacts (and 3rd party dlls etc.) to a directory for
running (as per nmake).  Almost like install.  Note that the exact
of the build artifacts depends on the type of build actually made (debug,
release etc.)

I'll look into that.

2.  Fix the generation of the manifext files (in progress GMB), and
in build (use SED to produce .manifest from .manifest.in), should go
correct intermediate build dir (e.g. wireshark.dir\Release).  Note needs
know processor architecture, so maybe should be a prebuild custom command
for each target).

I have no idea what this is about but native nmake seems to do something
as well. msbuild seems to generate something here.

There are manifest templates (*.exe.manifest.in located in the source image
directory) that (in an nmake build) are modified by a sed script to produce
the *.exe.manifest files that are then added to the list of source files
for the executable being built.  CMake and VS does the rest.  I have used
configure_file() to process the file, but an issue is that one template
field is modified depending on the build being run (x86, vs 64) so it
should really be created at build time, not cmake time.

3.  Fix the generation of the .rc files (in progress GMB), and include in
build (use SED to produce .rc from .rc.in), should go into correct
intermediate build dir (e.g. wireshark.dir\Release).  Note associated
and .manifest.


Very similar to the item above, although the .rc files can be shared
between all builds.

4.  Fix the use of zlib, so that zlib is built by CMake and doesn't
nmake build first.

This should be done in the setup process.

If zlib had a CmakeLists.txt, could we somehow chain that in?

One of the remaining points is to make the setup process independent of
nmake but we need a concept here first that should probably then be applied
to the native nmake too.

On the long list.

5.  Fix PortAudio.


6.  Fix CMake to find a working pkg-config.exe (only found in gtk2\bin at
the moment, missing from gtk3), currently manualy copied to build dir
(along with intl.dll and libglib-2.0-0.dll)

I use pkg-config from cygwin, so it might be easiest to update the

See my earlier comment about using the one from gtk2.  I'd really like not
to add any dependencies on Cygwin, as one of my long-term goals is to
remove the need for Cygwin.

7.  Fix qtshark use its own .rc file (not done in nmake either)

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

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
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

  By Date           By Thread  

Current thread:
[ Nmap | Sec Tools | Mailing Lists | Site News | About/Contact | Advertising | Privacy ]