Commit Graph

160 Commits

Author SHA1 Message Date
Jeff Morriss 69017ac3bd Overhaul rpm-building options a bit: as suggested by Anders, have the RPM follow
./configure's options for gtk2 vs gtk3 vs qt.

Make it possible to not build the GNOME package (now both UIs' packages are
optional).  I think Chris requested this a while ago.

If this works out it may make sense to control the rest of the options via
./configure .

svn path=/trunk/; revision=53607
2013-11-26 23:43:18 +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
Alexis La Goutte d28d1a8240 Fix compilation with Clang (Remove limitation to -fPIE to only C)
/usr/include/qt5/QtCore/qglobal.h:1079:4: error:
"You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC or -fPIE."

svn path=/trunk/; revision=53432
2013-11-19 12:27:09 +00:00
Gerald Combs 16e27047d0 1.11.2 → 1.11.3.
svn path=/trunk/; revision=53412
2013-11-18 17:41:00 +00:00
Gerald Combs f772a268db 1.11.1 → 1.11.2.
svn path=/trunk/; revision=53346
2013-11-15 22:34:31 +00:00
Alexis La Goutte 4bff9d32a0 Enable Packet Editor by default
svn path=/trunk/; revision=53132
2013-11-07 07:42:35 +00:00
Jörg Mayer 0dc80637da Fix autoconf broken by last commit.
svn path=/trunk/; revision=53060
2013-11-03 12:39:50 +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 250641f5de From Thomas Dreibholz via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9368 :
Call AC_PROG_MKDIR_P so MKDIR_P is sure to be set.

svn path=/trunk/; revision=53026
2013-11-01 20:06:22 +00:00
Pascal Quantin 7f3d07b9fd From e.yimjia via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9289 :
Add dissection of OMA-ILP

svn path=/trunk/; revision=52721
2013-10-20 18:43:00 +00:00
Jeff Morriss d69a93f70e Simplify a bit (in a way which will hopefully actually work): just don't add -Wshorten-64-to-32 to CXXFLAGS. Also, add AM_CLEAN_FLAGS to AM_CXXFLAGS, not AM_CPPFLAGS.
svn path=/trunk/; revision=52676
2013-10-18 18:28:57 +00:00
Jeff Morriss 2ac63d7a44 Add -Wno-shorten-64-to-32 (if we can) when compiling the Qt UI.
svn path=/trunk/; revision=52674
2013-10-18 17:42:32 +00:00
Gerald Combs f6884b5945 Add checks to see if CC and/or CXX are Clang. Add "-Qunused-arguments"
to CFLAGS and/or CXXFLAGS as needed.

svn path=/trunk/; revision=52654
2013-10-16 22:39:44 +00:00
Gerald Combs fe55299806 Don't bother checking for clang, just add -Qunused-arguments to the
compiler flags checks.

svn path=/trunk/; revision=52649
2013-10-16 18:40:13 +00:00
Pascal Quantin 7c2219f301 1.11.0 -> 1.11.1
svn path=/trunk/; revision=52647
2013-10-16 17:32:45 +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
Gerald Combs d643779b9b Build with Qt by default.
svn path=/trunk/; revision=52548
2013-10-11 18:42:34 +00:00
Guy Harris 878186be3d We use g_ascii_strtoll(), not strtoll(), so we no longer need to check
for strtoll() (if we ever did check for it).

svn path=/trunk/; revision=52519
2013-10-10 23:33:21 +00:00
Jörg Mayer 07a5c7442f Invert NEED_INET_ATON_H to HAVE_INET_ATON_H
Remove unused NEED_G_ASCII_STRTOULL_H

svn path=/trunk/; revision=52385
2013-10-05 21:56:23 +00:00
Gerald Combs 99f457bd03 Use separate "Read me first" files for Qt and GTK+.
svn path=/trunk/; revision=52321
2013-10-01 21:04:13 +00:00
Gerald Combs 2211ab0fba Use macdeployqt to add the Qt bits to our bundle. Put our libraries in
Contents/Frameworks since that's what macdeployqt expects. Have
osx-dmg.sh look at the correct executable.

