Commit Graph

50 Commits

Author SHA1 Message Date
Jim Young 3a27d6b3c4 Add -G Ninja to macos-setup.sh
Let's suggest using cmake's Ninja generator if we're going to
suggest using ninja.

Change-Id: Ibc48bf0e2039c2bbc0d11d7b194bc7094c1e0ebf
Reviewed-on: https://code.wireshark.org/review/32399
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2019-03-14 08:59:52 +00:00
Gerald Combs 092d73e43e macos-setup: Update our GMP build flags.
Configure GMP with --enable-fat. Neither --with-libgcrypt nor
--without-p11-kit appear to be supported, so don't pass those flags.

Change-Id: Ib96e805064b95be72d5fa3bd28057a5092064d8a
Reviewed-on: https://code.wireshark.org/review/32190
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2019-02-25 23:21:47 +00:00
Guy Harris 1048b82ca3 Fix liblzma, liblz4, and libssh builds with minimum deployment version and SDK.
liblzma is used by libxml2, which is used by libwireshark, so we need
it.  It's build by xz, so we need to do the xz build with the
minimum-version and SDK flags.

liblz4 does its builds in its own unique way; it appears we need to set
MOREFLAGS to include the relevant flas.

libssh is built with CMake, so you have to do special magic to set the
SDK path; do it by running cmake with the MACOSX_DEPLOYMENT_TARGET and
SDKROOT environment variables.

Change-Id: Ia588632e5047c4a8a22fe6ef3a0844cfe7722df2
Reviewed-on: https://code.wireshark.org/review/32171
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-23 19:21:46 +00:00
Michael Tuexen f548063102 Install Qt 5.12.1 by default.
Change-Id: I0d6462e6e9593198a77ccaeb6db630dffa0ae625
Reviewed-on: https://code.wireshark.org/review/32164
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-22 20:42:49 +00:00
Guy Harris 372b9657a6 Add -D_FORTIFY_SOURCE=0 for C++ if we're using it for C.
Change-Id: Ideaba2faaa7b968947f7af90b41c40a8edb4d3c2
Reviewed-on: https://code.wireshark.org/review/32160
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-22 20:36:36 +00:00
Guy Harris 1798a3f295 Set CXXFLAGS and LDFLAGS for all libraries.
If a minimum version number is specified, we need them all built with
that and with the selected SDK.

Change-Id: I84b98c67c64da12d3a3b234a41991675a71aeb82
Reviewed-on: https://code.wireshark.org/review/32156
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-22 20:26:20 +00:00
Guy Harris ce2dadda9f Get rid of extra space between environment variable settings.
Change-Id: Ie200d728f4c98f37ad71a62218b82767cef660b2
Reviewed-on: https://code.wireshark.org/review/32152
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-22 19:59:50 +00:00
Guy Harris 9342371220 Get rid of duplicate setting of CFLAGS.
Change-Id: I6f46f6827d66fec58d43195a95888c9d8adf245a
Reviewed-on: https://code.wireshark.org/review/32146
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2019-02-22 19:16:43 +00:00
Gerald Combs e659773f8f macos-setup.sh: Bump our libxml2 version.
Libxml2 2.9.9 was recently released and fixes a couple of security
flaws.

Change-Id: I59865a35c97e05d7bf41ca9b7688c3dd89507a66
Reviewed-on: https://code.wireshark.org/review/31578
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2019-01-18 05:15:42 +00:00
Jim Young 320bc80371 macOS: fixup qt_base_path in macos-setup.sh
Recent Qt installations include the entire 3-tuple version string
(e.g. 5.9.7) for the parent folder name directly above the clang_64
folder. Use the entire version string when constructing the
recommended build environment export statements.

Change-Id: I779d487a3b794dde57214639a79727edb111835f
Reviewed-on: https://code.wireshark.org/review/30983
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-12-13 09:34:45 +00:00
Peter Wu 811d5f7fac Drop JSON-GLib completely
JSON-GLib was added in v2.9.0rc0-201-g511c2e166a, but is no longer
necessary since we have a home-grown JSON dumper (wsutil/json_dumper.h).
Remove the remaining traces and additionally remove GObject from
FindGLIB2.cmake since it was only added for JSON-GLib.

Change-Id: If9dfd2c60cec130f98109d100bdb6618bde06ba0
Reviewed-on: https://code.wireshark.org/review/30733
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-11-20 05:04:11 +00:00
Gerald Combs 66b9495b9e macos-setup.sh: Update library and tool versions.
Update the following versions:

CMake: 3.7.2 to 3.12.4
Qt: 5.9.5 to 5.9.7 (Current LTS)
libxml2: 2.9.4 to 2.9.7 (2.9.4 has security issues)
c-ares: 1.12.0 to 1.15.0 (1.12.0 has security issues)
libssh: 0.7.4 to 0.8.5 (0.7.4 has security issues)

Change-Id: Ia97b436981705a4d99c0b0a2f238738e18394d45
Reviewed-on: https://code.wireshark.org/review/30589
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-11-14 17:45:12 +00:00
Gerald Combs 8c9f09bf34 macos-setup.sh: Remove unused variables and code.
Remove unused variables found by shellcheck. Remove a dead check for
10.5 (which we no longer support) which enables 32-bit builds (which we
no longer support).

Change-Id: I8f987f31025c74d27e46c7f74f514857ec8cdd3b
Reviewed-on: https://code.wireshark.org/review/30549
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-11-09 05:05:52 +00:00
Peter Wu e5cd755578 macos-setup.sh: fix Python 3 installation for OS X 10.8 and older
Change-Id: I3c5b7fa272fbef770b06430edadb8abfc688e951
Fixes: v2.9.0rc0-2460-ge9f7bb5127 ("Require Python 3, drop Python 2 support")
Reviewed-on: https://code.wireshark.org/review/30548
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Michael Tüxen <tuexen@wireshark.org>
2018-11-08 17:26:03 +00:00
Peter Wu e9f7bb5127 Require Python 3, drop Python 2 support
Python 3 is widely available. All major Linux distributions support it.
RHEL is covered via EPEL (which is already required for cmake3). Drop
support for Python 2 in order to reduce maintenance costs. The main
motivation is being able to simplify the tests.

CMake is updated to search for Python >= 3.4 and will fail if
unavailable (generating dissectors.c requires Python, so it is quite an
important piece to have).

The documentation is updated to reflect the Python 3.7 paths used by
Chocolatey. Tested the git-review installation instructions in Windows 7
x64 without a previous Chocolatey installation.

macOS brew now installs Python 3 (its dependencies are already installed
by python@2 for libxml2). The macOS (non-brew variant) is updated to use
the official 64-bit installer to install Python 3.

Change-Id: I80b1e36957f338e0dad1bfcc173b6418682cddba
Reviewed-on: https://code.wireshark.org/review/30192
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-11-07 20:46:59 +00:00
Guy Harris d2879a61bd json-glib requires GLib 2.37.6 or later.
Go for 2.37.6 for now; we may want to use a newer version.

Change-Id: Icce58716d5f7cb8367e7ff83cad070b2fcd7e1c2
Reviewed-on: https://code.wireshark.org/review/30213
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-10-14 20:09:22 +00:00
Peter Wu 189792f145 macos-setup.sh: fix missing json_glib version check
Change-Id: I3d1fecebd4cb0a7b7656cfb3342f68c4e4f929cf
Fixes: v2.9.0rc0-1933-ge9d353112e ("tools: add libjson-glib to macos-setup.")
Reviewed-on: https://code.wireshark.org/review/30196
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2018-10-14 07:21:43 +00:00
Peter Wu 1df0aca487 macos-setup.sh: fix missing bcg729 version check
Reorder spandsp for consistency with the installation steps.

Change-Id: If9ade381ef7316efb4cce0dbc6486c33d44dd9f8
Fixes: v2.5.0rc0-583-ge23e28da22 ("Add bcg729.")
Reviewed-on: https://code.wireshark.org/review/30195
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2018-10-14 07:21:03 +00:00
Dario Lombardo e9d353112e tools: add libjson-glib to macos-setup.
Change-Id: I3cb83065da67891903559c1da1b45f772e656de9
Reviewed-on: https://code.wireshark.org/review/28946
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-09-24 04:18:42 +00:00
Guy Harris 731e182392 Get rid of unused variable, update a comment.
We no longer use red.libssh.org, so the file number isn't needed any
more.

