Wireshark-dev: Re: [Wireshark-dev] Difference between Autofoo and CMake build ?

From: Joerg Mayer <jmayer@xxxxxxxxx>
Date: Thu, 24 Jul 2014 18:36:50 +0200
On Thu, Jul 24, 2014 at 11:58:51AM -0400, Bill Meier wrote:
> While reviewing the new ceph dissector [1], two issues cropped up
> where my build on Linux (using Autofoo) apparently gave different
> results then a build by Kevin Cox (the submitter of the new
> dissector) using CMake on Linux.
> 
> He used GCC 4.9.1 and CMake while I used GCC 4.9.0 and Autofoo.
> 
> 1. The Autofoo compile indicated an
>   "unused but set" variable
>    The CMake apparently did not.

Should not be: I do (or at least did) get these messages regularly with
CMake.

>    Different CFlags ?

As the order of flags in both files is rather random I did a bit of grepping,
sorting and some manual editing. It looks like the flags should be the same.

> 2. The ceph dissector had several value_string_ext structs
>    defined as 'static const ...'.
> 
>    The Wireshark built with CMake worked AOK when
>    the ceph dissector used the extended value
>    strings for the first time (i.e., no exceptions).
> 
>    The Wireshark built with Autofoo trapped
>    when the extended value string structs were used
>    for the first time (when there was an attempt to
>    write to the struct).
> 
>    IOW: In one case, the structs were apparently not in a r/o section
>         while in the other they apparently were.
> 
>    I've no idea if this difference has anything to
>    do with CMake vs Autofoo.
> 
> 
> Thoughts ?

Not on first sight. Maybe you can do a comparison on your system where
all the other tools are identical?

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.