svn path=/trunk/; revision=52295
2013-09-30 13:12:28 +00:00
Gerald Combs 2468b33cce More Qt app bundle migration. Still doesn't work quite right.
svn path=/trunk/; revision=52293
2013-09-30 11:29:58 +00:00
Gerald Combs 0a75c9d872 Start migrating the OS X app bundle to Qt. This will likely break the
installers.

svn path=/trunk/; revision=52292
2013-09-30 10:20:43 +00:00
Guy Harris d5909d38a1 Use -m32, instead, as per Michael Tuexen's suggestion.
svn path=/trunk/; revision=51923
2013-09-10 10:28:30 +00:00
Guy Harris 2891a58aa8 When building for 10.4 or 10.5, force 32-bit x86 on x86 and 32-bit PPC
on PPC.

svn path=/trunk/; revision=51921
2013-09-10 10:24:00 +00:00
Guy Harris e45f35d623 Can't use [ as an alias for "test" in configure scripts, as [ and ] are
quoting characters; use test instead.

svn path=/trunk/; revision=51503
2013-08-24 01:01:04 +00:00
Guy Harris 98db1cefbb To handle the hypothetical case of an OS X release offering a choice of
installing command-line developer tools with no SDKs but with a standard
UN*Xy /usr/include or of installing Full Frontal Xcode, if the user
didn't specify building against an SDK, check to see whether we *have*
any SDKs and, if not, don't set the deployment target.

svn path=/trunk/; revision=51501
2013-08-23 23:57:09 +00:00
Guy Harris d9ebff02be Arrange that "make distcheck" use the GUI configure flags used to
configure Wireshark, so we don't, for example, do "make distcheck" with
no options, and thus default to GTK+ 3, on a system without GTK+ 3 where
Wireshark was configured with --with-gtk2.  (This also means that if
we're configuring only with Qt, or with GTK+ *and* Qt, "make distcheck"
will check with those.)

svn path=/trunk/; revision=51456
2013-08-21 18:39:39 +00:00
Guy Harris cfa2dc5f6e Add in more comments on the whole "get the path of the executable from
the kernel" thing, and add the NetBSD and DragonFly BSD /proc links (if
they don't mount /proc, that doesn't work, but it doesn't get in the
way).

On Solaris, check for getexecname, just in case somebody tries to build
on an old Solaris that doesn't support it (that could well end up being
the least of their problems, but at least they won't ask us to diagnose
that one).

svn path=/trunk/; revision=51343
2013-08-13 23:37:32 +00:00
Guy Harris 50eb826406 If we're looking for some version of GTK+, and don't find it, fail.
That way, if somebody specifies --with-gtk[23] and that version of GTK+
isn't found, we fail with an indication that the version of GTK+ they
asked for isn't there, and if no GUI toolkit was specified, and they
didn't explicitly say "don't build Wireshark", we look for GTK+ 3 and,
if it's not found, let the user know explicitly.

svn path=/trunk/; revision=51323
2013-08-12 20:24:59 +00:00
Guy Harris bebe1200de 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=51322
2013-08-12 20:01:30 +00:00
Guy Harris 70523b5014 On some platforms, to get dladdr() you need to link with -ldl. First
try it without -ldl (in case the OS doesn't have it - not a good idea,
as it complicates the build process for cross-platform tools that might
require it on other platforms, but "not a good idea" never stopped UN*X
vendors in the past) and, if that fails, try it with -ldl.

svn path=/trunk/; revision=51309
2013-08-12 09:09:32 +00:00
Anders Broman 77f4bef154 From Mathias Guettler:
New dissector for Air/Ground Datalink ICAO doc 9705 Ed2: ULCS, CM, CPDLC.

Add the files to the distribution.

svn path=/trunk/; revision=51212
2013-08-08 05:34:22 +00:00
Gerald Combs f22f8cc841 Fix the Python version check. Hopefully no one is running 1.5 or 1.6.
svn path=/trunk/; revision=51161
2013-08-05 20:08:11 +00:00
Gerald Combs d3af98bb91 Don't force the use of Python 2.x, similar (but not identical to)
r51128. Print a warning if we're building with Python < 2.5.

svn path=/trunk/; revision=51158
2013-08-05 18:57:00 +00:00
Guy Harris b7cf00c657 Check the Python major version number in a way that works in Python 2
and Python 3.

