diff --git a/.gitignore b/.gitignore index c6d76bd..3f91a25 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /qmc2-0.187.tar.bz2 /qmc2-0.192.tar.bz2 /qmc2-0.195.tar.bz2 +/qmc2-mame-fe-2cc9d99fbff31c03a78c7b9698ced54eae61495c.tar.gz diff --git a/qmc2-fedora-linux.patch b/qmc2-fedora-linux.patch deleted file mode 100644 index 1008bad..0000000 --- a/qmc2-fedora-linux.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up qmc2/scripts/os-detect.sh.fedoralinux qmc2/scripts/os-detect.sh ---- qmc2/scripts/os-detect.sh.fedoralinux 2021-08-01 09:54:27.554403904 +0200 -+++ qmc2/scripts/os-detect.sh 2021-08-01 09:46:05.915901032 +0200 -@@ -11,7 +11,7 @@ if [ "${OS}" = "Linux" ]; then - VERSION=$(cat /etc/os-release | egrep "\bVERSION\b" | sed 's/VERSION=//g' | sed 's/\"//g') - NAME=$(cat /etc/os-release | egrep "\bNAME\b" | sed 's/NAME=//g' | sed 's/\"//g' | tr ' ' '_' | tr '/' '_') - case ${NAME} in -- Fedora) -+ Fedora | Fedora_Linux) - NAME="Fedora_release" - DIST="$(echo ${NAME})_$(echo ${VERSION_ID})" - ;; diff --git a/qmc2-ini.patch b/qmc2-ini.patch index fdab70a..f4144a6 100644 --- a/qmc2-ini.patch +++ b/qmc2-ini.patch @@ -1,7 +1,7 @@ diff -up qmc2/inst/qmc2.ini.template.fedora qmc2/inst/qmc2.ini.template --- qmc2/inst/qmc2.ini.template.fedora 2017-05-10 09:51:54.733465994 +0200 +++ qmc2/inst/qmc2.ini.template 2017-06-18 22:28:15.282512851 +0200 -@@ -2,6 +2,26 @@ +@@ -2,6 +2,25 @@ FilesAndDirectories\DataDirectory=DATADIR/qmc2/ [MAME] @@ -24,7 +24,6 @@ diff -up qmc2/inst/qmc2.ini.template.fedora qmc2/inst/qmc2.ini.template +Configuration\Global\snapshot_directory=$HOME/.mame/snap +Configuration\Global\diff_directory=$HOME/.mame/diff +Configuration\Global\comment_directory=$HOME/.mame/comments -+Configuration\Global\video=opengl FilesAndDirectories\OptionsTemplateFile=DATADIR/qmc2/opt/SDLMAME/template-SDL2.xml FilesAndDirectories\PreviewDirectory=DATADIR/qmc2/prv/ FilesAndDirectories\PreviewFile=DATADIR/qmc2/prv/previews.zip diff --git a/qmc2-listxml-softlist-fix.patch b/qmc2-listxml-softlist-fix.patch deleted file mode 100644 index 47b2aeb..0000000 --- a/qmc2-listxml-softlist-fix.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: qmc2/softwarelist.cpp -=================================================================== ---- qmc2/softwarelist.cpp (wersja 8299) -+++ qmc2/softwarelist.cpp (wersja 8300) -@@ -1115,8 +1115,8 @@ - QStringList xmlLines = qmc2MachineList->xmlDb()->xml(systemName).split("\n", QString::SkipEmptyParts); - while ( !interruptLoad && i < xmlLines.count() && !xmlLines[i].contains("") ) { - QString line = xmlLines[i++]; -- if ( line.startsWith(" crcIdentMap; -- uLong ulCRC = crc.toULong(0, 16); -+ QMultiMap crcIdentMap; -+ uint32_t ulCRC = crc.toULong(0, 16); - do { - if ( unzGetCurrentFileInfo(zipFile, &zipInfo, ioBuffer, QMC2_ROMALYZER_ZIP_BUFFER_SIZE, 0, 0, 0, 0) == UNZ_OK ) - crcIdentMap.insert(zipInfo.crc, QString((const char *)ioBuffer)); -diff -up qmc2/filesystemmodel.h.minizip qmc2/filesystemmodel.h ---- qmc2/filesystemmodel.h.minizip 2017-09-04 11:21:36.322573194 +0200 -+++ qmc2/filesystemmodel.h 2018-10-20 12:57:12.390427024 +0200 -@@ -21,7 +21,7 @@ - #endif - - #include "macros.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #include "fileiconprovider.h" - -diff -up qmc2/imagechecker.cpp.minizip qmc2/imagechecker.cpp ---- qmc2/imagechecker.cpp.minizip 2016-09-04 16:08:00.260925261 +0200 -+++ qmc2/imagechecker.cpp 2018-10-20 12:57:12.390427024 +0200 -@@ -18,7 +18,7 @@ - #include "qmc2main.h" - #include "options.h" - #include "toolexec.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #include "softwarelist.h" - #include "macros.h" -diff -up qmc2/imagechecker.h.minizip qmc2/imagechecker.h ---- qmc2/imagechecker.h.minizip 2017-06-26 13:00:14.887536292 +0200 -+++ qmc2/imagechecker.h 2018-10-20 12:57:12.391427034 +0200 -@@ -13,7 +13,7 @@ - #include "ui_imagechecker.h" - #include "imagewidget.h" - #include "softwareimagewidget.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #if defined(QMC2_LIBARCHIVE_ENABLED) - #include "archivefile.h" -diff -up qmc2/imagewidget.h.minizip qmc2/imagewidget.h ---- qmc2/imagewidget.h.minizip 2017-06-26 13:00:26.559431292 +0200 -+++ qmc2/imagewidget.h 2018-10-20 12:57:12.391427034 +0200 -@@ -10,7 +10,7 @@ - #include - #include - --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #if defined(QMC2_LIBARCHIVE_ENABLED) - #include "archivefile.h" -diff -up qmc2/machinelist.cpp.minizip qmc2/machinelist.cpp ---- qmc2/machinelist.cpp.minizip 2018-02-28 15:39:33.030400954 +0100 -+++ qmc2/machinelist.cpp 2018-10-20 12:57:12.392427043 +0200 -@@ -40,7 +40,7 @@ - #include "miniwebbrowser.h" - #include "romalyzer.h" - #include "macros.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #include "demomode.h" - #include "deviceconfigurator.h" -diff -up qmc2/options.cpp.minizip qmc2/options.cpp ---- qmc2/options.cpp.minizip 2017-12-08 10:17:12.737602327 +0100 -+++ qmc2/options.cpp 2018-10-20 12:57:12.393427053 +0200 -@@ -34,7 +34,7 @@ - #include "machinelist.h" - #include "imagechecker.h" - #include "macros.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "keyseqscan.h" - #include "romalyzer.h" - #include "romstatusexport.h" -diff -up qmc2/qmc2main.cpp.minizip qmc2/qmc2main.cpp ---- qmc2/qmc2main.cpp.minizip 2018-02-28 14:15:18.223222688 +0100 -+++ qmc2/qmc2main.cpp 2018-10-20 12:57:12.396427081 +0200 -@@ -60,7 +60,7 @@ - #include "romstatusexport.h" - #include "componentsetup.h" - #include "miniwebbrowser.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #include "downloaditem.h" - #include "embedder.h" -diff -up qmc2/romalyzer.cpp.minizip qmc2/romalyzer.cpp ---- qmc2/romalyzer.cpp.minizip 2017-11-21 11:52:45.358924500 +0100 -+++ qmc2/romalyzer.cpp 2018-10-20 12:57:12.400427119 +0200 -@@ -27,8 +27,9 @@ - #include "machinelist.h" - #include "softwarelist.h" - #include "macros.h" --#include "unzip.h" --#include "zip.h" -+#include "mz_compat.h" -+#include "mz.h" -+#include "zlib.h" - #include "sevenzipfile.h" - #if defined(QMC2_LIBARCHIVE_ENABLED) - #include "archivefile.h" -@@ -528,7 +529,7 @@ void ROMAlyzer::showEvent(QShowEvent *e) - if ( index > QMC2_ROMALYZER_RT_FOLDERS ) - index = QMC2_ROMALYZER_RT_FOLDERS; - comboBoxSetRewriterReproductionType->setCurrentIndex(index); -- spinBoxSetRewriterZipLevel->setValue(qmc2Config->value(QMC2_FRONTEND_PREFIX + m_settingsKey + "/SetRewriterZipLevel", Z_DEFAULT_COMPRESSION).toInt()); -+ spinBoxSetRewriterZipLevel->setValue(qmc2Config->value(QMC2_FRONTEND_PREFIX + m_settingsKey + "/SetRewriterZipLevel", MZ_COMPRESS_LEVEL_DEFAULT).toInt()); - checkBoxSetRewriterUniqueCRCs->setChecked(qmc2Config->value(QMC2_FRONTEND_PREFIX + m_settingsKey + "/SetRewriterUniqueCRCs", false).toBool()); - comboBoxSetRewriterLibArchiveDeflate->setCurrentIndex(qmc2Config->value(QMC2_FRONTEND_PREFIX + m_settingsKey + "/SetRewriterLibArchiveDeflate", true).toBool() ? 0 : 1); - checkBoxSetRewriterAddZipComment->setChecked(qmc2Config->value(QMC2_FRONTEND_PREFIX + m_settingsKey + "/SetRewriterAddZipComment", true).toBool()); -@@ -3635,7 +3636,7 @@ bool ROMAlyzer::writeAllZipData(QString - QByteArray data = it.value(); - if ( writeLog ) - log(tr("set rewriter: deflating '%1' (uncompressed size: %2)").arg(file).arg(humanReadable(data.length()))); -- if ( zipOpenNewFileInZip(zip, file.toUtf8().constData(), &zipInfo, file.toUtf8().constData(), file.length(), 0, 0, 0, Z_DEFLATED, spinBoxSetRewriterZipLevel->value()) == ZIP_OK ) { -+ if ( zipOpenNewFileInZip3(zip, file.toUtf8().constData(), &zipInfo, file.toUtf8().constData(), file.length(), 0, 0, 0, MZ_COMPRESS_METHOD_DEFLATE, spinBoxSetRewriterZipLevel->value(), 0, MAX_WBITS, DEF_MEM_LEVEL, 0, NULL, 0) == ZIP_OK ) { - quint64 bytesWritten = 0; - progressBarFileIO->setInvertedAppearance(true); - progressBarFileIO->setRange(0, data.length()); -diff -up qmc2/softwarelist.h.minizip qmc2/softwarelist.h ---- qmc2/softwarelist.h.minizip 2017-06-26 13:03:39.029701674 +0200 -+++ qmc2/softwarelist.h 2018-10-20 12:57:12.398427100 +0200 -@@ -15,7 +15,7 @@ - #include - - #include "ui_softwarelist.h" --#include "unzip.h" -+#include "mz_compat.h" - #include "sevenzipfile.h" - #include "swlistexport.h" - #include "imagewidget.h" diff --git a/qmc2.spec b/qmc2.spec index d3ecc11..2e12948 100644 --- a/qmc2.spec +++ b/qmc2.spec @@ -1,5 +1,11 @@ +%global forgeurl https://github.com/qmc2/qmc2-mame-fe/ +%global commit 2cc9d99fbff31c03a78c7b9698ced54eae61495c + +Version: 0.242 + +%forgemeta + Name: qmc2 -Version: 0.195 Release: %autorelease Summary: M.A.M.E. Catalog / Launcher II @@ -8,22 +14,20 @@ Summary: M.A.M.E. Catalog / Launcher II #everything else is GPLv2 License: GPLv2 and ASL 2.0 and MIT URL: http://qmc2.batcom-it.net -Source0: http://downloads.sourceforge.net/qmc2/%{name}-%{version}.tar.bz2 -%if 0%{?fedora} >= 30 -Patch0: %{name}-minizip.patch -%endif -Patch2: %{name}-listxml-softlist-fix.patch -Patch3: %{name}-fedora-linux.patch +Source0: %{forgesource} #Fedora-specific configuration Patch1: %{name}-ini.patch -BuildRequires: make BuildRequires: desktop-file-utils BuildRequires: libarchive-devel BuildRequires: libXmu-devel +BuildRequires: make BuildRequires: minizip-devel -BuildRequires: phonon-devel -BuildRequires: qt4-webkit-devel +BuildRequires: qt5-qtmultimedia-devel +BuildRequires: qt5-qtscript-devel +BuildRequires: qt5-qtsvg-devel +BuildRequires: qt5-qtwebkit-devel +BuildRequires: qt5-qtxmlpatterns-devel BuildRequires: rsync BuildRequires: SDL2-devel Requires: games-menus @@ -54,13 +58,7 @@ the games" %prep -%autosetup -p1 -n %{name} -pushd arch/Linux/ -ln -s Fedora.cfg Fedora_release_33.cfg -ln -s Fedora.cfg Fedora_release_34.cfg -ln -s Fedora.cfg Fedora_release_35.cfg -ln -s Fedora.cfg Fedora_release_36.cfg -popd +%forgeautosetup -p1 #ensure system minizip and zlib are used rm -rf minizip rm -rf zlib @@ -68,25 +66,20 @@ rm -rf zlib %build %make_build DISTCFG=1 CC_FLAGS="$RPM_OPT_FLAGS" CXX_FLAGS="$RPM_OPT_FLAGS" \ - L_FLAGS="$RPM_LD_FLAGS" SYSTEM_MINIZIP=1 SYSTEM_ZLIB=1 LIBARCHIVE=1 + L_FLAGS="$RPM_LD_FLAGS" SYSTEM_MINIZIP=1 SYSTEM_ZLIB=1 LIBARCHIVE=1 GIT_REV=0 %make_build arcade DISTCFG=1 CC_FLAGS="$RPM_OPT_FLAGS" CXX_FLAGS="$RPM_OPT_FLAGS" \ - L_FLAGS="$RPM_LD_FLAGS" SYSTEM_MINIZIP=1 SYSTEM_ZLIB=1 LIBARCHIVE=1 -%make_build qchdman DISTCFG=1 CXX_FLAGS="$RPM_OPT_FLAGS" L_FLAGS="$RPM_LD_FLAGS" + L_FLAGS="$RPM_LD_FLAGS" SYSTEM_MINIZIP=1 SYSTEM_ZLIB=1 LIBARCHIVE=1 GIT_REV=0 +%make_build qchdman DISTCFG=1 CXX_FLAGS="$RPM_OPT_FLAGS" L_FLAGS="$RPM_LD_FLAGS" \ + GIT_REV=0 %make_build doc DISTCFG=1 %install rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} \ - QT_TRANSLATION=../../qt4/translations - -make arcade-install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} \ - QT_TRANSLATION=../../qt4/translations - -make qchdman-install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} \ - QT_TRANSLATION=../../qt4/translations - +make install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} +make arcade-install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} +make qchdman-install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 PREFIX=%{_prefix} make doc-install DESTDIR=$RPM_BUILD_ROOT DISTCFG=1 MAN_DIR=%{_mandir} #remove docs since we are installing docs in %%doc diff --git a/sources b/sources index d94d9d9..b91eea6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qmc2-0.195.tar.bz2) = c7a2094468e5a78dd8372244bcdfaa1a19fe446412a48c8e338798c70ecef510cdcfff0dfbe4a639bdb01dfa9a69253ead086549665ffac7e0e84c040b4a5530 +SHA512 (qmc2-mame-fe-2cc9d99fbff31c03a78c7b9698ced54eae61495c.tar.gz) = a3c3d0db58e8cd243d52d34d183e41e31495bfc402026ce09876c3239e974360f981e2cadc274dcbb5ac2332495506d63e8315942ed8aa29494f65516cb9c394