aboutsummaryrefslogtreecommitdiffstats
path: root/packaging/rpm
AgeCommit message (Collapse)AuthorFilesLines
2023-08-30Adding HTTP/3 dissection to Wireshark.Anders Broman1-0/+5
This is a copy of MR #9330 all code and credit to Omer Shapira.
2023-06-14Update packages for new CMake config pathJoão Valverde1-3/+4
2023-05-25rpm: don't overwrite user changes to diameter/Custom.xml on package upgradesRadek Liska1-0/+2
2023-05-14CMake: Use components to install doc guidesJoão Valverde1-6/+1
Use CMake components to install the guides, instead of a custom target and script. We have to inconveniently place the install() command in the top-level CMakeLists.txt file, instead of docbook/CMakeLists.txt, so that we can use cmake --install <builddir> --component UserGuide insead of cmake --install <builddir>/docbook --component UserGuide so that it can be used in the wireshark.spec file without too many contortions.
2023-01-21rpm: Update spec for latest dependenciesJohn Thacker1-85/+30
SpeexDSP is now required. Update the required cmake and glib versions. Our CMake build process now expects a C++ compiler to always be present, so require it even if not building the GUI. Only default to Qt 6 on distributions where we know we have it, otherwise default to Qt 5 for now. Update the required RPM version to 4.13 (which all distributions that can currently build have) to ensure we have Boolean dependencies. Use Boolean dependencies instead of checking the distribution, hopefully to improve building on various other RPM-based distributions. Redefine the cmake_install macro on SUSE to what is used on RH/Fedora. The default SUSE macro calls the builder (make or ninja) insted of cmake --install, which makes it difficult to pass options. Remove tests and workarounds for RHEL 7, and SUSE < 15.2, since those distributions are too old to build anyway. Remove a workaround for an old broken librotli-devel package in SUSE that's been long since fixed.
2023-01-21RPM: Try to fix build on openSUSEJoão Valverde1-5/+0
SUSE defines %cmake_install as something other than cmake install.
2023-01-21RPM: Fix breakage because of $docdirJoão Valverde1-1/+2
%docdir only marks a directory as containing documentation. It also needs to be included.
2023-01-19Install PDML files to DOCDIRJoão Valverde1-5/+0
Add README because this stuff is somewhat obscure and move XSLT file to DOCDIR because it is not used by wireshark directly.
2023-01-19Install documentation (HTML manuals) to DOCDIRJoão Valverde1-4/+1
Install documentation to DOCDIR instead of DATADIR. The code must be fixed to open the Help URLs from this new path. This only affects Unix-like FHS platforms. Windows installation does its own thing. Needs testing with macOS packaging.
2023-01-19RPM: Remove some unnecessary doc filesJoão Valverde1-1/+1
INSTALL and READMEs for all the different platforms are totally unnecessary and arguably wrong. ChangeLog is not useful either IMO.
2023-01-18RPM: Fix header installationJoão Valverde1-1/+4
2022-12-06rpm packaging: Add .el7, .fc38, ...Alexis Gryta1-1/+1
2022-08-25RPM: Add support for Qt6 and Fedora LinuxJoão Valverde1-6/+22
2022-08-22CMake+etc: Enable Qt6 by default for Unix buildsJoão Valverde1-1/+1
Linux builds were left behind on the Qt transition, presumably because our Ubuntu CI image does not support Qt6. Enable Qt6 by default and explicitly disable it for slower or more conservative Linux distros. Drop experimental status for Qt6, because we are using it to build official Windows and macOS releases.
2022-07-28packaging: EPEL 8 has asciidoctor nowJohn Thacker1-7/+3
rubygems-asciidoctor was released 2022-05-18 for EPEL 8 ( https://bugzilla.redhat.com/show_bug.cgi?id=1820896 ) so we don't need to special case it for RHEL/Centos 8.
2022-07-27packaging: Add Qt5Concurrent to SUSE BuildRequiresJohn Thacker1-0/+1
Qt5Concurrent is needed since 0438fca96b11bd299d92aa59d2d9e66e769d329b Add it to the spec file requirements, since it's a separate package on openSUSE.
2022-07-24rpm: Disable build terminating on double dash versions for all distrosJohn Thacker1-6/+7
RPM 4.11.2 introduced build failures on "wrong" version formatting, including everything with a double dash. This broke a lot of packages, so many distributions turned it off by default, but some don't. Make sure it's off, because build from git versions have dashes. Fixes the Rocky 9 CI build. Note that we try to work around this by replacing the dashes in our version number with underscores, but RPM will still complain about an invalid version in the dependency it generates from our pkg-config file.
2022-07-24More Perl cleanup.Gerald Combs1-1/+0
Remove perl from INSTALL and our RPM spec. [skip ci]
2022-06-07CMake: Deduplicate some version variables.Gerald Combs1-1/+1
Use PROJECT_VERSION instead of VERSION. Prepend "PROJECT_" or "LOG_PROJECT_" as needed to other variables. Remove the leftover unused variables.
2022-04-25rpm: Support for building with clang on FedoraJohn Thacker1-1/+18
Fedora now supports rpm options to build with clang as the compiler https://docs.fedoraproject.org/en-US/packaging-guidelines/#compiler
2022-04-25rpm: Specfile cleanupJohn Thacker1-21/+18
Fix some deprecated and obsolete syntax from the rpm specfile that modern distributions complain about: Don't specify the BuildRoot Don't have a %clean section Don't remove the BuildRoot at the start of %install Don't repeat Name in summary Version the Obsoletes Have a %build section Escape macros in changelog Remove comment about user setting _smp_mflags since rpm does that automatically better now Be consistent about spaces and tabs (tabs are used)
2022-04-24rpm: Fix SUSE 15.1 builddir issue on makeJohn Thacker1-6/+10
SUSE 15.1 moved to out of source builds, and sets a builddir appropriately, but it makes some decisions about automatically entering the build dir when building or installing that are handled by the distribution's various Make and Ninja macros differently than other distributions and later SUSE releases. Work around it, so that both ninja and make builds work on SUSE 15.1 (both OpenSUSE and SLES) Related to #17910
2022-04-23rpm: Update glib and cmake BuildRequirementsJohn Thacker1-11/+2
Update glib and cmake requirements in the rpm spec, and also remove some RHEL 7 conditions associated with them, since the versions of glib and cmake in RHEL 7 are too old to be supported.
2022-01-17rpm: RHEL 8 update macrosJohn Thacker1-14/+12
RHEL 8 and derivatives have supported the various CMake macros since 8.4 (June 2021, see https://access.redhat.com/errata/RHEA-2021:1747) Use them there as well, so that we have a unified spec file for all recent distributions (with the older RHEL/CentOS 7 and SLES 12 being the only exceptions.)
2022-01-17rpm: expand commentJohn Thacker1-1/+3
Be a bit more precise about what's wrong with bindir on SUSE (when prefix is /usr/local or anything else.)
2022-01-17rpm: Fix up pathsJohn Thacker1-6/+10
Fedora and SUSE 15 use out of source builds by default, but store the build directory in differently named macros. Define one macro for the build directory that has the appropriate value (which will be "." for any distribution that doesn't have either macro, and thus presumably does in-source builds.) This fixes building and installing the guides with any of the supported distributions. Also, since RHEL/CentOS 7 doesn't have a special CMake macro, it needs to set the install prefix when calling cmake. Also, fix a comment warning by escaping the percent sign.
2022-01-16rpm packaging: Add build requirements for the guidesJohn Thacker1-0/+10
The HTML guides require xsltproc and the docbook xsl stylesheets in order to be generated.
2022-01-08packaging: Add RPM build dependencies for ninja, asciidoctorJohn Thacker1-5/+17
If we're building with ninja, we need to require it. While CentOS/RHEL/Rocky 8 doesn't have a asciidoctor package (so we install it separately), we can add a BuildRequires on the file that RubyGems creates for other rpm based distributions.
2022-01-07packaging: Let SUSE build with /usr prefixJohn Thacker1-2/+4
There's a couple places where /usr/local is hardcoded in the spec file that need to be replaced with %{_prefix} in order for RPMs to build correctly on OpenSUSE with prefixes other than /usr/local
2022-01-06packaging: Fix RPM -qt subpackage requiresJohn Thacker1-3/+4
The BuildRequires and Requires for the -qt subpackage need to go into its %package section, not its %description section. The dependencies were not being enforced, but instead being added to the description of the GUI package.
2022-01-05packaging: Bump RPM glib2 version to 2.38John Thacker1-1/+1
We require glib2 version 2.38 now, increase the version requirement in the RPM spec file to match.
2022-01-05packaging: Remove unnecessary RequiresJohn Thacker1-58/+8
Automatic dependency generation has been around since RPM 4.0 (September 2000). The BuildRequires are sufficient for all of these; the automatic dependences for the .so files works and are superior as they are versioned. Red Hat and SUSE both recommend using automatic dependencies and avoiding unnecessary Requires in spec files: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_explicit_requires https://en.opensuse.org/openSUSE:Package_dependencies
2022-01-04packaging: ENABLE_RPATH_ORIGIN on Fedora RPM buildJohn Thacker1-0/+6
Fedora Linux recently turned on some hardcore RPATH hardening that causes RPM build to fail with a wide variety of prefixes unless $ORIGIN is enabled. It builds fine with /usr as the prefix because in that case we disable the RPATH. In the long run perhaps we should have the rpm-package target use the standard prefix of /usr instead of the CMAKE_INSTALL_PREFIX, but even so we want the spec file to work if /usr/local is set as the prefix. Fix #17830
2022-01-03CMake: Use more consistent naming for optionsJoão Valverde1-1/+1
Having some options use DISABLE_ and others ENABLE_ is inconsistent and difficult to remember. Use ENABLE_ instead consistently. Frame-larger-than remains an exception.
2021-10-01Try to fix RPM packaging.Gerald Combs1-1/+7
Asciidoctor is now required for packaging. Try to make sure it's installed on CentOS 8 and openSUSE 15.2. Note that CentOS 8 doesn't have an Asciidoctor package, which complicates our SPEC.
2021-10-01Docs+Packaging: Convert our man pages to Asciidoctor.Gerald Combs1-3/+0
Convert doc/*.pod to Asciidoctor. This: * Means we use the same markup for our man pages, the guides, and release notes. * Lets us add versions to our man pages. * Gives us more formatting options, e.g. AsciiDoc supports `commands`, nested lists and makes it easy to include version information. The manpage backend doesn't seem to support tables very well, unfortunately. Convert our CMake configuration to produce *roff and html man pages using Asciidoctor. Add a "manarg" block macro which makes our synopses wrap correctly. Similar to the release notes, guides, and FAQ, if Asciidoctor isn't found the man pages won't be generated or installed. Move Asciidoctor to the list of package build dependencies in various places. This commit includes the conversion script (pod2adoc.py), which will be removed later. Line count sanity check: Man page .pod .adoc androiddump 260 280 asn2deb 93 105 capinfos 401 471 captype 54 55 ciscodump 241 269 dftest 42 42 dpauxmon 153 169 dumpcap 464 534 editcap 528 583 etwdump 136 156 extcap 157 181 idl2deb 91 103 idl2wrs 120 100 mergecap 206 207 mmdbresolve 75 75 randpkt 107 111 randpktdump 158 184 rawshark 558 610 reordercap 76 78 sdjournal 145 157 sshdump 272 302 text2pcap 274 312 tshark 2135 2360 udpdump 133 151 wireshark-filter 486 479 wireshark 2967 3420
2021-07-09Rename version.h to be more descriptiveJoão Valverde1-1/+0
Version.h is too generic. This is specific to VCSVERSION and that should be made more obvious and discoverable.
2021-03-30RPM: Don't install HTML manuals twiceJoão Valverde1-4/+9
Fixes e4d4814168405c1eaea94ebf75883e7b166b9eba.
2021-03-29RPM: Update the HTML documentation location.Gerald Combs1-2/+5
2021-03-06RPM: Fix build using the Unix Makefiles generatorJoão Valverde1-3/+3
2021-01-07rpm: disable double dash check on fedora.Dario Lombardo1-0/+6
Standard naming convention in Wireshark generates a version that make the rpm build fail on Fedora. Since we've not evidence that this happens on other platforms, just disable on that one.
2020-12-12RPM: Try to fix openSUSE packaging.Gerald Combs1-1/+1
Try to fix + /usr/lib/rpm/suse_update_desktop_file.sh wireshark ERROR: suse_update_desktop_file: unable to find wireshark
2020-12-12rpm: rename metadataPeter Eszlari1-2/+2
2020-12-10Linux: rename metadata according to specPeter Eszlari1-6/+6
https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Application.html https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s02.html#desktop-file-id
2020-11-30wiretap: Convert ascend.y to Lemon.Gerald Combs1-1/+3
Convert wiretap/ascend.y.in from Bison/YACC to Lemon and rename it to wiretap/ascend_parser.lemon. Tighten up some of our scanning and parsing. Make the indentation in it and related files consistent. Aside from the recent IPv4 fragment offset changes, this produces identical output to the 3.4 branch for the Ascend trace files I have here. Remove the comment about supporting other commands. Another timeline might have an Ascend that successfully pivoted to DSL or 15625B+1D gigabit ISDN, but this one has neither. This was our last/only Bison/YACC file, so remove Bison/YACC as a development and packaging dependency and remove references to it from the documentation.
2020-11-05RPM+CI: Update and fix for Fedora 33, CentOS 8, OpenSUSE Leap 15.2John Thacker1-18/+37
Re-enable Fedora build and add CentOS 8 and OpenSUSE 15.2 builds. Fedora 33 does out of build tree cmake builds and needs spec file changes. CentOS 8 has some changes with cmake and other packages that are similar to older Fedora, and needs extra repositories enabled to get -devel packages (still missing -devel for some optional libraries). OpenSUSE Leap 15.2 also has some changes needed to build. Note that OpenSUSE Leap 15.1 is EOL at the end of November 2020. Fixes #16971
2020-10-28CI+RPM: Disable the Fedora build for now.Gerald Combs1-0/+6
Fedora 33's RPM environent added changes that break CMake. Disable it for now.
2020-10-03RTP: opus playbackLin Sun1-0/+9
It's possible to play opus payload with libopus (https://opus-codec.org/). Closes #16882. Helped-by: Pascal Quantin <pascal.quantin@gmail.com> Signed-off-by: Lin Sun <lin.sun@zoom.us> Signed-off-by: Yuanzhi Li <ryanlee@mail.ustc.edu.cn>
2020-02-11Debian+RPM: Require QtSVG.Gerald Combs1-0/+2
Although we don't depend on any of Qt's SVG classes directly, we do use SVG icons in Preferences → Appearance → Language and QIcon loads its SVG engine dynamically. If it's not present Wireshark will still run, but the user won't see any flag icons. Require QtSVG in the Debian and RPM packaging. It's not that large (~ 400k here on Ubuntu 18.04) and ensures that we have a uniform user experience across platforms. In this particular case, if the user experience happens to be "Wireshark's UI is in a language I don't understand" the little flags can come in handy. Change-Id: If3c2e8a6040967353dbc462ee475ef12514b25f9 Reviewed-on: https://code.wireshark.org/review/36037 Reviewed-by: Peter Wu <peter@lekensteyn.nl> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2020-02-09RPM: fix missing qt5-linguist dependency, simplify installed packagesPeter Wu1-0/+2
Remove unnecessary Qt5SVG build dependency. Do not install Qt4 qt-devel. qt5-qtbase-devel is big, try to avoid pulling unnecessary deps. Change-Id: Id289bea10ea89de6b7a3ea77996d861ff7354560 Reviewed-on: https://code.wireshark.org/review/36058 Reviewed-by: Dario Lombardo <lomato@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>