svn path=/trunk/; revision=51077
2013-07-31 21:10:50 +00:00
Guy Harris 3ba7057528 Get rid of extra comment line.
svn path=/trunk/; revision=51075
2013-07-31 20:41:56 +00:00
Guy Harris 7bad1f75da Only use sw_vers if we're on OS X.
svn path=/trunk/; revision=51074
2013-07-31 20:40:19 +00:00
Guy Harris b8bc01c74f Set the minimum OS X version in the installer package based on the
deployment target; if --disable-osx-deploy-target was specified, set it
to the OS version on which we're building - minor/dot-dot version and
all - as there's no guarantee that it'll work on *any* version earlier
than that.

svn path=/trunk/; revision=51060
2013-07-31 07:39:11 +00:00
Guy Harris 5593058825 If you use --enable-osx-deploy-target or --disable-osx-deploy-target on
anything other than OS X, fail; whatever it is you're trying to do won't
work (unless and until there exists a platform that fully supports
cross-development for OS X, *including* building against SDKs and
building with -mmacosx-version-min).

If you use neither on OS X, default to the OS major version on which
you're building.  If you use --disable-osx-deploy-target, don't build
against an SDK and don't use -mmacosx-version-min.

svn path=/trunk/; revision=51057
2013-07-31 07:17:45 +00:00
Guy Harris f317c7821d The files in aclocal-fallback are copies of .m4 files from various
packages, providing macros that we use in our configure script in case
somebody building from SVN doesn't happen to have the package installed
and thus doesn't happen to have those macros defined.

In the case of Qt, there *isn't* such a .m4 file, so we had to create
the macro.  Move it to acinclude.m4, and rename it to
AC_WIRESHARK_QT_CHECK to indicate that it's our own check.

svn path=/trunk/; revision=50881
2013-07-24 22:34:44 +00:00
Guy Harris 8fa093daa5 Add a comment.
svn path=/trunk/; revision=50879
2013-07-24 22:08:42 +00:00
Guy Harris 1cd5695ebd If none of --with-gtk2, --with-gtk3, or --with-qt are specified, and
--disable-wireshark was not specified, build with GTK+ 3.

If any of --with-gtk2 or --with-qt are specified, and --with-gtk3 wasn't
specified, *don't* look for GTK+ 3 and don't build with it.

If *both* --with-gtk2 and --with-gtk3, fail.

svn path=/trunk/; revision=50872
2013-07-24 18:36:02 +00:00
Jörg Mayer 18155bd148 Change default gtk build from version 2 to version 3 for
autotool, cmake and nmake.
No idea what it takes to change the visual project stuff

svn path=/trunk/; revision=50863
2013-07-24 11:51:10 +00:00
Martin Kaiser cc82d38c8b set HAVE_GETOPT_H and HAVE_GETOPT variables
for both autotools and cmake builds

(in order to use getopt_long(), we have to check if we
 can include getopt.h)

svn path=/trunk/; revision=50680
2013-07-16 21:12:12 +00:00
Evan Huus 66f7521a17 Revert r50150. I suspect the problem was Ubuntu's transition to qt5 as default,
since now the defaults work as they should.

svn path=/trunk/; revision=50644
2013-07-15 23:47:11 +00:00
Guy Harris bc239a7286 On OS X, set the rpath for executables to include
@executable_path/../lib as well as /usr/local/lib, so we can use @rpath
in the install names in the executables and libraries in the application
bundle.

Have the osx-app.sh script tweak all references to libraries from
/usr/local/lib in all executables, libraries, and plugins in the app
bundle to use @rpath.  (The "all" is important; it fixes the GTK+ crash
mentioned in the comment in osx-app.sh.  The notion of doing all of them
came from the osx-app.sh script in a newer version of Inkscape.)

This renders the setting of DYLD_LIBRARY_PATH in the wrapper scripts in
the bundle unnecessary; remove it.  (Ideally, we should try to get rid
of the wrapper scripts entirely, but that might have to wait for us to
switch to using Qt.)

svn path=/trunk/; revision=50560
2013-07-13 22:43:35 +00:00
Guy Harris 5967dc6820 CPPFLAGS contains the flags for the C preprocessor; CXXFLAGS contains
the flags for the C++ compiler.

If we're building for 10.5, force a 32-bit build.

svn path=/trunk/; revision=50459
2013-07-09 08:48:07 +00:00