Commit Graph

284 Commits

Author SHA1 Message Date
Jörg Mayer e30fd2f989 Looks like the WinPcap version can only be determined from the
name of the compressed archive - which currently means "only by
manual developer intervention".

svn path=/trunk/; revision=53682
2013-11-30 23:40:25 +00:00
Jörg Mayer eaaf4437ab Graham Bloice
Ensure we use the correct value for MSC_VER_REQUIRED (similar to
nmake build)

svn path=/trunk/; revision=53656
2013-11-29 21:07:23 +00:00
Jörg Mayer 718568b4ff Graham Bloice:
Always include the "true" zlib includes first. This works around a
bug in the Windows setup of GTK[23] which has a faulty zconf.h.


svn path=/trunk/; revision=53647
2013-11-29 15:40:04 +00:00
Guy Harris 4dbed5fbd0 According to
http://gcc.gnu.org/onlinedocs/gcc-4.8.2/gcc/Code-Gen-Options.html#Code-Gen-Options

-ftrapv "generates traps for signed overflow on addition, subtraction,
multiplication operations." and -fwrapv "instructs the compiler to
assume that signed arithmetic overflow of addition, subtraction and
multiplication wraps around using twos-complement representation."

Those seem mutually-exclusive to me, and we probably want wrapping, not
traps, as there's probably a fair bit of code out there that explicitly
or implicitly assumes wrapping.  (Actually, we really want to avoid
signed arithmetic for the cases that most matter, such as offsets and
lengths, but, unfortunately, we currently have API conventions that
allow negative values for lengths, either with -1 meaning "to the end"
or with negative values meaning "relative to the end".)  In addition,
there seem to be some bugs complaining that -ftrapv doesn't always cause
traps on signed integer overflow.

We seem to be seeing crashes in Lemon on the Solaris buildbot subsequent
to adding -ftrapv; I don't know whether that's an overflow being
detected, a bug in the compiler, or something unrelated, especially
given that we're using Sun C, not GCC, on the Solaris buildbot. 
However, we'll try removing -ftrapv, to see if it fixes the problem; the
MIT CSAIL paper in question wasn't really recommending all the GCC
options it mentioned (which, as noted, wouldn't make sense, as -ftrapv
and -fwrapv appear to be mutually-exclusive).

svn path=/trunk/; revision=53556
2013-11-24 22:51:44 +00:00
Balint Reczey ee147994b7 Use GCC flags to avoid optimization problems due to undefined behaviour
Adding flags suggested by article at:
http://pdos.csail.mit.edu/~xi/papers/stack-sosp13.pdf

svn path=/trunk/; revision=53551
2013-11-24 20:28:25 +00:00
Alexis La Goutte 001d79cac3 Add -Wheader-guard to Autotools and CMake
svn path=/trunk/; revision=53507
2013-11-22 14:51:31 +00:00
Jörg Mayer 2276ff07d2 Beginnings of CheckAPI support. More diligence needed
(need to seperate generated files into their own variables).

svn path=/trunk/; revision=53407
2013-11-18 07:42:23 +00:00
Alexis La Goutte 35b782401e Fix indent (use tabs)
svn path=/trunk/; revision=53390
2013-11-17 14:03:58 +00:00
Guy Harris db25270df8 Move the epan/filesystem.c routines to wsutil; they're not specific to
packet dissection, they're specific to the entire Wireshark suite of
programs.

svn path=/trunk/; revision=53377
2013-11-17 02:55:14 +00:00
Jörg Mayer f9b68b05e4 No need to check whether cmake_policy command exists as we require
cmake 2.6.
Add two more policy statements to avoid warnings on current cmake systems.
CMP0020 doesn't work - no idea why.

svn path=/trunk/; revision=53180
2013-11-09 09:36:09 +00:00
Jörg Mayer a00f13bbc3 Turn WANT_PACKET_EDITOR into an option until such a time that
it isn't a compile time option any more.

svn path=/trunk/; revision=53147
2013-11-07 20:32:41 +00:00
Alexis La Goutte 6261789695 Add WANT_PACKET_EDITOR to CMake
svn path=/trunk/; revision=53133
2013-11-07 07:43:01 +00:00
Jörg Mayer de057472f3 - Reenable /LARGEADDRESSAWARE on Windows platform
- Add a CMAKE_BUILD_TYPE default of RelWithDebInfo (Release with debug info),
  print the choice.
  This will pick up the previously used flags LINK_FLAGS and
  CMAKE_C_FLAGS and CMAKE_CXX_FLAGS but also pick up the variables postfixed
  by _<build-type>
- Remove Optimization (-O2) and debug (-g) flags from list of default flags
  as they are now automagically set by CMAKE_C_FLAGS_RELWITHDEBINFO etc.
  NOTE: This also needs to be done for the Windows flags, I just don't have
  a Win system to test on right now.