Change-Id: I4cc6eb242eac51219742731cfa82a7bfe9fff2c3
Reviewed-on: https://code.wireshark.org/review/29771
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-09-21 05:28:42 +00:00
Guy Harris bc65ce1eca Try downloading libssh directly from www.libssh.org.
Downloading from red.libssh.org got "curl: (51) SSL: no alternative
certificate subject name matches target host name 'red.libssh.org'" on
my Mojave virtual machine.

Change-Id: Iab8016c4dc5200c80bff3c0cdc776bc922f4dd59
Reviewed-on: https://code.wireshark.org/review/29768
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-09-21 05:21:24 +00:00
Guy Harris 711a8596ae Update the URLs for GnuPG.
Use HTTP rather than FTP; the FTP server appears no longer to be
available.

Change-Id: I4446cc48818f419a341880da53db8670170794ae
Reviewed-on: https://code.wireshark.org/review/29765
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-09-21 04:45:27 +00:00
Dario Lombardo 234ff77e41 macosx-setup: fix indentation.
Change-Id: Ifece9846cb6e94d2cdb1f29fc28db2700f269495
Reviewed-on: https://code.wireshark.org/review/28498
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-06-28 00:28:29 +00:00
Joerg Mayer 14b2d4c4a3 Add asciidoctor and asciidoctor-pdf to macos-setup.sh
Change-Id: I531c3cbb4685e722e9b5f7762f184063eca61976
Reviewed-on: https://code.wireshark.org/review/26129
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2018-05-23 17:38:11 +00:00
Guy Harris 5ed87ffe06 If the OS version of curl isn't new enough, download and install from source.
The Mountain Lion version, and presumably earlier versions, can't handle
the site for xz.

This means we don't need to check the OS version before downloading
Ninja or MaxMindDB.

Change-Id: I0afa2216d67cddc58d5c3d91d1620f3004026dfa
Reviewed-on: https://code.wireshark.org/review/27652
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-19 00:29:59 +00:00
Guy Harris 7138fc8dc5 Install CMake 3.5.2 on Lion and 3.7.2 on later releases.
See the comment for the painful details.

Change-Id: Ic82de342b1d9c8d118e08c7b298ab7514a6f4ed3
Reviewed-on: https://code.wireshark.org/review/27651
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-18 23:40:57 +00:00
Guy Harris 1a4f65c4a3 Don't try to download MaxMindDB on Lion or earlier.
Same problem as with Ninja - I guess this version can't handle the TLS
version those sites use.

Change-Id: I659313813d0e0d68c9ab7426e8feaf1f3f52b06e
Reviewed-on: https://code.wireshark.org/review/27648
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-18 20:44:37 +00:00
Guy Harris 52e3e79ec7 Wrong Darwin major version - Lion is 11, not 10.
Change-Id: I3977bf33b7c9d66c299fa945b49791dac7a03126
Reviewed-on: https://code.wireshark.org/review/27646
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-18 20:07:32 +00:00
Guy Harris 7ae53c7e95 Don't try to download Ninja on Lion or earlier.
The version of curl that comes with Lion gets a TLS error when trying to
download Ninja.

Also note some other issues.

Change-Id: I0e26a5b2f2f54e36461d3d3909f719fcca2ac04b
Reviewed-on: https://code.wireshark.org/review/27645
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-18 20:03:58 +00:00
Joerg Mayer de354e3149 Minimum supported QT-Version is 5.2
Change-Id: I9652a4d19b73a95022b39f738d6ad01dd458df94
Reviewed-on: https://code.wireshark.org/review/27572
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2018-05-16 07:08:58 +00:00
Guy Harris 4dc27d9b7d CMake 3.11.0 has problems on Lion; use 3.5.2, which works.
We're using 3.5.2 on the buildbot.  3.11.0 appears to be getting tripped
up by the libc++ on Lion, cutting off lines at 1024 characters in
generated Makefiles.

Change-Id: Iff1a2fb13ef873e5d0976544f3c8248239a9772d
Reviewed-on: https://code.wireshark.org/review/27570
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-16 04:17:25 +00:00
Guy Harris 9c20675d0e Give Ninja build instructions if we've installed Ninja.
Change-Id: I629f0e48e1b66ae9bb65f025669fd94b2480e765
Reviewed-on: https://code.wireshark.org/review/27548
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-15 06:33:21 +00:00
Guy Harris ec8b402a76 Download and install Ninja.
The Developer's Guide recommends Ninja for all UN*Xes, so download it
rather than having to say "but on macOS use make".

Change-Id: I147b96144c25d01151c68e13d249172023b1fccc
Reviewed-on: https://code.wireshark.org/review/27544
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-15 03:43:53 +00:00
Guy Harris e7db145b7f Get rid of debugging printout.
Change-Id: I6641aca753b40a8a06ce8d3baf47d37cdf0c420a
Reviewed-on: https://code.wireshark.org/review/27543
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-15 03:30:04 +00:00
Guy Harris 748c569f88 Clean up Qt installation.
We don't support 32-bit builds on macOS, so get rid of the now-unused
TARGET_PLATFORM variable and the comment about how to build 32-bit
libraries.

Follow the complex rules that Qt's download directories unfortunately
require to get the .dmg for a given release.  Drop support for
installing Qt 4.

CMake doesn't use pkg-config to find the Qt frameworks, so we don't need
to fix up the .pc files (which aren't even shipped with later versions
of Qt).

Change-Id: I5edc69f8b34dac47bb2310689f296ce37347f495
Reviewed-on: https://code.wireshark.org/review/27542
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-15 03:26:12 +00:00
Guy Harris 67b9ccd45f Update a comment.
Change-Id: Ia5971b466f2e2da40730933b44bba5672d94c399
Reviewed-on: https://code.wireshark.org/review/27541
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-14 22:09:54 +00:00
Guy Harris 33c836af9f Builds require CMake, so always install it.
Don't have an option not to install it.  (If we want to avoid installing
it when it's already been installed by something other than this script,
we should check for its existence before installing, and skip the
installation step for it.)

Get rid of the instructions for autotools builds; always show the
instructions for CMake builds.

We wouldn't get to the uninstall stage if it hadn't been installed by
this script; remove the comment asking about that.

Change-Id: I276ee96bf955ef4ff33dea87bc27c21111301ea0
Reviewed-on: https://code.wireshark.org/review/27540
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-05-14 22:08:03 +00:00
Joerg Mayer d1ee982115 Provide alternative paths for the macosx-support-libs.
That way I won't have to restore the dir after a "git -dfX"
Also Update CMake to 1.11.0 (current) and Qt to 5.9.5 (LTS)

Change-Id: Idcc481b517d6379f97fa5d30ce3b886cfcf3c9d4
Reviewed-on: https://code.wireshark.org/review/26951
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2018-04-15 13:06:53 +00:00
Joerg Mayer 2c7b678d7e macos-setup.sh: More GTK and minimum supported version cleanups
Change-Id: Ia2992fe65c2c16e4b42d252ba0f08266a95f4b10
Reviewed-on: https://code.wireshark.org/review/26840
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2018-04-10 05:02:17 +00:00
Joerg Mayer 25f925840d Remove GTK-related stuff from macos-setup.sh
Change-Id: Iaf6298a5f810c9fa0c2a3c31cce50af8856d8d14
Reviewed-on: https://code.wireshark.org/review/26818
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2018-04-09 05:07:38 +00:00
Guy Harris c4da7ed843 Don't install PortAudio if we're not installing GTK+.
Change-Id: I99bad59b34ff0688cf527ae69b5e48e4c14e7380
Reviewed-on: https://code.wireshark.org/review/26758
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-04-05 18:48:41 +00:00
Dario Lombardo 8a5385b9c9 More licenses converted to SPDX.
Change-Id: Id4f987dcdacf06622d70263f4659a4400e30dc39
Reviewed-on: https://code.wireshark.org/review/26332
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-03-07 13:35:49 +00:00
Gerald Combs a1da75c554 Transition from GeoIP Legacy to MaxMindDB.
MaxMind is discontinuing its legacy databases in April in favor of
GeoIP2, which use a newer database format (MaxMind DB). The reference C
library (libmaxminddb) is available under the Apache 2.0 license which
isn't quite compatible with ours.

