Wireshark mailing list archives

Re: Windows cmake


From: Graham Bloice <graham.bloice () trihedral com>
Date: Thu, 5 Jun 2014 10:00:47 +0100

On 5 June 2014 07:18, Joerg Mayer <jmayer () loplof de> wrote:

Hello (at least Graham),

I'd like to get as far with the cmake on Windows stuff as possible during
Sharkfest I thought we might as well start early ;-)

What do we need to address in the cmake build system to be able to propose
getting rid of the current nmake based Windows build system completely?

One thing that needs to be addressed is the build setup:
Currently parts of the setup (downloading, installing) are done by a
script.
Other parts like deciding which versions to use are done by "make setup".
Yet other parts are done when compiling wireshark (like compiling
portaudio).
Some are not done by anything in the setup/build process but have to be
done
manually (like fixing include files for some environments).

So at least we need to
a) create a list of what needs to be addressed exactly and
b) decide how to do it (my personal approach would be to add all this to
the existing setup script - but I'm not really familiar with all that
Windows
stuff).



Somewhere on the list (last Oct\Nov ??) I posed a message with my list of
things to do, however even the mighty Google can't find it.  I might be
misremembering though.  I'll look for it later on tonight.

We have also had previous discussions about the setup script and using
alternative Windows package management systems e.g. Coapp or Chocolatey to
run the downloads.  I think there are 3 phases to this though:

   1. Creating\checking the build environment, i.e.
   downloading\installing\updating all required libraries and tools and
   checking the build env is sane.
   2. Running CMake to produce the solution\nmake files for the installed
   build env.  This might involve running the "is build env sane" script as a
   prereq.  Some "configuration" items are defined by the build environment so
   can be taken into account by CMake.
   3. Using the toolchain with the CMake generated artefacts to produce a
   build.  Some configuration items are defined by the sources (e.g. version
   number, or build type, release, debug etc.) so the toolchain has to ensure
   these are processed correctly.

I would dearly like to remove Cygwin from the equation, switching to
Gnuwin32 for things such as flex and bison, and PowerShell (or Python or
CMake builtins) for general scripting tasks.  Even more contentious would
be to remove the need for Perl, and use Python as the cross-platform script
tool as using two script tools involves an extra download for Windows and
it seems that Python is currently "more" essential to the build system (and
I don't like Perl ;-) ).
___________________________________________________________________________
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: