Commit Graph

182 Commits

Author SHA1 Message Date
Graham Bloice 2c74679a75 Fix OSX 10.5 autotools package for missing sshdump
Make sshdump addition to the package conditional depending on whether
it is actually built.

Change-Id: Ifeaa134fdb3dcd88e48ff0c796f0c21c804eba77
Reviewed-on: https://code.wireshark.org/review/12023
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-11-21 23:31:42 +00:00
Dario Lombardo b61e205516 osx: fix build when binary list is not fully compiled.
It can happen that the $binary_list contains apps that are not compiled
(eg. for the lack of a lib). In this case the binary can't be added to
the package. Fixed checking that the binary going to be signed is present.

Change-Id: Iefd9438de972302523ba28596e905b11513a4fea
Reviewed-on: https://code.wireshark.org/review/11968
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-11-19 17:02:58 +00:00
Dario Lombardo d6da95231e extcap: add sshdump.
sshdump is an extcap module that allows dumping from a remote host using an ssh connection.
It goes with the existing extcap plugin interface.

Change-Id: I8987614fdd817b8173a50130812bc643a4833bca
Reviewed-on: https://code.wireshark.org/review/11402
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-19 15:29:18 +00:00
Guy Harris 0b05086754 Apple calls it just "OS X" these days.
Change-Id: I98905988ceb394d27307d1cbe883d8fe95ac23e4
Reviewed-on: https://code.wireshark.org/review/11703
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-10 21:08:45 +00:00
Gerald Combs 16906c5f0a Try to fix osx-app.sh bundle creation.
Change-Id: I6d96974fae3956a017a007988a1ed145f08d4647
Reviewed-on: https://code.wireshark.org/review/11220
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 22:23:07 +00:00
Gerald Combs 07b44ba885 osx-app.sh: Make sure we sign the Wireshark executable.
Change-Id: Ib94bfd5fb8579d8bd824109806d340ee3e4f2f1c
Reviewed-on: https://code.wireshark.org/review/11217
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 18:27:48 +00:00
Gerald Combs 7b5c274d8b osx-app.sh: Fix bundling.
When creating a bundle using osx-app.sh (i.e. when we're using
Autotools), make sure we copy androiddump to the extcap subdirectory.

Change-Id: Iabb24ae969ae77856f15dd94120cc6e395311198
Reviewed-on: https://code.wireshark.org/review/11215
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 18:15:23 +00:00
Gerald Combs 0770b0ac6a osx-app.sh: Make sure we sign our binaries.
Throw an error if we don't.

Change-Id: I7967fe8903f989e6e1a1e8193fb65c6ce086595b
Ping-Bug: 11620
Reviewed-on: https://code.wireshark.org/review/11213
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 17:46:44 +00:00
Gerald Combs 1c2ed18723 osx-app.sh fixups.
For libraries, instead of prefixing dependent library paths with
@executable_path/../Framework, prefix them with @rpath. This should let
us load them from different directory depths.

Remove any LC_RPATH not in an allowed list of prefixes. This should keep
us from leaking paths specific to the build environment and user, and
should make any portability problems more obvious.

Add either @executable_path/../Frameworks or
@executable_path/../../Frameworks as an LC_RPATH depending on which
actually exists. This lets us place androiddump in the extcap
subdirectory.

Add error checking in a few places and make sure we detect failures in
subshells.

Add a macdeployqt buglink.

Bug: 11620
Change-Id: I43ef02ecc6f741761fcb9827c0b0b7b2ef16fa9a
Reviewed-on: https://code.wireshark.org/review/11205
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 17:04:08 +00:00
Gerald Combs cf3d279e04 CMake: OS X packaging updates.
Add a dmg_package_prep target as an alias to app_bundle. Rename the
osx-dmg target to dmg_package. This matches the Windows packaging
target names.

In osx-app.sh, make sure we rpathify the bundle plugin directory.

Change-Id: If41195c9d405ad6bff865625500a8227b77e8092
Reviewed-on: https://code.wireshark.org/review/10734
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-01 21:04:26 +00:00
Gerald Combs 7199fc7cab OS X: Integrate CMake and osx-dmg.sh
Change-Id: Ide608f5e73ecd40c67a6b1c0e16f11233cd49c9d
Reviewed-on: https://code.wireshark.org/review/10694
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-01 16:26:25 +00:00
Guy Harris bed3163725 Crank down the log level for macdeployqt.
Adding the additional rpath in the build process appears to have fixed
the problem I was trying to debug.

Change-Id: I518deea67837f7e084e503b8e5ae7c3f188df3c8
Reviewed-on: https://code.wireshark.org/review/9628
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 18:54:37 +00:00
Guy Harris 5c2a98bf57 Don't treat Qt frameworks as dependencies.
macdeployqt will stuff them into the bundle for us; exclude anything in
the Qt frameworks directory from the lists of dependencies for us to
copy or munge.  (We don't copy them correctly - that results in the
underlying binary being copied to the Frameworks directory - and we
leave it up to macdeployqt to do the munging.)

Change-Id: I10cfb8dcb2abadde9d5c52252979267912710f80
Reviewed-on: https://code.wireshark.org/review/9627
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 18:53:01 +00:00
Guy Harris 9f03aa131e On OS X, add an rpath for the Qt frameworks, and remove it in the app bundle.
Qt 5.5 and later have @rpath-based install names for the frameworks,
which means that, if they're not installed in some frameworks directory
searched by default (such as /Library/Frameworks) - which is the default
case with the Qt installer - they won't be found by default.

Add the directory in which the frameworks exist as an rpath in the
Wireshark binary, so that they'll be found, and then remove it from the
Wireshark binary in the app bundle, as the directory in which the
frameworks exist on the machine on which Wireshark was built is
irrelevant to the machines on which it's being deployed - the frameworks
are included in the bundle, and we already add an rpath to find them
there.

Change-Id: I54e033743e7b17eab26976064dcd7cd000f97c78
Reviewed-on: https://code.wireshark.org/review/9625
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 17:35:15 +00:00
Guy Harris 7b9b3d4693 Go back to using macdeployqt for now.
I have some other hammers to try it hit it with to get it to actually
work with Qt 5.5.

Change-Id: Ie20ccbcee62fa48f768ba22478d07b9dc18d0139
Reviewed-on: https://code.wireshark.org/review/9623
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 15:58:22 +00:00
Guy Harris 3a78901935 Rpathify references to Qt frameworks separately from references to libraries.
We need to preserve the full path of the framework binary.

Change-Id: I3a13eaffc07028a26fbd970db02cc1cce3fdcd5d
Reviewed-on: https://code.wireshark.org/review/9621
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 07:54:46 +00:00
Guy Harris eeccdf3fe4 Copy over the entire framework and then clean it up.
That's easier than trying to carefully copy the relevant bits.

Change-Id: I2f174a735bf91f6434929c25ca33aced03e19597
Reviewed-on: https://code.wireshark.org/review/9620
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 04:35:42 +00:00
Guy Harris a8f3b3d3d9 Don't copy the entire framework.
Copy only the stuff needed at run time; don't bother with all the
headers, etc..

Change-Id: Id9d2ec916b6742a6cb6e2ec3c0f7ed1a65a8a93c
Reviewed-on: https://code.wireshark.org/review/9617
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 04:22:22 +00:00
Guy Harris a9d4f20daf Remove unintended removal of a / in a pathname.
Change-Id: Ibc951e418c497e915e4391258677366a077e5531
Reviewed-on: https://code.wireshark.org/review/9616
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 03:58:17 +00:00
Guy Harris 7cf25a5c1f Handle Qt 4 when looking for the Qt frameworks directory.
Do it in a loop, so we can change it to handle Qt 6 if, as, and when it
comes out (assuming they label its packages as Qt6Package).

Change-Id: I1d33d3e9726981b1940fb4409184c486628cb31b
Reviewed-on: https://code.wireshark.org/review/9615
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 03:30:22 +00:00
Guy Harris 0571d849df Handle both @rpath/ and absolute paths in Qt framework install names.
When looking for Qt framework dependencies, look for dependencies that
begin either with @rpath or with the Qt framework directory.

Then, first transform @rpath/ to a path relative to the Qt framework
directory, and then strip off everything past the framework directory,
to get the absolute path of the framework directory (not of the
framework binary - we want to copy the whole framework).

In the loop looking for dependencies on things *other* than Qt
frameworks, exclude Qt framework references with absolute paths from the
dependencies we find; they get processed later.  (We already excluded
those with @rpath paths.)

Change-Id: I1e345a5fb82c758d5c1541693b46cb36d2677fab
Reviewed-on: https://code.wireshark.org/review/9614
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 03:21:54 +00:00
Guy Harris 494457d3b5 Make OS X .app bundling work with Qt 5.5.
macdeployqt doesn't actually seem to deploy any of Qt into the app
bundle, probably because we're using it in a fashion they didn't intend
(i.e., not doing everything with *their* build tools), so we just extend
our dependency-binding stuff to handle the Qt libraries, and copy over
the Qt plugins ourselves.

We also add the rpaths to the executables and libraries as part of the
app bundle building process; I thought it'd fix macdeployqt's problem,
but it didn't, however, it's probably cleaner to do it there anyway.

Change-Id: I134c2b1a32e168e82de67f0b674d17167481d69a
Reviewed-on: https://code.wireshark.org/review/9612
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 02:12:33 +00:00
Guy Harris 353e4a3b3c Include <sys/param.h> to get MAXPATHLEN.
Change-Id: Ibf40b75eb224262c4d5a571e56e2575bca787b91
Reviewed-on: https://code.wireshark.org/review/8565
Reviewed-by: Guy Harris <guy@alum.mit.edu>
(cherry picked from commit eb93c661c5c5f368ee0288193cdf3a7ce7102bd7)
Reviewed-on: https://code.wireshark.org/review/8567
2015-05-21 08:43:10 +00:00
Guy Harris 29aeea744d Remove trailing whitespace.
Change-Id: Ibc6620f489ae5d956b03ee61dc6f08dfc0a93371
Reviewed-on: https://code.wireshark.org/review/8562
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-05-21 07:29:05 +00:00
Guy Harris 5a54d69b72 Don't just blindly tell application X11 to do anything.
Determine what type of X11 (bundled from Apple, unbundled XQuartz) we
should have and what type we do have.

If we don't have any installed, don't tell X11 to do anything, as that
just pops up a "where is X11?" dialog; that's information the user
shouldn't need to tell the system if it is installed, and it's
information for which the user shouldn't be asked if it's not installed
- and if they're asked, they might answer incorrectly, leaving a system
that doesn't properly launch X11 for Wireshark.  (See various
ask.wireshark.org questions about this, for example.)

Pick up some changes from newer versions of Inkscape, such as using
unsigned char *, not using FSSpecs, and adding some comments, while
we're at it.

Change-Id: Ic9a2b25938c4eec5628d1c16c7db28aa0714203e
Reviewed-on: https://code.wireshark.org/review/8559
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Reviewed-on: https://code.wireshark.org/review/8561
2015-05-21 07:27:58 +00:00
Gerald Combs 3d7b728173 Make androiddump loadable on OS X.
Make sure the target location for extcap executables and extcap_dir
match on OS X.

Set the extcap directory to Contents/MacOS/extcap. The Mac Developer
Library documentation doesn't explicitly define "Resources", but
examples include data files and not executables. It does state that
executables shouldn't go into PlugIns.

Make sure we rpathify androiddump.

Change-Id: If36c762e2a1991c26e5c01a870deaf191bcf9f94
Reviewed-on: https://code.wireshark.org/review/8093
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-04-17 18:08:36 +00:00
Guy Harris 502eef945b Fix the path for androiddump.
The androiddump binary ends up in the top-level source directory, not
the extcap subdirectory.

