Commit Graph

101 Commits

Author SHA1 Message Date
Moritz Bunkus
ca4a6a99f4
bump version number, set release code name 2023-07-02 22:01:50 +02:00
Moritz Bunkus
eda44d8ad4
bump version number, set release code name 2023-06-04 16:36:45 +02:00
Moritz Bunkus
1c68a5841f
GUI: use external resource file for Qt resources
The resource file has reached a size at which the C++ compiler
exhausts available virtual memory on some 32-bit architectures.

On Windows & macOS the GUI will look for the file in
`<folder_with_executables>/data/qt_resources.rcc`, and in the
directory set with `configure`'s `--datadir` parameter on other
systems (which usually means `/usr/share/mkvtoolnix`). The `install`
build system commands installs it into that folder.
2023-05-18 21:37:34 +02:00
Moritz Bunkus
f043f622d1
packaging: fix guessing distro by parsing /etc/lsb-release 2023-04-30 18:32:19 +02:00
Moritz Bunkus
b8beb2e72a
packaging: map LinuxMint Vera (21.1) & Victoria (21.2) to Vanessa (21) 2023-04-30 18:32:00 +02:00
Moritz Bunkus
346a4e0517
bump version number, set release code name 2023-04-30 12:26:55 +02:00
Moritz Bunkus
8d4bb8fcf8
deb packaging: make generated rules file executable 2023-04-07 00:51:06 +02:00
Moritz Bunkus
4518388fb6
deb packaging: fix ERB syntax 2023-04-07 00:02:20 +02:00
Moritz Bunkus
ac3804b031
deb packaging: build with Qt6 on LinuxMint 21 2023-04-06 23:58:17 +02:00
Moritz Bunkus
f801d105cc
deb packaging: create_files.rb: detect LinuxMint 21 from sources.list 2023-04-06 23:57:41 +02:00
Moritz Bunkus
f00fcc9090
deb packaging: create_files.rb: detect Ubuntu 22.10 from sources.list 2023-04-06 23:56:48 +02:00
Moritz Bunkus
510670a40d
deb packaging: only use clang for compilation on Debian 11, not 12 2023-04-06 23:53:10 +02:00
Moritz Bunkus
481c4ee405
deb packaging: build with Qt6 on Debian 12 2023-04-06 23:44:08 +02:00
Moritz Bunkus
f6603a04f5
bump version number, set release code name 2023-03-26 18:44:40 +02:00
Moritz Bunkus
13ebdc5500
bump version number, set release code name 2023-02-12 16:53:48 +01:00
Moritz Bunkus
8a2da1a252
all: switch back to requiring & using Boost's file system library
gcc's implementation of the C++17 file system library doesn't support
UNC paths of style `\\?\…` on Windows. There doesn't seem to be any
progress towards implementing support for it.

Fixes #3058. See also #2916.
2023-01-14 17:49:45 +01:00
Moritz Bunkus
63ebac6a56
bump version number, set release code name 2023-01-02 19:29:27 +01:00
Moritz Bunkus
d5cfc58eb0
bump version number, set release code name 2022-11-13 12:55:13 +01:00
Moritz Bunkus
25a7f5b8d1
bump version number, set release code name 2022-10-09 13:04:17 +02:00
Moritz Bunkus
426926456c
bump version number, set release code name 2022-10-08 15:19:34 +02:00
Moritz Bunkus
e3c3fff6fb
bump version number, set release codename 2022-08-14 09:20:40 +02:00
Moritz Bunkus
0b91f3c4b6
bump version number, set release codename 2022-07-09 18:19:14 +02:00
Moritz Bunkus
9979f76803
Debian packaging: create rules & control with distro/release-specific values
For Ubuntu 22.04 and later the GUI will be built with Qt 6 instead of
Qt 5 due to severe issues with 22.04, Qt 5 and high DPI displays. See
issue #3358 for more information.

Unfortunately Debian's package tooling isn't powerful enough to
express complex dependencies, and it cannot express things based on
the distribution & version the package is built for. The packaging for
Qt 6 requires different libraries than the packaging for Qt 5,
obviously.

The only thing one could do in a single `control` file is using ORed
dependencies such as `libqt6svg6 | libqt5svg5`, but that can lead to
situations where the user has `libqt5svg5` installed, doesn't have
`libqt6svg6` installed, and then MKVToolNix built with Qt 6 will
install just fine but all the icons will be missing as it cannot load
the SVG plugin dynamically.

Therefore the `control` & `rules` files are now built from templates,
and a Ruby script called `packaging/debian/create_files.rb` is used to
create the files from their templates. The user can specify the
distribution & version to create for with command line arguments. If
not specified, the script will attempt to guess the distribution &
version it's running on.

