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

Wireshark-dev: [Wireshark-dev] config.h differences when generated by Autofoo vs CMake

From: Bill Meier <wmeier@xxxxxxxxxxx>
Date: Mon, 16 Nov 2015 03:51:25 -0500
Differences re #define statements for autofoo vs cmake generated
config.h files on Linux.

Notes:
1. "Used"/"Not used" for the #define'd symbols as shown below is based
   upon a simple grep though all the Wireshark *.h, *.c, *.cpp source
   files.
2. The comparison between the config.h files was somewhat Q+D so there
   may very well be inaccuracies.
3. I've not done the further research to determine if the config.h
   differences for any of the "Used" #defines are significant
   (and unfortunately will not have the time to do so in the upcoming
   week).
4. I did remove a few instances of differences which I deemed not
       relevant; E,G., DATAFILE_DIR).

"-" = Defined only in autofoo config.h
"+" = Defined only In cmake config.h

--- config-h-defines-auto.txt	2015-11-15 17:43:21.247791425 -0500
+++ config-h-defines-cmake.txt	2015-11-15 17:39:16.980102683 -0500
-#define _FILE_OFFSET_BITS 64      // Not used
+#define HAVE_DLADDR 1             // Used in wsutil/filesystem.c
-#define HAVE_FLOORL 1             // Used in ui/time_shift.c,
                                   //  wsutil/floorl.c
+#define HAVE_GETADDRINFO 1        // Used in epan/addr_resolv.c,
                                   //  dissectors/packet-kerberos.c
+#define HAVE_GETHOSTBYNAME 1      // Used in epan/addr_resolv.c
+#define HAVE_GETHOSTBYNAME2 1     // Used in epan/addr_resolvc.c
-#define HAVE_GRESOURCE 1          // Used in mucho gtk stuff:
                                   //  No #define/#undef in cmake
                                   //  config.h
-#define HAVE_INET_ATON 0          // Used (#ifn?def) in
                                   //  epan/addr_resolv.c,
                                   //  and lbmr, dcom, aeron, lbtrm
                                   //  dissectors, text2pcap
-#define HAVE_MEMORY_H 1           // Not used
-#define HAVE_STDLIB_H 1           // Not Used
-#define HAVE_STRING_H 1           // Not Used;
                                   //  No #define/#undef in cmake
                                   //  config.h
-#define HAVE_STRINGS_H 1          // Not Used
+#define HAVE_TZNAME 1             // Used in epan/to_str.c
-#define HAVE_XDG_OPEN 1           // Used in ui/gtk/webbrowser.c

-#define HTML_VIEWER "xdg-open"    // Used in epan/prefs.h
+#define HTML_VIEWER "/bin/xdg-open"

// Not used
-#define PACKAGE_BUGREPORT "http://bugs.wireshark.org/";
-#define PACKAGE_NAME "wireshark"
-#define PACKAGE_STRING "wireshark 2.1.0"
-#define PACKAGE_TARNAME "wireshark"
-#define PACKAGE_URL "http://www.wireshark.org/";
-#define PACKAGE_VERSION "2.1.0"   // no #undef in cmake config.h
//

-#define STDC_HEADERS 1            // Not used
+#define VERSION_EXTRA ""          // Not used
-#define YYTEXT_POINTER 1          // Not used ?


======

#undefs which do not have a corresponding #define/#undef in
 the other config.h for Linux only.
Each instance may or may not be relevant; In some cases #defines
 would be generated on specific platforms as needed ?
 In other cases the symbols aren't used so the #undef is redundant.

"-" = #undef only in autofoo config.h
"+" = #undef only In cmake config.h

--- config-h-undefs-auto.txt	2015-11-16 02:41:51.477567865 -0500
+++ config-h-undefs-cmake.txt	2015-11-16 02:42:16.454039402 -0500
-/* #undef AC_APPLE_UNIVERSAL_BUILD */
-/* #undef HAVE_ECHLD */
-/* #undef HAVE_GTKOSXAPPLICATION */        // Used in various GTK
                                            //  source files.
                                            //  OK since MAC only ?
-/* #undef HAVE_IGE_MAC_INTEGRATION */      // Used in various GTK
                                            //  source files
                                            //  OK since MAC only ?
-/* #undef HAVE_KEYTYPE_ARCFOUR_56 */
-/* #undef HAVE_LAUXLIB_H */
-/* #undef HAVE_LUALIB_H */
+/* #undef HAVE_MMAP */
+/* #undef HAVE_MPROTECT */
+/* #undef HAVE_NTDDNDIS_H */      // Used in
                                   // gtk/capture_if_details_dlg_win32.c
                                   //  OK since used on Windows only ?
+/* #undef HAVE_SOFTWARE_UPDATE */ // Used in gtk/main_menubar.c,
                                   //  gtk/software_update.c
                                   //  OK since used only on Windows ?
+/* #undef HAVE_WINSOCK2_H */      // OK since used only on Windows ?
+/* #undef _LARGEFILE64_SOURCE */
+/* #undef _LARGEFILE_SOURCE */

+/* #undef PACKAGE */