Commit Graph

87 Commits

Author SHA1 Message Date
Guy Harris 2cc9474a3f When uninstalling a library, first uninstall what depends on it.
Change-Id: I80a719acd90e225b28ca16a24ca74030498a5a42
Reviewed-on: https://code.wireshark.org/review/6734
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 04:15:35 +00:00
Guy Harris 0fbb25f0db Rename install_libpixman to install_pixman, to match uninstall_pixman.
Change-Id: If71895cae49000ff4a4b5bb8211f0b21feed82bc
Reviewed-on: https://code.wireshark.org/review/6733
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 04:06:07 +00:00
Guy Harris b7db12eef3 Do tests in the order the comment before them implies.
Change-Id: Ie82ce54915866bdf635da832dd2f4c4ae1f2937e
Reviewed-on: https://code.wireshark.org/review/6732
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 02:41:21 +00:00
Guy Harris 64108f4b2c Give PortAudio a versioned -done file.
If there's an unversioned -done file, make it a versioned file under the
assumption that the requested version is what's installed.

Create a versioned file when installing.  Use the installed version when
uninstalling, and remove the versioned file.

Change-Id: Ic21e0f139bb35df8f159a5ba7732706357a099fb
Reviewed-on: https://code.wireshark.org/review/6731
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 02:31:01 +00:00
Guy Harris d93a90b445 Make the individual install_ and uninstall_ functions idempotent.
Move the "do I want this and, if so, is it already installed?" checks
into the install_ functions.

Move the "is this already installed?" checks into the uninstall_
functions, and have them clear the appropriate installed version
variable when finished.

Also, fetch the installed versions early in the main line.

Change-Id: I9e5d8ca48285c6d424a4a2a5f53f4aa449a891d3
Reviewed-on: https://code.wireshark.org/review/6730
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 02:10:10 +00:00
Guy Harris 33c1858e46 Pull the installs into a function.
Call it install_all to avoid collision with the OS's install command, if
any; rename the uninstall function to uninstall_all to match.

Change-Id: I9383424ff3910f04244493569fed3e5bc5d3d99d
Reviewed-on: https://code.wireshark.org/review/6729
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 00:27:34 +00:00
Guy Harris 16f2147ad7 Pull the install and uninstall sequences into functions.
That lets us put the install and uninstall sequences for a particular
tool or library together, and separates them from the overall
installation and uninstallation flow.

Change-Id: I5e7def9983b587ba7c3276a9d5762db340a04802
Reviewed-on: https://code.wireshark.org/review/6728
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-22 00:17:55 +00:00
Guy Harris abd90c32bb Fix handling of 3-component OS version numbers.
Get rid of doubled square brackets (what were those for?), and match
dots in the version number with "\.", so we only match dots.

This fixes the handling of version numbers such as 10.10.1.

(A 2-component version number doesn't match, but that's OK - the sed
command doesn't use -n, so that just means it's unchanged by the
command.)

Change-Id: I3046133de732c80410592272d1f7b961a64d9289
Reviewed-on: https://code.wireshark.org/review/5915
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-20 17:47:50 +00:00
Guy Harris 155fe6c689 Set CXXFLAGS to include $VERSION_MIN_FLAGS.
You never know when some library might start using C++, so set CXXFLAGS
everywhere.

Change-Id: I7e49a3446bb6b587e20058be48e06a5f345679c3
Reviewed-on: https://code.wireshark.org/review/5036
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-01 02:51:27 +00:00
Guy Harris 065d2b716d Don't force a verbose build.
That was probably something I put in while debugging.  It can be put
back - or added to some other make command - as necessary.

Change-Id: I184a5b8537c43c87844e6e75f65dd3c0accde9ac
Reviewed-on: https://code.wireshark.org/review/5033
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-31 20:10:13 +00:00
Guy Harris 29fda994e8 Undo my personal disabling of the Qt download/build/install.
I did that because I didn't want to wait a day for Qt to build, but
didn't intend to make that change in the official source.

In the longer term, we should perhaps change the script to download and
install a binary package; sadly, their installers can't be made 100%
command-line and automated, but, well, the CMake installer pops up a
dialog, too, and if you don't have Java installed, some of the configure
scripts that check for Java pop up non-blocking "do you want to install
Java?" dialogs from OS X.

