Wireshark mailing list archives

Re: Status Cmake Win32 support


From: Graham Bloice <graham.bloice () trihedral com>
Date: Sun, 1 Dec 2013 22:35:50 +0000

On 30 November 2013 23:18, Joerg Mayer <jmayer () loplof de> wrote:


   1. I had to add some MSC version definitions to CMakeLists.txt

There are two independent parts to this patch:

1) I applied the MSC_VER_REQUIRED part (after I understood the cmake
specific
   part of it).

2)
-                       set( CMAKE_PREFIX_PATH
"${QT5_BASE_PATH}\\msvc2010" )
+#                      set( CMAKE_PREFIX_PATH
"${QT5_BASE_PATH}\\msvc2010" )
+                       set( CMAKE_PREFIX_PATH "${QT5_BASE_PATH}" )

I have no idea why/how this is supposed to work: Is Qt5 supposed to
automagically
add the right msvc version back into the path?
After applying and testing this it didn't fail right away but it no longer
found Qt5LinguistTools and Qt5PrintSupport.


My qt is in C:\Qt\Qt-5.1.1-MSVC2010-win32-ws, and QT_BASE_DIR is set to
this.  I used the Qt-5.1.1-MSVC2010-win32-ws.zip from the Wireshark web
site.  I might have used the nmake target "install_qt" to do this, I can't
remember.

   4. As I've moved over to building the GTK3 version, some CMake FindXXX
   modules had to be fixed, not entirely convinced by my changes here,
but it
   works for me (Findxxx.patch).

I do my builds with GTK3 as well and they seem to build just fine. I agree
that
using gtk[23] is a hack and you cleaned that up properly. What I don't
understand
is why you removed the "IF( NOT GMODULE2_FOUND  )" (or similar) in
FindGMODULE2.cmake and FindGTHREAD2.cmake.


I've reverted the GMODULE2 and GTHREAD2 changes and GTK3 still builds for
me.  I haven't checked GTK2 builds, is there much point on Windows?

I still have the issue with GTK3, in that I have to comment out the path
"corrections" in FindGTK3.cmake.

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

1.  Copy build artifacts (and 3rd party dlls etc.) to a directory for
running (as per nmake).  Almost like install.  Note that the exact location
of the build artifacts depends on the type of build actually made (debug,
release etc.)
2.  Fix the generation of the manifext files (in progress GMB), and include
in build (use SED to produce .manifest from .manifest.in), should go into
correct intermediate build dir (e.g. wireshark.dir\Release).  Note needs to
know processor architecture, so maybe should be a prebuild custom command
for each target).
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 .ico
and .manifest.
4.  Fix the use of zlib, so that zlib is built by CMake and doesn't require
nmake build first.
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)
7.  Fix qtshark use its own .rc file (not done in nmake either)
8.  Fix build of plugins.
9.  Fix build of executables that use WTAP_PLUGIN_SOURCES.
___________________________________________________________________________
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

Current thread: