forked from osmocom/wireshark
Make Perl optional.
Update our documentation, build configuration, and setup scripts to make Perl optional. Closes #18152.
This commit is contained in:
parent
a1c83a901b
commit
49dda8c71e
|
@ -1148,7 +1148,7 @@ find_package(GCRYPT "1.8.0" REQUIRED)
|
|||
reset_find_package(CARES)
|
||||
find_package(CARES "1.14.0" REQUIRED)
|
||||
find_package(LEX REQUIRED)
|
||||
find_package(Perl REQUIRED)
|
||||
find_package(Perl)
|
||||
find_package(PCRE2 REQUIRED)
|
||||
|
||||
if(CMAKE_VERSION VERSION_LESS "3.12")
|
||||
|
|
10
README.md
10
README.md
|
@ -46,11 +46,13 @@ operating system. This is the case for Windows XP, which is supported by
|
|||
Wireshark 1.10 and earlier. In other cases the standard package for
|
||||
Wireshark might simply be old. This is the case for Solaris and HP-UX.
|
||||
|
||||
Both Perl and Python 3 are needed, the former for building the man
|
||||
pages.
|
||||
Python 3 is needed to build Wireshark. AsciiDoctor is required to build
|
||||
the documentation, including the man pages. Perl and flex are required
|
||||
to generate some of the source code.
|
||||
|
||||
You must therefore install Perl, Python, GNU "make", and "flex" (vanilla
|
||||
"lex" won't work) on systems that lack them.
|
||||
You must therefore install Python 3, AsciiDoctor, and GNU "flex" (vanilla
|
||||
"lex" won't work) on systems that lack them. You might need to install
|
||||
Perl as well.
|
||||
|
||||
Full installation instructions can be found in the INSTALL file and in the
|
||||
Developer's Guide at https://www.wireshark.org/docs/wsdg_html_chunked/
|
||||
|
|
|
@ -16,7 +16,6 @@ The following must be installed in order to build Wireshark:
|
|||
|
||||
* a C compiler and a C++ compiler;
|
||||
* the Flex lexical analyzer;
|
||||
* Perl;
|
||||
* Python 3;
|
||||
* CMake;
|
||||
* several required libraries.
|
||||
|
@ -26,6 +25,8 @@ those must be installed.
|
|||
|
||||
To build the manual pages, Developer's Guide and User's Guide, Asciidoctor, Xsltproc, and DocBook must be installed.
|
||||
|
||||
Perl is required to generate some code and run some code analysis checks.
|
||||
|
||||
Some features of Wireshark require additional libraries to be installed.
|
||||
|
||||
For Debian, and for Linux distributions based on Debian, such as Ubuntu,
|
||||
|
@ -234,9 +235,9 @@ You can install Chocolatey packages using the command `choco install` (or its sh
|
|||
----
|
||||
> rem Flex is required.
|
||||
> choco install -y winflexbison3
|
||||
> rem Git, CMake, Perl, Python, etc are also required, but can be installed
|
||||
> rem Git, CMake, Python, etc are also required, but can be installed
|
||||
> rem via their respective installation packages.
|
||||
> choco install -y git cmake strawberryperl python3
|
||||
> choco install -y git cmake python3
|
||||
----
|
||||
|
||||
|
||||
|
@ -333,22 +334,6 @@ Chocolatey will likely install Python in one of the locations above, or possibly
|
|||
// winget has Python 3 packages.
|
||||
// https://github.com/microsoft/winget-pkgs/tree/master/manifests/p/Python/Python/3
|
||||
|
||||
==== Install Perl
|
||||
|
||||
Get a Perl installer from http://strawberryperl.com/ or
|
||||
https://www.activestate.com/ and install Perl into the default location.
|
||||
|
||||
Alternatively you can install Perl using Chocolatey:
|
||||
|
||||
----
|
||||
PS$> choco install -y strawberryperl
|
||||
# ...or...
|
||||
PS$> choco install -y activeperl
|
||||
----
|
||||
|
||||
// winget has StrawberryPerl.
|
||||
// https://github.com/microsoft/winget-pkgs/tree/master/manifests/s/StrawberryPerl/StrawberryPerl
|
||||
|
||||
[#ChSetupGit]
|
||||
|
||||
==== Install Git
|
||||
|
@ -464,6 +449,25 @@ Chocolatey ensures win_flex.exe is on your path.
|
|||
|
||||
// winget has no bison package.
|
||||
|
||||
==== Optional: Install Perl
|
||||
|
||||
If needed you can get a Perl installer from
|
||||
http://strawberryperl.com/
|
||||
or
|
||||
https://www.activestate.com/
|
||||
and install Perl into the default location.
|
||||
|
||||
Alternatively you can install Perl using Chocolatey:
|
||||
|
||||
----
|
||||
PS$> choco install -y strawberryperl
|
||||
# ...or...
|
||||
PS$> choco install -y activeperl
|
||||
----
|
||||
|
||||
// winget has StrawberryPerl.
|
||||
// https://github.com/microsoft/winget-pkgs/tree/master/manifests/s/StrawberryPerl/StrawberryPerl
|
||||
|
||||
==== Install and Prepare Sources
|
||||
|
||||
[TIP]
|
||||
|
|
|
@ -519,7 +519,7 @@ The Ruby and Java flavors can be used to build Wireshark’s documentation, but
|
|||
The guides and release notes were originally written in DocBook (hence the directory name).
|
||||
They were later converted to AsciiDoc and then migrated to Asciidoctor.
|
||||
The man pages were originally in Perl’s POD (Plain Old Documentation) format and were later converted to Asciidoctor.
|
||||
We currently use Asciidoctor’s modern (>= 1.5.0) syntax.
|
||||
We use Asciidoctor’s modern (>= 1.5.0) syntax.
|
||||
|
||||
PDF output requires Asciidoctor’s PDF backend.
|
||||
It is included with AsciidoctorJ but _not_ with Asciidoctor.
|
||||
|
@ -698,95 +698,6 @@ Python 3.5.1
|
|||
|
||||
Your version string may vary of course.
|
||||
|
||||
[#ChToolsPerl]
|
||||
|
||||
=== Perl
|
||||
|
||||
Perl is an interpreted programming language. The
|
||||
homepage of the Perl project is
|
||||
https://www.perl.org[]. Perl is used to convert
|
||||
various text files into usable source code. Perl version 5.6
|
||||
and above should work fine.
|
||||
|
||||
[#ChToolsUnixPerl]
|
||||
|
||||
[discrete]
|
||||
==== Unix
|
||||
|
||||
Perl is available for most UNIX and UNIX-like platforms. If perl isn't
|
||||
already installed or available as a package for your platform, you can
|
||||
get it at https://www.perl.org/[].
|
||||
|
||||
After correct installation, typing at the
|
||||
bash command line prompt:
|
||||
|
||||
[source,sh]
|
||||
----
|
||||
$ perl --version
|
||||
----
|
||||
|
||||
should result in something like:
|
||||
|
||||
----
|
||||
This is perl 5, version 26, subversion 0 (v5.26.0) built for x86_64-linux-gnu-thread-multi
|
||||
(with 62 registered patches, see perl -V for more detail)
|
||||
|
||||
Copyright 1987-2017, Larry Wall
|
||||
|
||||
Perl may be copied only under the terms of either the Artistic License or the
|
||||
GNU General Public License, which may be found in the Perl 5 source kit.
|
||||
|
||||
Complete documentation for Perl, including FAQ lists, should be found on
|
||||
this system using "man perl" or "perldoc perl". If you have access to the
|
||||
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
|
||||
----
|
||||
|
||||
However, the version string may vary.
|
||||
|
||||
[#ChToolsWindowsPerl]
|
||||
|
||||
[discrete]
|
||||
==== Windows
|
||||
|
||||
A native Windows Perl package can be obtained from
|
||||
http://strawberryperl.com/[Strawberry Perl] or
|
||||
https://www.activestate.com[Active State]. The installation should be
|
||||
straightforward.
|
||||
|
||||
You may also use Chocolatey to install either package:
|
||||
|
||||
----
|
||||
PS:\> choco install strawberryperl
|
||||
----
|
||||
|
||||
or
|
||||
|
||||
----
|
||||
PS:\> choco install activeperl
|
||||
----
|
||||
|
||||
After correct installation, typing at the command
|
||||
line prompt (cmd.exe):
|
||||
|
||||
----
|
||||
> perl -v
|
||||
----
|
||||
|
||||
should result in something like:
|
||||
|
||||
----
|
||||
This is perl, v5.8.0 built for MSWin32-x86-multi-thread
|
||||
(with 1 registered patch, see perl -V for more detail)
|
||||
|
||||
Copyright 1987-2002, Larry Wall
|
||||
|
||||
Binary build 805 provided by ActiveState Corp. http://www.ActiveState.com
|
||||
Built 18:08:02 Feb 4 2003
|
||||
...
|
||||
----
|
||||
|
||||
However, the version string may vary.
|
||||
|
||||
[#ChToolsFlex]
|
||||
|
||||
=== Flex
|
||||
|
@ -931,6 +842,93 @@ https://git-scm.com/downloads/guis[] for details.
|
|||
// [[ChToolsUnixGitGUI]]
|
||||
// XXX Add Gui client section
|
||||
|
||||
[#ChToolsPerl]
|
||||
|
||||
=== Perl (Optional)
|
||||
|
||||
https://www.perl.org[Perl] is an interpreted programming language.
|
||||
Perl is used to convert various text files into usable source code and for various source code checks.
|
||||
Perl version 5.6 and above should work fine.
|
||||
|
||||
[#ChToolsUnixPerl]
|
||||
|
||||
[discrete]
|
||||
==== Unix
|
||||
|
||||
Perl is available for most UNIX and UNIX-like platforms. If it isn't
|
||||
already installed or available as a package for your platform, you can
|
||||
get it at https://www.perl.org/[].
|
||||
|
||||
After correct installation, typing at the
|
||||
bash command line prompt:
|
||||
|
||||
[source,sh]
|
||||
----
|
||||
$ perl --version
|
||||
----
|
||||
|
||||
should result in something like:
|
||||
|
||||
----
|
||||
This is perl 5, version 26, subversion 0 (v5.26.0) built for x86_64-linux-gnu-thread-multi
|
||||
(with 62 registered patches, see perl -V for more detail)
|
||||
|
||||
Copyright 1987-2017, Larry Wall
|
||||
|
||||
Perl may be copied only under the terms of either the Artistic License or the
|
||||
GNU General Public License, which may be found in the Perl 5 source kit.
|
||||
|
||||
Complete documentation for Perl, including FAQ lists, should be found on
|
||||
this system using "man perl" or "perldoc perl". If you have access to the
|
||||
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
|
||||
----
|
||||
|
||||
However, the version string may vary.
|
||||
|
||||
[#ChToolsWindowsPerl]
|
||||
|
||||
[discrete]
|
||||
==== Windows
|
||||
|
||||
A native Windows Perl package can be obtained from
|
||||
http://strawberryperl.com/[Strawberry Perl] or
|
||||
https://www.activestate.com[Active State]. The installation should be
|
||||
straightforward.
|
||||
|
||||
You may also use Chocolatey to install either package:
|
||||
|
||||
----
|
||||
PS:\> choco install strawberryperl
|
||||
----
|
||||
|
||||
or
|
||||
|
||||
----
|
||||
PS:\> choco install activeperl
|
||||
----
|
||||
|
||||
After correct installation, typing at the command
|
||||
line prompt (cmd.exe):
|
||||
|
||||
----
|
||||
> perl -v
|
||||
----
|
||||
|
||||
should result in something like:
|
||||
|
||||
----
|
||||
This is perl, v5.8.0 built for MSWin32-x86-multi-thread
|
||||
(with 1 registered patch, see perl -V for more detail)
|
||||
|
||||
Copyright 1987-2002, Larry Wall
|
||||
|
||||
Binary build 805 provided by ActiveState Corp. http://www.ActiveState.com
|
||||
Built 18:08:02 Feb 4 2003
|
||||
...
|
||||
----
|
||||
|
||||
However, the version string may vary.
|
||||
|
||||
[#ChToolsPatch]
|
||||
|
||||
=== patch (Optional)
|
||||
|
|
|
@ -52,7 +52,6 @@ BASIC_LIST="cmake \
|
|||
glib-dev \
|
||||
libgcrypt-dev \
|
||||
flex \
|
||||
perl \
|
||||
tiff-dev \
|
||||
c-ares-dev \
|
||||
pcre2-dev \
|
||||
|
@ -81,6 +80,7 @@ ADDITIONAL_LIST="
|
|||
minizip-dev \
|
||||
speexdsp-dev \
|
||||
brotli-dev \
|
||||
perl \
|
||||
"
|
||||
|
||||
# Uncomment to add PNG compression utilities used by compress-pngs:
|
||||
|
|
|
@ -81,7 +81,6 @@ BASIC_LIST="base-devel \
|
|||
minizip \
|
||||
ninja \
|
||||
pcre2 \
|
||||
perl \
|
||||
python \
|
||||
qt5-base \
|
||||
qt5-multimedia \
|
||||
|
@ -98,7 +97,8 @@ ADDITIONAL_LIST="asciidoctor \
|
|||
docbook-xml \
|
||||
docbook-xsl \
|
||||
doxygen \
|
||||
libxslt"
|
||||
libxslt \
|
||||
perl"
|
||||
|
||||
TESTDEPS_LIST="python-pytest \
|
||||
python-pytest-xdist"
|
||||
|
|
|
@ -72,7 +72,6 @@ BASIC_LIST="gcc \
|
|||
flex \
|
||||
make \
|
||||
python3 \
|
||||
perl \
|
||||
libgcrypt-dev"
|
||||
|
||||
ADDITIONAL_LIST="libnl-3-dev \
|
||||
|
@ -91,6 +90,7 @@ ADDITIONAL_LIST="libnl-3-dev \
|
|||
libminizip-dev \
|
||||
git \
|
||||
ninja-build \
|
||||
perl \
|
||||
xsltproc \
|
||||
ccache \
|
||||
libspeexdsp-dev"
|
||||
|
|
|
@ -72,7 +72,6 @@ BASIC_LIST="base-devel \
|
|||
mingw-w64-x86_64-ninja \
|
||||
mingw-w64-x86_64-opus \
|
||||
mingw-w64-x86_64-pcre2 \
|
||||
mingw-w64-x86_64-perl \
|
||||
mingw-w64-x86_64-python \
|
||||
mingw-w64-x86_64-qt5-base \
|
||||
mingw-w64-x86_64-qt5-multimedia \
|
||||
|
@ -88,6 +87,7 @@ BASIC_LIST="base-devel \
|
|||
ADDITIONAL_LIST="mingw-w64-x86_64-asciidoctor \
|
||||
mingw-w64-x86_64-ccache \
|
||||
mingw-w64-x86_64-doxygen \
|
||||
mingw-w64-x86_64-perl \
|
||||
mingw-w64-x86_64-libxslt"
|
||||
|
||||
TESTDEPS_LIST="mingw-w64-x86_64-python-pytest \
|
||||
|
|
|
@ -55,7 +55,6 @@ BASIC_LIST="cmake \
|
|||
gcc-c++ \
|
||||
flex \
|
||||
python3 \
|
||||
perl \
|
||||
desktop-file-utils \
|
||||
git \
|
||||
glib2-devel \
|
||||
|
@ -72,6 +71,7 @@ ADDITIONAL_LIST="libcap-devel \
|
|||
minizip-devel \
|
||||
lz4 \
|
||||
libxml2-devel \
|
||||
perl \
|
||||
spandsp-devel \
|
||||
systemd-devel"
|
||||
|
||||
|
|
Loading…
Reference in New Issue