Change-Id: I99781d5e54529955bf9363a7ee9d4122403fa955
Reviewed-on: https://code.wireshark.org/review/5032
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-31 19:30:47 +00:00
Guy Harris 3426ffa248 For OS X, don't rigidly tie the SDK version to the minimum target version.
According to

	https://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/cross_development/Configuring/configuring.html#//apple_ref/doc/uid/10000163i-CH1-SW1

the deployment target (minimum target OS version) and SDK version aren't
necessarily the same and, in fact, Apple typically only ship two SDKs
with each Xcode release, so if you want to build for 10.6 with the 10.6
SDK, you have to use a version of Xcode sufficiently old to have the
10.6 SDK.

Here, we instead search for the oldest SDK for an OS whose version is
greater than or equal to the deployment target.  Note that this may not
work for X11-based Wireshark, as the X11 libraries can change
incompatibly between releases.  (Fortunately, our plan is to kick
X11-based Wireshark to the curb for OS X, removing a large pile of
aggravation for users.)

This also requires some fixes when building Qt and gdk-pixbuf, as some
cases where we were using the minimum OS target version we needed to be
using the SDK version.

For CMake, we're using its native "deployment target" support for OS X,
and hope that it will somehow do the right thing.

Change-Id: Ie8f42c5e4719e7ebdc56b9ba5a330665bee06280
Reviewed-on: https://code.wireshark.org/review/5031
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-31 19:16:10 +00:00
Guy Harris 31e3fc0fd0 Fix name of C-Ares source directory & make the name of the -done file match it.
The directory's name begins with "c-ares-", not "cares-".  Fix that, and
make the -done file's name begin with "c-ares-" as well.

Change-Id: Ifa178c638ca634ca6b762b12290ccfcc4fa928f9
Reviewed-on: https://code.wireshark.org/review/5015
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-31 08:51:09 +00:00
Guy Harris d93bf88af0 The C-Ares "done" file should have a name beginning with cares-.
Fix a presumed copy-and-pasteo.

Change-Id: I6953bfb46741923507bb58b4e48a72d92313e07c
Reviewed-on: https://code.wireshark.org/review/5012
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-31 07:37:41 +00:00
Guy Harris 95dc9a9278 Update a comment as per the previous commit.
Change-Id: Ic7adba4302d4d4abff7012cf09d68246ebade922
Reviewed-on: https://code.wireshark.org/review/4296
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-26 06:11:59 +00:00
Guy Harris 92a0cb85f3 Renaming libtool* to glibtool* might require root permission.
Define DO_MV as "mv" or "sudo mv", depending on whether the user has
write access to /usr/local/bin, and use it to rename libtool* to
glibtool* and vice versa.

Change-Id: Ifbef4daa4521852bc200522743df9d23e7f0d1c2
Reviewed-on: https://code.wireshark.org/review/4295
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-26 06:06:25 +00:00
Guy Harris dacf6e4d87 Don't fail if unmounting the CMake disk image fails.
I don't know why, but sometimes it fails - the most recent failure was
due to it having already been unmounted!  Maybe the CMake installer
unmounts it some times but not others.  Just drive on if it fails.

Change-Id: I1b31356f08695b8d3b9e425f8475a422e1da0783
Reviewed-on: https://code.wireshark.org/review/3220
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-27 20:32:00 +00:00
Guy Harris 2b71946079 Download and install a binary package of CMake from Kitware.
Change-Id: Ia7e5576ff64e1c31682006a023f1bd2ff1d3ccb1
Reviewed-on: https://code.wireshark.org/review/3204
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-26 22:34:16 +00:00
Alexis La Goutte 757aa33220 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^\# \$Id\$/,+1 d') (start with dash)

Change-Id: Ia4b5a6c2302f6a531f6a86c1ec3a2f8205c8c2dd
Reviewed-on: https://code.wireshark.org/review/881
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:48:06 +00:00
Joerg Mayer 46970c4407 Print a message in case we don't have an X11 SDK installed about where
to find xquartz.

Change-Id: I76548fba0b01f8274d12bbb55f4f16622d9a7eff
Reviewed-on: https://code.wireshark.org/review/704
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-03-16 23:09:41 +00:00
Joerg Mayer 17fc3b48ee CMake updates:
- build by default
- update to 2.8.12.2 which actually builds on Mavericks

Change-Id: I60b539613e13d2cdccbd083b28f641ff1ce363c4
Reviewed-on: https://code.wireshark.org/review/703
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-03-16 23:09:32 +00:00
Hadriel Kaplan b6aae8d5c4 Change libsmi url and Lua version in macosx-setup.sh
The libsmi url in macosx-setup.sh was dead, it's now an https site not ftp.
Also we were pulling down Lua 5.1.5 but should be pullsing down 5.2.3.
Lastly, macosx-setup cerates macosx-support-libs directory, which needs
to be ignored.

Change-Id: I79dc833dbc54fda8b237c5ada64f3564ce4f4cde
Reviewed-on: https://code.wireshark.org/review/360
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-02-25 17:28:04 +00:00
Guy Harris a7b1567247 Qt 5.2.1 - now with added native OS X toolbar!
To quote

	62feb088a3:dist/changes-5.2.1

"****************************************************************************
*                      Platform Specific Changes
*
****************************************************************************

	...

OS X
----

 - [QTBUG-34411] Implemented QMainWindow::setUnifiedTitleAndToolBarOnMac."

Also get rid of a commented-out setting of QT_VERSION to 5.1.1 while
we're at it.

Change-Id: I957fdfecb70954723cfd3160f40758f722dc56c8
Reviewed-on: https://code.wireshark.org/review/136
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-02-07 02:46:47 +00:00
Bill Meier 8ab9c55618 From Ville Skyttä: Spelling Fixes
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9591


svn path=/trunk/; revision=54387
2013-12-23 15:53:13 +00:00
Guy Harris 766a32779a Support building and installing both Qt and GTK+.
When forcing CFLAGS and CXXFLAGS, add -g and -O2; newer versions of
autoconf do so for GCC-compatible compilers (clang is GCC-compatible in
that sense), but only do so when those variables aren't forced.

svn path=/trunk/; revision=52939
2013-10-29 01:49:59 +00:00
Gerald Combs 360c4fba21 Add c-ares. Untested, but it *should* work.
svn path=/trunk/; revision=52936
2013-10-28 22:38:23 +00:00
Guy Harris cf1d4bbee1 Pass -sdk, not that it actually *works*.
svn path=/trunk/; revision=52782
2013-10-23 08:07:28 +00:00
Guy Harris 86b6093129 Default to GTK+ 3, not Qt, for now.
svn path=/trunk/; revision=52777
2013-10-23 01:40:33 +00:00
Guy Harris 9ca4360321 First cut at having this handle Qt. Adds a TOOLKIT variable that you
set to "qt", "gtk2", or "gtk3".

Work done on a machine with the command-line build tools, but not Full
Frontal Xcode, installed, so it couldn't build Qt, so it hasn't been
tested.  It *has* been fixed to complain in that case, rather than
letting the Qt build fail with a somewhat less useful message talking
about Xcode licensing.

svn path=/trunk/; revision=52776
2013-10-23 01:39:54 +00:00
Gerald Combs 4baec51d95 Add information about building Qt.
svn path=/trunk/; revision=52769
2013-10-22 16:48:04 +00:00
Jörg Mayer 9b5ab5c3e1 Add copyright (Michael, Joerg and Guy) and license (GPL2+)
svn path=/trunk/; revision=52035
2013-09-14 13:11:38 +00:00
Guy Harris 9becffea08 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, check to see
whether we *have* any SDKs and, if not, don't try to find the
appropriate SDK for the release and use it.

svn path=/trunk/; revision=51499
2013-08-23 23:27:07 +00:00
Guy Harris 1e9a678477 Put back missing space between --disable-cups and --without-libtiff.
Should fix bug 9073.

svn path=/trunk/; revision=51498
2013-08-23 22:59:16 +00:00
Guy Harris 53bec490e7 Put the GTK2 vs. GTK3 and autofoo vs. CMake options at the beginning,
before either of them are tested.

Put the code to get the OS major version number just before we first use
it.

Fix indentation.

svn path=/trunk/; revision=51054
2013-07-31 06:25:40 +00:00
Guy Harris dfce6feb08 If no target OS version was specified, default to the major version on
which we're running, so we *always* build against an SDK.  (The "10" in
"10.x.y" is not *really* part of the version number, so the "major
version" includes the "10" and the major version number following it.)

svn path=/trunk/; revision=51049
2013-07-31 05:00:28 +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
Guy Harris 1629a0948d When building for 10.6, force the build to use libpng12.
svn path=/trunk/; revision=50538
2013-07-12 19:19:09 +00:00
Guy Harris e51c046ed5 Fix uninstallation of Cairo - uninstall, don't install!
svn path=/trunk/; revision=50461
2013-07-09 09:54:19 +00:00
Guy Harris b4c719086d Fix missing $ before variable name.
Look at the lua-*-done file to get the version number of the version of
Lua we installed.

svn path=/trunk/; revision=50460
2013-07-09 09:31:45 +00:00
Guy Harris c72d5f08fb Fix the uninstall procedure for Lua - the man pages are installed into
/usr/local/man/man1, not /usr/local/man.

svn path=/trunk/; revision=50458
2013-07-09 08:47:05 +00:00
Guy Harris ff15b893d8 Use older versions of some libraries, and build 32-bit, when building
for Leopard.  Fix some issues that came up with the older versions.

We don't support building *on* Leopard - we check for that up front - so
eliminate some code to handle that.

When uninstalling, check for the installed version by looking at the
name of the -done file, so we don't have to trust the _VERSION settings.

We don't appear to need to build our own versions of libpng or pixman
when building *on* Snow Leopard *for* Leopard.

The libffi configure patch for GLib appears not to be necessary -
perhaps building and installing pkg-config *before* building GLib makes
it no longer necessary - and it doesn't work with older versions of
GLib, so don't apply it.

svn path=/trunk/; revision=50456
2013-07-09 04:41:34 +00:00
Guy Harris c5ca0c8b16 Download, build, and install pkg-config before GLib, courtesy of the
"use your internal version of GLib" flag for pkg-config's configure
script.  This simplifies things a little bit.

Fix an indentation error while we're at it.

svn path=/trunk/; revision=50453
2013-07-08 22:56:55 +00:00
Guy Harris 455f10f4c4 We need Cairo if we're building on 10.5 *or* if we're building *for*
10.5 on a later OS.

Fix the download path for libpng, and update the version to the
currently-available version.

svn path=/trunk/; revision=50425
2013-07-06 23:00:56 +00:00
Guy Harris 10b4dc9f4a Use consistent 4-space no-tab indentation.
svn path=/trunk/; revision=50421
2013-07-06 21:21:54 +00:00
Guy Harris e02563ceae Don't install the GNU autotools on Snow Leopard and earlier; they were
shipped with those versions of OS X, and I had some problems with the
newer versions on Snow Leopard (the Makefile was doing weird stuff that
caused build failures in wsutil, moving .Tlo files to .Plo files; I
didn't investigate futher).

svn path=/trunk/; revision=50418
2013-07-06 19:32:07 +00:00
Guy Harris 8e4a60214a Add a "-t <target>" flag to set the deployment target OS version; that
causes a -mmacosx-version-min flag to be used, to keep the compiler and
linker from using features not supported by that OS version, and causes
the support libraries to be built against the SDK for that OS version,
so they don't request library versions later than the one shipped with
that version.

svn path=/trunk/; revision=50402
2013-07-06 06:16:06 +00:00
Guy Harris 7fb1b4ab37 Get rid of extra blank line.
svn path=/trunk/; revision=50391
2013-07-05 23:27:10 +00:00
Guy Harris ef71eb1606 Add a -u flag to uninstall the support tools and libraries.
svn path=/trunk/; revision=50390
2013-07-05 23:26:15 +00:00
Guy Harris b1a91b434c LIBFFI_CFLAGS and LIBFFI_LIBS are defined only to suppress the attempt
to run pkg-config to get their values; they should be set equal to the
values that would be returned by pkg-config for libffi with the --cflags
and --libs arguments, respectively.  They should *NOT* include the
values of CFLAGS and LDFLAGS supplied in the environment; those should
be handled separately.

svn path=/trunk/; revision=50389
2013-07-05 23:19:58 +00:00
Guy Harris d798f70a96 Use xcrun --show-sdk-path to find out where the system include files are
hidden, rather than a "compile a program" hack.

svn path=/trunk/; revision=50383
2013-07-04 23:16:23 +00:00