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] movement of source files from the top-level directory

From: Gilbert Ramirez <gram@xxxxxxxxxxxxxxx>
Date: Wed, 7 Mar 2012 21:07:12 -0800
The existence of so many source files in the top-level directory of the Wireshark source distribution bothers me. I would love to be able to "ls" the top-level directory and not have it scroll off my screen.

I have diagrammed the current Wireshark source directory hierarchy at:


With this in mind, and by analyzing the groupings in Makefile.common, I'd like to recommend the following movements:

Create new directory called shark, to contain files common, or almost common, to the analyzer applications (wireshark, tshark, and rawshark):

airpcap_loader.c
alert_box.c
capinfos.c
capture.c
capture_ifinfo.c
capture_info.c
capture_opts.c
capture-pcap-util.c
capture-pcap-util-unix.c
capture_stop_conditions.c
capture_sync.c
capture_ui_utils.c
capture-wpcap.c
capture_wpcap_packet.c

etc.

This would help in getting rid of how automake is creating separate object files for the .c files that are shared across the applications:

$ ls -l *capture_opts.o
-rw-r--r-- 1 gilramir eng 46256 Feb 21 08:46 dumpcap-capture_opts.o
-rw-r--r-- 1 gilramir eng 46256 Feb 21 08:23 tshark-capture_opts.o

Because, they are compiled with the same flags:
$ cksum *capture_opts.o
3352293452 46256 dumpcap-capture_opts.o
3352293452 46256 tshark-capture_opts.o

The C files that build the smaller tool applications (mergecap, randpkt,  text2pcap) should [for now] stay at the top-level directory.

I also feel that the directories that distribute data files (radius, dtds, idl), should all be moved under another new directory, perhaps "definitions", but I know less about those files.

Are there other thoughts on how to tidy the source directories? Is anyone working on this yet?

Gilbert