Add mmdbresolve, a utility that reads IPv4 and IPv6 addresses on stdin
and prints resolved information on stdout. Place it under a liberal
license (MIT) so that we can keep libmaxminddb at arm's length. Add
epan/maxmind_db.[ch], which spawns mmdbresolve and communicates with it
via stdio.

Migrate the preferences and documentation to MaxMindDB.

Change the IPv4 and IPv6 asnum fields to FT_UINT32s. Change the
geographic coordinate fields to FT_DOUBLEs.

Bug: 10658
Change-Id: I24aeed637bea1b41d173270bda413af230f4425f
Reviewed-on: https://code.wireshark.org/review/26214
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-03-06 18:02:21 +00:00
Eliot Lear 6014bfe6fc Get program to the right working directory.
Otherwise patches breaks.

Change-Id: Ief735dc949eaefa3515cc0a5936e0a2735cb0241
Reviewed-on: https://code.wireshark.org/review/24035
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-10-23 18:31:22 +00:00
Guy Harris e1a591fc74 Get rid of no-longer-needed patches to PortAudio.
The version of PortAudio we now specify has both of those problems
fixed.

Change-Id: I7364a5dfac1aac4799347a88f3e89fcb52f57d32
Reviewed-on: https://code.wireshark.org/review/23356
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-09-01 21:53:30 +00:00
Guy Harris b66b4a96e3 Handle older lz4 versions.
lz4 switched from sequentially numbered releases, named rN, to
vX.Y.Z-numbered releases.

The old sequentially-numbered releases were in tarballs at
https://github.com/lz4/lz4/archive/rN.tar.gz, which extract into an
lz4-rN directory.

THe new vX.Y.Z-numbered releases are in tarballs at
https://github.com/lz4/lz4/archive/vX.Y.Z.tar.gz, which extract into an
lz4-X.Y.Z directory - no, not lz4-vX.Y.Z, just lz4-X.Y.Z.

We expect LZ4_VERSION to be set to rN for the sequentially- numbered
releases and X.Y.Z - not vX.Y.Z - for the vX.Y.Z- numbered releases.

Change-Id: Icb0275aa69b96eea43bf3a8645748a86cec81c94
Reviewed-on: https://code.wireshark.org/review/23026
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-08-09 03:34:12 +00:00
Ahmad Fatoum a8b018b71c Bump versions of macOS dependencies
Versions were bumped to the newest available by Homebrew.

Change-Id: I8f3f405d3644dff91035353e6f83131a507602cd
Reviewed-on: https://code.wireshark.org/review/21224
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-08-08 03:59:29 +00:00
Guy Harris 2ca4c5d756 Fix lz4 and libssh uninstall.
We have to remove the lz4 build tree as root.

We can't do "make uninstall" for libssh, so manually remove the stuff it
installs.  Also, remove the -done file, and remove the downloaded
tarball and build tree if we're supposed to do so.

Change-Id: If594ab241a9955229dfbc12e4f5e0c517add6daa
Reviewed-on: https://code.wireshark.org/review/22996
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-08-07 19:14:33 +00:00
Guy Harris f63b0241c9 Fix SpanDSP build with older versions of Xcode.
Older versions of Xcode don't support -Wunused-but-set-variable, so
remove it from the list of options with which to compile SpanDSP.

Change-Id: Idd298e19eaf770980da179412480e17a00514d36
Reviewed-on: https://code.wireshark.org/review/22991
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-08-07 17:09:23 +00:00
Guy Harris 2a17c33928 Move macosx-setup.sh to tools and remove the "x".
The OS is now called just macOS, and the rest of the setup scripts are
in tools, so move this one there as well.

Update the documentation to reflect the change.

Change-Id: I4d9ebf0797ffe8862e82c4bcfdeec1d2eabae6ae
Reviewed-on: https://code.wireshark.org/review/22918
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-08-02 07:40:34 +00:00