Change-Id: Ia306b35211b885b817802a6a22ed9dbbe07f2532
Reviewed-on: https://code.wireshark.org/review/8037
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-12 21:57:14 +00:00
Michal Labedzki 56470cc801 Add missing androiddump stuff
Add missing androiddump stuff like:
- release notes
- documentation
- Windows nmake support
- running androiddump as a windows application instead of console on Windows
- addition of androiddump to the Windows installer

Change-Id: I3bc6cc70e4dc96c0cd776f3d965dd2aa0309995d
Reviewed-on: https://code.wireshark.org/review/7981
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2015-04-12 16:34:46 +00:00
Gerald Combs 7787c1b464 Fixup our anonsvn URLs.
Change-Id: Id18d392bf7ff948fc78b684d8222c5c3725d302a
Reviewed-on: https://code.wireshark.org/review/7886
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-04-02 19:21:41 +00:00
Stephen Fisher 13dbf52ce3 Attempt to fix "make distcheck" on Ubuntu buildbot
Change-Id: I6e7ea1e2aaf839fdb3af8a3a5a47aabbb12056ef
Reviewed-on: https://code.wireshark.org/review/6326
Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2015-01-05 18:40:22 +00:00
Stephen Fisher cbc5faa06c Get rid of some GNU make extensions so users can build with
the make that comes with *BSD and other systems now.

Change-Id: Ib2eee8d37e7029202675bac35839b1c0d5fc5131
Reviewed-on: https://code.wireshark.org/review/6320
Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2015-01-05 17:47:56 +00:00
Alexis La Goutte 9df73862fb It is also 2015 for Mac OS X :-)
Change-Id: Idbd5e09ac80015feee7ddd30b9569219fde596e1
Reviewed-on: https://code.wireshark.org/review/6269
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-01-03 22:26:35 +00:00
Alexis La Goutte 9ab44b33bc Info.plist : fix indent (use tabs)
Change-Id: I241c124fa341ae5d6126a189374d69dea1a08d96
Reviewed-on: https://code.wireshark.org/review/6268
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-01-03 22:25:43 +00:00
Guy Harris dab9c85cb3 Fix syntax.
Change-Id: Icc18cd7369bae21629aafd5631a373485ef75dea
Reviewed-on: https://code.wireshark.org/review/5081
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-02 19:26:41 +00:00
Guy Harris 66e204fd93 Handle packagemaker being an ordinary command in /usr/bin.
Change-Id: Ic804a0fdb4dc450683f57be4814a347e20ecd401
Reviewed-on: https://code.wireshark.org/review/5079
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-02 18:38:02 +00:00
Guy Harris 70cab47fe1 Fix syntax, add a check for failure to find PackageMaker, make sure it's a file.
Change-Id: Id5bb23a8c5ebd8a63a51029de541cd32e484029c
Reviewed-on: https://code.wireshark.org/review/5078
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-02 18:10:58 +00:00
Guy Harris 4f94c9e9bf Handle PackageMaker a bit better.
Look for the binary in various places, rather than looking for
particular directories and adding them to the path.  That lets us use
the PackageMaker binary from the PackageMaker.app bundle (it can either
be run as a GUI app or from the command line), so you don't have to have
a symlink to it from one of the directories in question.

Change-Id: I1ad701291698544f96d419663f0b4a669876d2f1
Reviewed-on: https://code.wireshark.org/review/5077
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-02 17:26:23 +00:00
Gerald Combs 2e3147524e Add a missing backslash.
Change-Id: Iac79c885fe10805b61512ed2c02cd652f1c3fd7a
Reviewed-on: https://code.wireshark.org/review/5010
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-30 21:36:35 +00:00
Gerald Combs 7665ac5fab OS X: Don't add libtool control files to the app bundle.
According to https://developer.apple.com/library/mac/technotes/tn2206
the Contents/PlugIns directory should *only* contain executable files.
Only copy .so (and in case we need them) .dylib files.

