Commit Graph

123 Commits

Author SHA1 Message Date
ardnew 84873418da
macos-setup.sh: libtiff: refactor curl fail logic
- Rebased against master (18edc17)
2022-01-31 12:57:25 -06:00
ardnew d06e7bd0f6
macos-setup.sh: fix libtiff filename and URL
macos-setup.sh:
  - Fix filename of libtiff in existence test from "libtiff" to "tiff"
  - Added fallback URL for libtiff when the downloaded file is not a valid gzip
    archive. The host rotates older versions of libtiff into an "old"
    subdirectory, so curl downloads a 404 Web page and exits without error. Then
    the call to gzcat fails with an invalid gzip archive error. Maybe libtiff
    version should be updated instead?
2022-01-31 12:54:05 -06:00
Michael Tuexen 9a887cc909 macos-setup.sh: bump libssh version 2022-01-18 22:01:30 +01:00
Michael Tuexen b3c24758b3 macos-setup.sh: Simplify building nghttp2 2022-01-05 20:58:32 +00:00
Gerald Combs e9bc60ace4 macos-setup.sh: Update the PCRE URL.
As noted on https://pcre.org/, ftp.pcre.org has been shut down. Switch
to SourceForge and bump the version to 8.45. Fixes #17834.
2022-01-05 17:01:23 +00:00
Alexis La Goutte a68fd7b09d macos-setup: Update nghttp2 release
there is some CVE and bug fix...
2022-01-05 10:10:38 +00:00
Guy Harris ff7a5c87e9 macos-setup.sh: don't build libxml2 with Python.
At least on Monterey, with Xcode 13.1, the linker whines that we weren't
granted the Sacred and Holy Right to link with the Python 2.7 framework.
As far as I know, we have no need to use that framework, so configure it
out.
2021-12-13 14:41:13 -08:00
Joerg Mayer d52478436d macos-setup.sh: Update some tools
- Cmake to 3.21.4
- Sparkle to 1.27.0
- Asciidoctor to 2.0.16
- AsciidoctorPdf to 1.6.1
2021-11-17 16:18:50 +00:00
Jaap Keuter 5f7806a496 c-ares: move domain from haxx.se to its own .org
With c-ares release 1.18.0 the URLs were updated to c-ares.org.
Let's do the same.
2021-11-16 17:02:50 +00:00
Michael Tuexen 6587debb3b tools: building pcre2 requires cmake.
So move it after cmake...
2021-11-14 20:57:29 +01:00
Michael Tuexen 2d7bc59fae tools: actually call install_pcre2 in macos-setup.sh 2021-11-14 19:35:33 +01:00
Gerald Combs d8429d2065 Tools: Add PCRE2 to our setup scripts.
Add PCRE2 to the base package list in our various setup scripts.
2021-11-14 17:53:36 +00:00
Gerald Combs a99e1b2099 Tools: Switch a bunch of macos-setup URLs to HTTPS. 2021-11-12 21:25:48 +00:00
Michael Tuexen 3d7729c6b3 tools: use glib version 2.68.4 on MacOS 2021-08-24 19:23:49 +00:00
Guy Harris cc84bebcdc macos-setup: add the deployment flags when configuring with Meson.
We add them when configuring with autotools, so that we build GLib
appropriately for the OS versions we're targeting; do the same when
configuring with Meson.
2021-07-30 19:20:13 -07:00
Guy Harris 856c4f3af6 macos-setup: generate a .pc file for libffi if we have it.
If this version of macOS comes with a version of libffi, generate a .pc
file for it and install it in /usr/local/lib/pkgconfig, so that
pkg-config finds that version of libffi, and the GLib configuration
process - whether it's done with autotools or Meson - doesn't decide
that there is no libffi and fail or install its own libffi or whatever.
2021-07-30 18:54:04 -07:00
Guy Harris c8e17d7835 macos-setup: cleanups.
If we're running an external Python 3 package, pip3 will install scripts
in some directory under /Library; set MESON to point to the location
where Meson will be installed, and use that.

Have a meson-done file to indicate that Meson's been installed by us,
and uninstall it only if that's present.
2021-07-30 03:45:41 -07:00
Guy Harris 2fd29240c8 macos-setup: test whether /usr/bin/python3 works, not python3 in general.
We want to check whether *Apple* provides Python 3, not whether there's
a Python 3 installed; if there is no Apple-provided Python 3, but
there's somebody else's Python 3 installed, leave it alone, don't
uninstall it.
2021-07-29 14:50:10 -07:00
Guy Harris cc34e1c406 macos-setup: install and use Meson+Ninja to build newer versions of GLib.
Newer versions of GLib require Meson (they don't support autotools) and
Ninja (they use Ninja rather than Make).  Install Meson and, based on
the GLib version, use autotools+make or Meson+Ninja to build GLib.

Move up the installation of Python 3 so that it's available when we
install Meson, as Meson requires Python 3 and is installed with pip3.
2021-07-29 14:06:58 -07:00
Guy Harris c263b0a13e macos-setup: if Xcode provides Python 3, use it.
Only install an external Python 3 if /usr/bin/python3 doesn't work; on
at least some versions of macOS, /usr/bin/python3 is a wrapper to run
Python 3 from Xcode, and at least some versions of Xcode provide Python
3.
2021-07-29 19:44:20 +00:00
Guy Harris c4d3716ce8 macos-setup: install the current version of Ninja.
1.10.2 is the latest version, and is the first version to ship as a fat
x86-64/ARM64 binary, so that we have native binaries for both platforms
supported by macOS.
2021-07-27 00:26:28 -07:00
Joerg Mayer bf33998a30 Add missing space before ']' 2021-05-30 18:51:02 +02:00
Michael Tuexen 96aa5d9b68 macos-setup.sh: update sparkle 2021-05-29 01:41:15 +02:00
Michael Tuexen a889e8e04b macos-setup.sh: improve arm support
Disable on arm the usage of assember code in nettle and sbc, since this
doesn't compile (yet) on arm platforms.
2021-05-27 14:18:45 +02:00
Michael Tuexen bb327af305 macossetup.sh: fix syntax 2021-05-26 23:21:39 +02:00
Michael Tuexen c1518877fa macossetup.sh: whitespace fix 2021-05-26 23:20:44 +02:00
John Thacker 9bd450f507 macos: Update Python
Update Python from 3.9.3 to 3.9.5, since 3.9.3 was recalled due
to unintentional ABI compatiblity breakage:
(https://bugs.python.org/issue43710)
2021-05-26 03:50:03 +00:00
John Thacker 69244cbb98 macos-setup: Update CMake, Qt, and Python
Update CMake (3.19.7), Qt (5.2.10), and Python (3.9.3) to later bugfix
versions of the current packages. CMake and Python have made tweaks in
the names of the binary packages that support different macOS versions.

Fixes downloading Python 3.9.2+ on macOS 11 after the package suffix
changed from -macos11.0.pkg to -macos11.pkg

Warn about the lack of Qt offline installers for version 5.15 and
greater.
2021-04-05 00:41:41 +00:00
Guy Harris 828b43491c macos-setup: the current Python is 3.9.2.
While we're at it, capitalize "Arm".  (That's how Arm Ltd. is spelling
it now, even in the architecture versions, e.g. "Armv8-A".)
2021-03-26 21:32:31 -07:00
Joerg Mayer 92b3edd798 macos-setup.sh: Starting with major 11, the minor SDK version no longer matters 2021-02-25 07:09:54 +00:00
John Thacker 94488fc509 macos-setup: Require Qt 5.6 or later and macOS 10.8 or later
The minimum required version of Qt is now 5.6, and thus the minimum
required version of macOS is 10.8. Reflect that in macos-setup, and
remove version checks and older packages installed to support
Snow Leopard and Lion.
2021-02-20 19:17:31 +00:00
John Thacker 4c1e0dd1fb macos-setup: Support uninstall of QT versions 5.[10-14].x 2021-01-16 02:32:04 +00:00
John Thacker d612e19767 macos-setup: Allow installing QT 5.14
Allow QT version 5.14.x to be installed (if specified as a variable
on the command line.) Remove the ability to install 5.2.x, as QT 5.3
has been the minimum required version since the Wireshark 3.4 branch.
Note that QT no longer providers offline installers for the free releases
of 5.15 and later, so we'll have to come up with a different method.
(See http://download.qt.io/archive/qt/5.15/5.15.0/OFFLINE_README.txt
and https://www.qt.io/blog/qt-offering-changes-2020 )
2021-01-11 21:32:22 +00:00
John Thacker eff595db67 macos-setup: Update Python for Big Sur and Apple Silicon (arm)
Python 3.9.1 is the first version of Python to support Big Sur and
Apple Silicon (https://www.python.org/downloads/release/python-391/),
and Python 3.7.6 is the last version with a 64-bit/32-bit binary installer
for macOS X 10.6 (Snow Leopard) to 10.8 (Mountain Lion) provided.
2021-01-08 12:04:24 +00:00
John Thacker d74bfc569e macos-setup: Update CMake for Apple Silicon
Apple Silicon requires CMake 3.19.2, but the binaries provided
for 3.19.2 only run on MacOS 10.10 and later, so we have more
bifurcation of the CMake we try to install. Get rid of some of
the old 2.x paths to compensate.
2021-01-05 22:00:58 +00:00
John Thacker 3506735f08 macos: Clarify when xz support was added to tar
OS X 10.9 (https://opensource.apple.com/release/os-x-109.html) ships
with libarchive-29, which is compiled with LZMA/xz support; its default
[bsd]tar has xz support.  (Look for HAVE_LIBLZMA in config.h in
https://opensource.apple.com/source/libarchive/libarchive-29/)
OS X 10.8 (https://opensource.apple.com/release/mac-os-x-1084.html)
does not have xz support. Clarify the comment in case in the future
we decide we don't need to install xz-utils once the minimum macOS
version is 10.9 or greater.
2021-01-02 19:44:01 +00:00
Michael Tuexen f918c3372c Bump Qt version to match what is used on the MacOS buildbot 2020-12-27 17:04:13 +01:00
Guy Harris f3dc269df6 macos-setup: work around a botch in GLib "make distclean".
[skip ci]
2020-12-19 14:21:15 -08:00
Guy Harris 8b0d19c634 macos-setup: explain why we're running autoreconf on minizip.
[skip ci]
2020-12-18 23:53:47 -08:00
Guy Harris 0cdbdcc5a4 macos-setup: fix the name of the -done file for Minizip.
It's minizip-$installed_minizip_version-done, not
zlib-$installed_minizip_version-done; the tarball is
zlib-$installed_minizip_version.tar.gz, because it's a contributed file
in the zlib package, but we don't use zlib in the name of the -done
file.

[skip ci]
2020-12-18 23:45:28 -08:00
Guy Harris 806f524a10 macos-setup: do "make clean", not "make distclean", for zstd.
It has no configure script, so there's no need for "make distclean", and
the Makefile supplied with it has no "make distclean" rule; just do
"make clean".

[skip ci]
2020-12-18 23:19:40 -08:00
Guy Harris 1949b6a5ee macos-setup: don't configure p11-kit to use libffi.
See comment for an explanation.
2020-12-17 21:45:14 +00:00
Guy Harris 2db0c64034 macos-setup: remove tabs.
Consistenly use spaces for indentation.
2020-12-17 12:43:43 -08:00
Guy Harris ca13c3ce49 macos-setup: get rid of a debugging "set -x". 2020-12-16 23:23:13 -08:00
Guy Harris 9fbf79c045 macos-setup: various cleanups.
In uninstall_autoconf, when running uninstall subfunctions, pass the
arguments to the subfunctions.

When uninstalling Ninja, remove the "we've finished installing this"
indicator file.

Get rid of a debugging "set +x".
2020-12-16 18:14:30 -08:00
Guy Harris 190442d76e macos-setup: set SDKROOT when running xcrun.
That lets it find the right SDK path if you're not using the default
SDK.
2020-12-16 14:09:22 -08:00
Guy Harris f2af1ea66d macos-setup: fix uninstallation of libtasn1.
Fix a copy-and-pasteo.
2020-12-16 11:54:53 -08:00
Guy Harris 02c5f50009 macos-setup: more cleanups.
Fix/update/expand some comments.

Do uninstalls for dependencies using CMake more similarly.

For LZ4, as it comes with a Makefile rather than any
autotools/CMake/etc. configuration, "make distclean" might not be
necessary, so, as it's not supported, just do "make clean".

For libssh, do all removes in the uninstall in a single command, and use
$DO_RM, so that it uses sudo iff /usr/local isn't writable by us.  In
addition, remove the build directory as the equivalent of "make
distclean".

As with libssh, so with brotli.
2020-12-13 00:44:24 -08:00
Guy Harris 7d01e3a74e macos-setup: clean up uninstallation of snappy.
For a CMake build done in a subdirectory of the source directory, the
equivalent of "make distclean" is "rm -rf {that subdirectory}".  Make it
so.

When uninstalling the stuff snappy installs with "rm -rf", use $DO_RM,
so it's done with sudo iff /usr/local isn't writable by us, just as
"make uninstall" is done with $DO_MAKE_UNINSTALL so it's done with sudo
iff /usr/local isn't writable by us.

Fix up the list of what to remove, now that we're building snappy as a
shared library, so that it removes shared libraries rather than the
non-existent static library.

Update a comment while we're at it, as Lua isn't the only dependency
that doesn't support "make uninstall".
2020-12-12 23:47:27 -08:00
Guy Harris e92119c608 macos-setup: build snappy as a shared library.
The older versions of snappy apparently used autotools and build a
shared library by default; for example, Wireshark 3.2.6 for macOS is
built with snappy, and includes a snappy dynamic library in the app
bundle.

The current version uses CMake and does *not* build a shared library by
default.  Instead, it builds a static library, which, when you try to
link it to a C-only shared library...

...does not work.

The linker sees that you're statically linking in a bunch of C++ .o
files and gets upset because it can't find C++ standard library routines
used by that code.

If it's a dynamic library, the library was itself already linked with
the C++ standard library, so the external references to that library
from the snappy library are already marked as having been resolved to
the extent that they're expected to be in the C++ standard library at
run time - and, when the dynamic snappy library is built, it's marked as
depending on the C++ standard library, so the run time linker will, when
it loads the snappy dynamic library, see that the C++ standard library
is required and will load it if it hasn't already been loaded.
2020-12-12 21:30:51 -08:00