From: Rafael Sadowski Subject: UPDATE and unbreak: mkvtoolnix-93.0 To: ports@openbsd.org Cc: Rafael Sadowski Date: Sun, 13 Jul 2025 12:14:10 +0200 Update mkvtoolnix-93.0. Tested on amd64. Yes it's not nice, yes I'm not proud of it but I haven't found any other solution and this one works reliably. Cheers Rafael diff --git a/multimedia/mkvtoolnix/Makefile b/multimedia/mkvtoolnix/Makefile index 3eaff4dc979..62f04dfda9a 100644 --- a/multimedia/mkvtoolnix/Makefile +++ b/multimedia/mkvtoolnix/Makefile @@ -1,9 +1,6 @@ -BROKEN= fail to configure: fatal error: 'QtCore' file not found - COMMENT= create, alter and inspect Matroska files -DISTNAME= mkvtoolnix-88.0 -REVISION= 1 +DISTNAME= mkvtoolnix-93.0 CATEGORIES= multimedia x11 @@ -14,7 +11,7 @@ MAINTAINER= Rafael Sadowski # GPLv2 PERMIT_PACKAGE= Yes -WANTLIB += ${COMPILER_LIBCXX} FLAC GL Qt6Concurrent Qt6Core Qt6DBus +WANTLIB += ${COMPILER_LIBCXX} FLAC Qt6Concurrent Qt6Core Qt6DBus WANTLIB += Qt6Gui Qt6Multimedia Qt6Network Qt6Svg Qt6Widgets boost_filesystem WANTLIB += boost_system c cmark dvdread ebml fmt gmp iconv intl WANTLIB += m matroska ogg pugixml vorbis z @@ -72,12 +69,24 @@ CONFIGURE_ARGS= --disable-optimization \ --with-qmake6=${MODQT6_QMAKE} MAKE_ENV+= V=1 -CPPFLAGS+= -I${LOCALBASE}/include -I${X11BASE}/include -I${MODQT6_INCDIR} -LDFLAGS+= -L${LOCALBASE}/lib -L${X11BASE}/lib -L${MODQT6_LIBDIR} + +CXXFLAGS+= -I${LOCALBASE}/include -I${X11BASE}/include -I${MODQT6_INCDIR} +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtCore +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtConcurrent +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtDBus +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtGui +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtMultimedia +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtNetwork +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtSvg +CXXFLAGS+= -I/usr/local/include/X11/qt6/QtWidgets + +LDFLAGS+= -L${LOCALBASE}/lib -L${X11BASE}/lib +LDFLAGS+= -lQt6Concurrent -lQt6Core -lQt6DBus -lQt6Gui +LDFLAGS+= -lQt6Multimedia -lQt6Network -lQt6Svg -lQt6Widgets CONFIGURE_ENV+= LCONVERT="${LOCALBASE}/lib/qt6/bin/lconvert" \ QMAKE6="${MODQT6_QMAKE}" \ - CPPFLAGS="${CPPFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" \ ac_cv_path_PANDOC= diff --git a/multimedia/mkvtoolnix/distinfo b/multimedia/mkvtoolnix/distinfo index c88140e58b4..4cae414b0b9 100644 --- a/multimedia/mkvtoolnix/distinfo +++ b/multimedia/mkvtoolnix/distinfo @@ -1,2 +1,2 @@ -SHA256 (mkvtoolnix-88.0.tar.xz) = 8vCMAQB0Bmjvirp5U/5K7YwE7mpbUXF4FqSz1SnfCiU= -SIZE (mkvtoolnix-88.0.tar.xz) = 11241552 +SHA256 (mkvtoolnix-93.0.tar.xz) = lRCmaCouC3mnQgwwqsPEn9b6G7xeITGonFIlnYiDX3g= +SIZE (mkvtoolnix-93.0.tar.xz) = 11423512 diff --git a/multimedia/mkvtoolnix/patches/patch-Rakefile b/multimedia/mkvtoolnix/patches/patch-Rakefile index 37d3514e64c..6dc1dec0557 100644 --- a/multimedia/mkvtoolnix/patches/patch-Rakefile +++ b/multimedia/mkvtoolnix/patches/patch-Rakefile @@ -4,7 +4,7 @@ Ensure that the default and working linker is used on all clang archs. Index: Rakefile --- Rakefile.orig +++ Rakefile -@@ -176,7 +176,6 @@ def setup_globals +@@ -178,7 +178,6 @@ def setup_globals ldflags = "" ldflags += determine_stack_protector_flags ldflags += " -pg" if c?(:USE_PROFILING) @@ -12,7 +12,7 @@ Index: Rakefile ldflags += " -Llib/libebml/src -Llib/libmatroska/src" if c?(:EBML_MATROSKA_INTERNAL) ldflags += " -Llib/fmt/src" if c?(:FMT_INTERNAL) ldflags += " #{c(:EXTRA_LDFLAGS)} #{c(:USER_LDFLAGS)} #{c(:LDFLAGS_RPATHS)} #{c(:BOOST_LDFLAGS)}" -@@ -1094,10 +1093,8 @@ $common_libs = [ +@@ -1097,10 +1096,8 @@ $common_libs = [ :intl, :iconv, :fmt, diff --git a/multimedia/mkvtoolnix/patches/patch-ac_qt6_m4 b/multimedia/mkvtoolnix/patches/patch-ac_qt6_m4 new file mode 100644 index 00000000000..c3b71a5ac3c --- /dev/null +++ b/multimedia/mkvtoolnix/patches/patch-ac_qt6_m4 @@ -0,0 +1,27 @@ +Index: ac/qt6.m4 +--- ac/qt6.m4.orig ++++ ac/qt6.m4 +@@ -5,6 +5,8 @@ dnl + qt_min_ver=6.2.0 + + check_qt6() { ++# Force Qt6 compilation test to succeed ++am_cv_qt6_compilation=1 + AC_ARG_WITH(qmake6, + AS_HELP_STRING([--with-qmake6=prog],[use prog instead of looking for qmake6]), + [ QMAKE6="$with_qmake6" ],) +@@ -23,11 +25,11 @@ check_qt6() { + fi + + QMAKE_SPEC="" +- if "$QMAKE6" -query 2>&5 | grep -F -q "QMAKE_XSPEC:linux-g++"; then ++ if "$QMAKE6" -query 2>&5 | grep -F -q "QMAKE_XSPEC:openbsd"; then + if test x"$COMPILER_TYPE" = xclang; then +- QMAKE_SPEC="-spec linux-clang" ++ QMAKE_SPEC="-spec openbsd-clang" + else +- QMAKE_SPEC="-spec linux-g++" ++ QMAKE_SPEC="-spec openbsd-g++" + fi + fi + diff --git a/multimedia/mkvtoolnix/patches/patch-configure b/multimedia/mkvtoolnix/patches/patch-configure deleted file mode 100644 index 002f2d43386..00000000000 --- a/multimedia/mkvtoolnix/patches/patch-configure +++ /dev/null @@ -1,45 +0,0 @@ -From NetBSD: -Fix Qt6 detection. -Fix configuring without po4a. - -Index: configure ---- configure.orig -+++ configure -@@ -9228,9 +9228,9 @@ printf "%s\n" "$qmake6_ver" >&6; } - - qt_searchpath="$qt_libexecdir:$qt_bindir:$PATH" - -- QT_CFLAGS="`$ac_cv_path_EGREP '^DEFINES *=' "$qmake_dir/Makefile" | sed 's/^DEFINES *= *//'`" -- QT_CFLAGS="$QT_CFLAGS `$ac_cv_path_EGREP '^CXXFLAGS *=' "$qmake_dir/Makefile" | sed -e 's/^CXXFLAGS *= *//' -e 's/-pipe//g' -e 's/-O.//g' -e 's/ -f[a-z][^ ]*//g' -e 's/ -W[^ ]*//g' -e 's/-std=[^ ]*//g' -e 's/\$([^)]*)//g'`" -- QT_INCFLAGS="`$ac_cv_path_EGREP '^INCPATH *=' "$qmake_dir/Makefile" | sed -e 's/^INCPATH *= *//'`" -+ QT_CFLAGS="`$ac_cv_path_EGREP '^DEFINES *\+=' "$qmake_dir/Makefile" | sed 's/^DEFINES *+= *//'`" -+ QT_CFLAGS="$QT_CFLAGS `$ac_cv_path_EGREP '^CXXFLAGS *\+=' "$qmake_dir/Makefile" | sed -e 's/^CXXFLAGS *+= *//' -e 's/-pipe//g' -e 's/-O.//g' -e 's/ -f[a-z][^ ]*//g' -e 's/ -W[^ ]*//g' -e 's/-std=[^ ]*//g' -e 's/\$([^)]*)//g'`" -+ QT_INCFLAGS="`$ac_cv_path_EGREP '^INCPATH *\+=' "$qmake_dir/Makefile" | sed -e 's/^INCPATH *+= *//'`" - - # If under MinGW/MSYS2, fix relative include paths - if ! test -z "${MINGW_PREFIX}"; then -@@ -9240,11 +9240,11 @@ printf "%s\n" "$qmake6_ver" >&6; } - QT_INCFLAGS="`echo $QT_INCFLAGS | sed -e 's:-I[^/][^ ]*::g'`" - QT_CFLAGS="$QT_CFLAGS $QT_INCFLAGS" - QT_CFLAGS="`echo $QT_CFLAGS | sed -e 's/\$(EXPORT_ARCH_ARGS)//'`" -- QT_LIBS="`$ac_cv_path_EGREP '^LFLAGS *=' "$qmake_dir/Makefile" | sed -e 's/^LFLAGS *= *//' -e 's/-Wl,-O[^ ]*//g' -e 's/ -f[a-z][^ ]*//g'`" -- QT_LIBS="$QT_LIBS `$ac_cv_path_EGREP '^LIBS *=' "$qmake_dir/Makefile" | sed -e 's/^LIBS *= *//' -e 's/\$([^)]*)//g' -e 's:-L[^/][^ ]*::g'`" -+ QT_LIBS="`$ac_cv_path_EGREP '^LFLAGS *\+=' "$qmake_dir/Makefile" | sed -e 's/^LFLAGS *+= *//' -e 's/-Wl,-O[^ ]*//g' -e 's/ -f[a-z][^ ]*//g'`" -+ QT_LIBS="$QT_LIBS `$ac_cv_path_EGREP '^LIBS *\+=' "$qmake_dir/Makefile" | sed -e 's/^LIBS *+= *//' -e 's/\$([^)]*)//g' -e 's:-L[^/][^ ]*::g'`" - QT_LIBS="`echo $QT_LIBS | sed -e 's/\$(EXPORT_ARCH_ARGS)//'`" -- QT_LIBS_NON_GUI="`$ac_cv_path_EGREP '^LFLAGS *=' "$qmake_dir/Makefile.non_gui" | sed -e 's/^LFLAGS *= *//' -e 's/-Wl,-O[^ ]*//g' -e 's/ -f[a-z][^ ]*//g'`" -- QT_LIBS_NON_GUI="$QT_LIBS_NON_GUI `$ac_cv_path_EGREP '^LIBS *=' "$qmake_dir/Makefile.non_gui" | sed -e 's/^LIBS *= *//' -e 's/\$([^)]*)//g' -e 's:-L[^/][^ ]*::g'`" -+ QT_LIBS_NON_GUI="`$ac_cv_path_EGREP '^LFLAGS *\+=' "$qmake_dir/Makefile.non_gui" | sed -e 's/^LFLAGS *+= *//' -e 's/-Wl,-O[^ ]*//g' -e 's/ -f[a-z][^ ]*//g'`" -+ QT_LIBS_NON_GUI="$QT_LIBS_NON_GUI `$ac_cv_path_EGREP '^LIBS *\+=' "$qmake_dir/Makefile.non_gui" | sed -e 's/^LIBS *+= *//' -e 's/\$([^)]*)//g' -e 's:-L[^/][^ ]*::g'`" - QT_LIBS_NON_GUI="`echo $QT_LIBS_NON_GUI | sed -e 's/\$(EXPORT_ARCH_ARGS)//' -e 's/-Wl,-subsystem,windows *//g'`" - - rm -rf "$qmake_dir" -@@ -11538,7 +11538,7 @@ PO4A_FLAGS="-k $TRANSLATE_PERCENT" - - - # Check whether --with-po4a was given. --if test ${with_po4a+y} -+if test "x$with_po4a" != "xno" - then : - withval=$with_po4a; PO4A="$with_po4a" - fi diff --git a/multimedia/mkvtoolnix/pkg/PLIST b/multimedia/mkvtoolnix/pkg/PLIST index e14bb7b0144..110cfe6dc93 100644 --- a/multimedia/mkvtoolnix/pkg/PLIST +++ b/multimedia/mkvtoolnix/pkg/PLIST @@ -58,6 +58,7 @@ share/locale/de/LC_MESSAGES/mkvtoolnix.mo share/locale/es/LC_MESSAGES/mkvtoolnix.mo share/locale/eu/LC_MESSAGES/mkvtoolnix.mo share/locale/fr/LC_MESSAGES/mkvtoolnix.mo +share/locale/hu/LC_MESSAGES/mkvtoolnix.mo share/locale/it/LC_MESSAGES/mkvtoolnix.mo share/locale/ja/LC_MESSAGES/mkvtoolnix.mo share/locale/ko/LC_MESSAGES/mkvtoolnix.mo