Only Debian ≥ 10 & Ubuntu ≥ 20.04 are supported, same as before.
2022-05-29 17:07:13 +02:00
Moritz Bunkus
b25b097dfb
bump version number, set release code name 2022-05-22 20:16:02 +02:00
Moritz Bunkus
e6bca6745d
Debian rules: build with internal fmt on Debian 11 armhf
For some reason Debian's own fmt throws an exception on the call of
`fmt::format("{}", fmt::join(…))` on the armhf architecture, while the
same code works fine on Debian 11 on other architectures (i386,
amd64). The same code works fine on armhf with Debian 10's fmt & my
own bundled version, so just the latter one.
2022-05-22 19:59:59 +02:00
Moritz Bunkus
0e34984bae
packaging: use bundled drake 2022-04-11 21:39:49 +02:00
Moritz Bunkus
0d9fe1dae3
bump version number, set release code name 2022-04-10 15:54:33 +02:00
Moritz Bunkus
7e0f170c1a
GUI: use Opus-in-WebM variants of the default GUI job sounds
My previous statement that WAV was the only widely supported format
seems to have been wrong, somewhat. WebM seems to be fine, too.
2022-04-09 13:58:28 +02:00
Moritz Bunkus
14619edb8f
bump version number, set release code name 2022-03-13 13:54:07 +01:00
Moritz Bunkus
873e9d6f4a
only build the mkvtoolnix wrapper binary if enabled via configure 2022-03-13 10:43:57 +01:00
Moritz Bunkus
f64638b47c
Debian rules: remove mkvtoolnix binary & man pages as they aren't packaged 2022-03-12 23:41:42 +01:00
Moritz Bunkus
3d2909e4ad
bump version number, set release codename 2022-02-06 13:32:17 +01:00
Moritz Bunkus
61c4802798
bump version number, set release codename 2021-12-27 12:04:12 +01:00
Moritz Bunkus
0602c3985e
bump version number, set release codename 2021-11-14 10:38:04 +01:00
Moritz Bunkus
9146837cd0
bump version number, set release codename 2021-10-10 12:35:17 +02:00
Moritz Bunkus
e1cfea7851
packaging: include bluray_dump, ebml_validator, hevcc_dump, xvc_dump in all packages 2021-09-05 11:07:44 +02:00
Moritz Bunkus
d596c62bfd
bump version number, set release codename 2021-08-30 16:11:50 +02:00
Moritz Bunkus
0856b3a6bd
bump version number, set release codename 2021-07-31 14:25:23 +02:00
Moritz Bunkus
8d08c82c6e
bump version number, set release code name 2021-07-10 12:31:42 +02:00
Moritz Bunkus
4342cc89c3
Debian packaging: compile with clang on Debian 11 Bullseye
The next stable release of Debian, version 11 "Bullseye", will ship
with a gcc version that produces an "internal compiler error"
segmentation fault when compiling current versions of MKVToolNix. This
error has been fixed in gcc upstream as well as the gcc in Debian
testing, but it won't be backported to the one in Bullseye.

There are two possible workarounds:

1. Compile with clang instead (this is what this commit does)
2. Compile with gcc 9 which Bullseye also ships

As I've been using clang in parallel to gcc for years, I've opted to
compile with it instead of the older gcc 9 for Bullseye.

Ubuntu releases don't suffer from this issue:

* 20.04 comes with gcc 9.3.0
* 20.10 & 21.04 come with gcc 10.3
2021-07-10 11:40:42 +02:00
Moritz Bunkus
213ed8514a
use gmp backend for Boost Multiprecision 2021-07-04 12:44:36 +02:00
Moritz Bunkus
a8b1eab3dc
remove remaining occurrences of PCRE2 & JPCRE2 2021-06-27 12:53:38 +02:00
Moritz Bunkus
4108cfe65a
remove remaining traces of support for bz2 & lzo 2021-06-16 19:57:00 +02:00
Moritz Bunkus
80cbad698d
remove usage of the magic library
Part of the fix of #3137.
2021-06-16 16:42:01 +02:00
Moritz Bunkus
7ebbf42812
bump version number, set release code name 2021-06-13 12:45:29 +02:00
Moritz Bunkus
d87a2f4280
Debian/Ubuntu control: explicit dependency on nlohmann-json3-dev
All supported Debian & Ubuntu versions now carry nlohmann-json3-dev
instead of nlohmann-json-dev.
2021-06-05 22:50:03 +02:00
Moritz Bunkus
5df94b0387
Boost: test for multi-precision library; require at least v1.66.0
I know compilation fails in the multi-precision library with 1.60.0,
the previous requirement. The oldest OS I still support is CentOS 7,
which has 1.69 via EPEL. CentOS 8 is next which comes with 1.66.0, and
that compiles fine. So let's take that as the new baseline.
2021-05-30 14:24:21 +02:00
Moritz Bunkus
e27464d69e
bump version number, set release codename 2021-05-22 12:33:21 +02:00
Moritz Bunkus
09ab99494e
Debian packaging: remove duplicate comma 2021-04-21 12:31:47 +02:00
Moritz Bunkus
02f78b83e8
Debian packaging: support for Ubuntu 21.04 2021-04-20 16:31:11 +02:00