Change-Id: I01f077735018733926db92e7576f6f4fecb68862
Reviewed-on: https://code.wireshark.org/review/5008
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-30 20:54:40 +00:00
Gerald Combs d2bb61a3a9 OS X: Integrate CMake and osx-app.sh
Add a -cb/--create-bundle option to osx-app.sh which builds the
application bundle. Use it in Autotools. (CMake does this by default.)

Copy over linker flags from configure.ac to CMakeLists.txt to support
rpathification and code signing.

Add an osx-app custom target to CMake.

Change-Id: I6c20a1c27f8954aaea62904b7425b9312d994803
Reviewed-on: https://code.wireshark.org/review/4918
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-23 15:52:53 +00:00
Gerald Combs 0c444f315f OS X: Fix osx-dmg.sh bundle binary path.
Change-Id: Ia7c59de4f8b59dda9dbc484b8fa9ae0c3d88d594
Reviewed-on: https://code.wireshark.org/review/4905
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-22 04:02:45 +00:00
Gerald Combs e5d967bbb4 osx-app.sh: Add verbosity.
Change-Id: I3cd1c49909af34badd0d5c5f29bfcddb753ef2bf
Reviewed-on: https://code.wireshark.org/review/4902
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-21 23:31:43 +00:00
Gerald Combs 86386243cd Make the "-qt" option the default in the OS X packaging scripts.
Change-Id: I1e404c342d06381be71735ff6fbc47e9b2b13899
Reviewed-on: https://code.wireshark.org/review/4895
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-21 16:16:56 +00:00
Gerald Combs a2508bda19 OS X: Add retina / hidpi support to Info.plist.
This should partially fix the problem described at
https://ask.wireshark.org/questions/37177/pixelated-ui-on-mac-os-x-with-development-1990

Change-Id: I436aae0d5b681e9ff549d257c2244ee67448ab07
Reviewed-on: https://code.wireshark.org/review/4876
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-20 18:46:00 +00:00
Gerald Combs cf3218df81 OS X packaging fix.
Change-Id: I82936bb1dcfa3a7ca1aea8a3ded388015aa37531
Reviewed-on: https://code.wireshark.org/review/3966
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-03 01:05:49 +00:00
Gerald Combs aee3de9688 OS X packaging fix: wireshark-qt → wireshark.
Change-Id: Ie95c28ca47baf453335abab23eb7baba63d52f47
Reviewed-on: https://code.wireshark.org/review/3963
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-02 23:58:26 +00:00
Guy Harris 3ac49be96c Add more files to the release tarball.
Change-Id: I02ce275154979ff56f8f8929e5909f3035f62c47
Reviewed-on: https://code.wireshark.org/review/3286
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-31 08:55:52 +00:00
Guy Harris 8241b8760c Get rid of the Python stuff, as we've gotten rid of Python plugin support.
Also, update a comment to more accurately describe what a loop is doing,
and get rid of an unused variable.

Change-Id: I948fc4ad758152b483450bf74f653087c892ad3a
Reviewed-on: https://code.wireshark.org/review/2360
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-18 03:22:46 +00:00
Guy Harris 93b5a313ad When building an OS X package for GTK+, put the libraries in lib.
This reverts to the way we did it prior to the switch to Qt; with GTK+,
Contents/MacOS/Wireshark is just a launcher, and the Wireshark binary is
in Contents/Resources/bin/wireshark-bin, and the appropriate rpath entry
would be @executable_path/../lib - @executable_path/../Frameworks, which
works for the Qt version, in which Contents/MacOS/Wireshark is the
actual executable, doesn't work for the GTK+ version.

This should fix bug 10185.

Change-Id: I4e50a4ead8f29a742c97a9001c821aabe1fa5e65
Reviewed-on: https://code.wireshark.org/review/2347
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-17 22:06:12 +00:00
Guy Harris 39ca18d71b Only nuke the startup item once we've installed the launch daemon.
That way, if we crash in the middle, there's still something installed
that will try to set the permissions on the BPF devices.

Change-Id: Ie0c32f9eaca08bdbb359d07e47f20c664bc66411
Reviewed-on: https://code.wireshark.org/review/2023
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-07 17:47:20 +00:00