svn path=/trunk/; revision=53083
2013-11-04 20:29:29 +00:00
Jörg Mayer 117a59d7a2 Pass the name of the sed executable as an explicit argurment to
runlex.sh (like it is done with LEX already). May fix a problem
on Windows with cmake.

svn path=/trunk/; revision=53059
2013-11-03 12:22:39 +00:00
Jeff Morriss 58d01512b1 Make it so out-of-tree builds (autofoo and cmake) have access to the various
data files (diameter/*, COPYING, manuf) when running *shark from the
build directory.

Do this by passing in the top-level source directory as a compile-time
definition (unfortunately this has to be in the top-level Makefile too because
some programs link directly with epan/filesystem.c).

The plugins dir is no longer below the datafile directory but rather the
progfile directory (if we have one).  Handle the special case of AUTHORS-SHORT
(a data file but a generated one) by checking the file name before building
the path.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5664

svn path=/trunk/; revision=52940
2013-10-29 02:28:16 +00:00
Gerald Combs 858524047c Add Gettext to PACKAGELIST. Homebrew puts it in a nonstandard location.
svn path=/trunk/; revision=52895
2013-10-27 17:14:12 +00:00
Gerald Combs 5fba0c2474 If we're using Clang add -Qunused-arguments in order to avoid a bunch
of warnings described at
http://petereisentraut.blogspot.com/2011/05/ccache-and-clang.html

svn path=/trunk/; revision=52646
2013-10-16 17:22:58 +00:00
Graham Bloice 9c4ee86784 Add CMake properties to targets so that they are logically organised when using a Visual Studio solution.
Add CMake properties to group the source files in epan into logical blocks when using a Visual Studio solution.

svn path=/trunk/; revision=52580
2013-10-13 09:21:55 +00:00
Jörg Mayer 3ab8799526 Remove some things that I added while not understanding the real
problem/solution.
"Long" since solved by copying the solution from Makefile.nmake.

Small update to the status of cmake builds on windows

svn path=/trunk/; revision=52574
2013-10-12 22:08:03 +00:00
Jörg Mayer c01ab40cde With Gerald's patch we should no longer require GTK includes for QT-Only builds
(untested).

svn path=/trunk/; revision=52555
2013-10-11 23:03:18 +00:00
Jörg Mayer ee5397d832 The env variable is QT5_BASE_DIR, as documented in README.cmake
Make documentation and implementatoin consistent

svn path=/trunk/; revision=52541
2013-10-11 11:43:37 +00:00
Jörg Mayer f0e92efd24 The path for the Qt5 installation now needs to be set as a
windows environment variable.

svn path=/trunk/; revision=52540
2013-10-11 11:25:40 +00:00
Jörg Mayer f5fd46fe6d qtshark and wireshark(gtk2) now actually find their libs.
svn path=/trunk/; revision=52539
2013-10-11 11:11:41 +00:00
Jörg Mayer 28282a991d Now the GUI programs (wireshark/gtk2 and qtshark) compile and link
svn path=/trunk/; revision=52538
2013-10-11 10:32:11 +00:00
Gerald Combs 564797a2e7 Try to locate QtMacExtras.
svn path=/trunk/; revision=52518
2013-10-10 23:11:19 +00:00
Jörg Mayer 2a59ee58b8 Add Airpcap detection, use it by default on win32
QT5 compile working - NOT. It's almost working, except
that I *still* need to get GTK detection working on Win :-(


svn path=/trunk/; revision=52513
2013-10-10 20:35:32 +00:00
Jörg Mayer 36e0adfcc1 Generate setpath.bat to set the paths necessary for running
the generated binaries inside the build dir.

svn path=/trunk/; revision=52492
2013-10-10 13:37:15 +00:00
Jörg Mayer 526f7cf367 The path approach can't work this way: Trying to set an environment
variable of our parent process isn't going to work. Plan B is to write
this stuff into a file and manually run it once.

Hard code the QT5 search path on Windows for now.

svn path=/trunk/; revision=52489
2013-10-10 09:10:53 +00:00
Jörg Mayer 0863791253 Try to set PATH on Windows to all required dlls/libs to allow
running the executables from the build tree without installation.
It doesn't really work yet but the troubleshooting has to wait
until either I've gotten some sleep or someone else fixes it.

svn path=/trunk/; revision=52454
2013-10-08 20:41:57 +00:00
Jörg Mayer f625f54e3f Remove an uncommented line: The file is now part of wsutil
svn path=/trunk/; revision=52426
2013-10-06 22:15:38 +00:00
Jörg Mayer d28324b05e Add a comment about PCAP_VERSION
svn path=/trunk/; revision=52409
2013-10-06 18:11:41 +00:00
Jörg Mayer f5cebd0ef9 Hack around the "/MD overridden by /MDd" messages.
Better solutions welcome.

svn path=/trunk/; revision=52396
2013-10-06 12:25:46 +00:00
Jörg Mayer 7b3ac2ae6b Attempt to get linking working with cmake - without success so far.
svn path=/trunk/; revision=52377
2013-10-05 10:17:21 +00:00
Jörg Mayer de3867e1a1 The PERL variable name is deprecated, use PERL_EXECUTABLE instead.
svn path=/trunk/; revision=52368
2013-10-04 16:55:33 +00:00
Jörg Mayer d5cd2f3ad9 Don't link qtshark against portaudio
svn path=/trunk/; revision=52283
2013-09-30 08:12:46 +00:00
Jörg Mayer d456079b7e Beginnings of win cmake support (not yet working), created by Graham Bloice,
some smaller changes by me.
- README.cmake
  Document how to (one day) run on Windows
- CMakeLists.txt
  Use MSVC compiler flags for MSVC instead of gcc flags
- FindWSWinLibs.cmake
  New: Creates HINTS for finding includes and libraries
  inside the Wireshark support library installation.
- FindXXX.cmake
  Make use of HINTS generated by FindWSWinLibs.cmake

This has not really been tested on Windows as my installation seems to have
automagically downloaded some fixes and is in an inconsistent state since.
Will probably need to reinstall.

svn path=/trunk/; revision=52194
2013-09-23 21:45:55 +00:00
Gerald Combs 17678f9b5d Homebrew installs gettext (including libintl, which GLib requires) in
/usr/local/opt/gettext. Tell CMake to update our include and library
paths accordingly.

svn path=/trunk/; revision=51943
2013-09-10 21:24:52 +00:00
Jörg Mayer bae2eee028 Implement in cmake:
http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=51322

> User: guy
> Date: 2013/08/12 01:01 PM
>
> Log:
>  Just check whether dladdr() is available; we check in the code whether
>  it succeeds, so there's no point in checking whether it succeeds in a
>  sample program.

svn path=/trunk/; revision=51334
2013-08-13 09:58:09 +00:00
Jörg Mayer 6ab6208e3d Allow the python interpreter to be version 3 (2 being preferred)
svn path=/trunk/; revision=51128
2013-08-03 00:39:27 +00:00
Jörg Mayer 87ca12fcb7 Print the flag we are testing
svn path=/trunk/; revision=51116
2013-08-02 07:20:43 +00:00
Gerald Combs 45589bf41d TShark links with libui so we should always build it.
svn path=/trunk/; revision=51101
2013-08-01 23:40:06 +00:00
Jeff Morriss 2df54da6e2 Move a bunch of the crypt modules and pint.h into wsutil.
This means wsutil now links against libcrypt.

Protect a bunch of the crypt header files from multiple inclusion.

svn path=/trunk/; revision=51100
2013-08-01 23:34:47 +00:00
Jörg Mayer 812f308620 Use largefile detection in cmake.
Move wiretap/file_wrapper.c back to clean sources.

svn path=/trunk/; revision=50825
2013-07-23 09:41:35 +00:00
Jörg Mayer 681c9e7160 Looks like not every version of cmake has the same behaviour wrt
the working directory. So hardcode the path in a case where it
didn't work for everyone.

svn path=/trunk/; revision=50817
2013-07-23 07:41:20 +00:00
Jörg Mayer fe166ca904 Wrap clang specific tests into a clang tests instead of checking
for APPLE.
Move 3 of the 4 tests out of this check because the improved checks
should detect them correctly now

svn path=/trunk/; revision=50789
2013-07-22 14:45:58 +00:00
Jörg Mayer 43ef033128 Don't use the program name to identify the compiler - it won't work
reliably in cases where the compiler is name /usr/bin/cc

Use the internal variable CMAKE_<LANG>_COMPILER_ID instead, which is
finally documented (but still called internal in the docs), see
http://www.cmake.org/cmake/help/v2.8.10/cmake.html#variable:CMAKE_LANG_COMPILER_ID


svn path=/trunk/; revision=50784
2013-07-22 09:36:14 +00:00
Jörg Mayer 9e7b6f1a69 Try to generate an error when calling clang with an unknown compiler
option. This behaviour changed in clang, see
https://bugzilla.mozilla.org/show_bug.cgi?id=731316

svn path=/trunk/; revision=50760
2013-07-21 18:12:20 +00:00
Jörg Mayer df397b4f63 Enable echld builds with cmake when building with ENABLE_ECHLD=ON
svn path=/trunk/; revision=50751
2013-07-21 13:34:50 +00:00
Jörg Mayer f3f910a5cf Don't check for "APPLE" if what you really mean is "clang"
svn path=/trunk/; revision=50749
2013-07-21 12:53:51 +00:00
Jeff Morriss 0a669967fa Move merge.{h,c} into wiretap: these modules use wiretap to merge files.
svn path=/trunk/; revision=50656
2013-07-16 02:35:33 +00:00