Hello community, here is the log from the commit of package higan for openSUSE:Factory checked in at 2017-12-03 10:12:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/higan (Old) and /work/SRC/openSUSE:Factory/.higan.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "higan" Sun Dec 3 10:12:36 2017 rev:3 rq:546165 version:0.106 Changes: -------- --- /work/SRC/openSUSE:Factory/higan/higan.changes 2017-10-11 23:02:32.201791628 +0200 +++ /work/SRC/openSUSE:Factory/.higan.new/higan.changes 2017-12-03 10:12:39.900638787 +0100 @@ -1,0 +2,37 @@ +Tue Nov 28 01:55:27 UTC 2017 - [email protected] + +- Fix builds for Leap 42.2, 42.3, and Fedora 27. + rename create-config.patch to create_config.patch to match + debian url reference + +------------------------------------------------------------------- +Sun Nov 26 18:25:17 UTC 2017 - [email protected] + +- update to v106: + * restores soft-reset support for consoles + * adds auto-saving RAM support + * adds a new tool to save per-game text notes + * adds 64 new SNES PAL game verifications to the icarus database +- repackage files related to "icarus", the ROM picker for higan, + as a subpackage +- for v105 changes, see https://board.byuu.org/viewtopic.php?f=4&t=1827 +- for v104 changes, see https://board.byuu.org/viewtopic.php?f=4&t=1734 +- build against gtk3 instead of gtk2 +- partial drop in optflags.patch + * g++ fix merged in e9d2d56df9f59dd17ebfa2e105fb5409467e4d9f +- rebase patches: + * icondir.patch (incorrect icon dimensions also fixed) + * use-XDG_CONFIG_HOME.patch + * ult.patch + * optflags.patch (noop) +- drop find_cairo.patch: cairo resolves without issues +- match upstream patch name: + * remove sharedpath.patch + * add use_sharedpath.patch +- tidiness + * cleanup with spec-cleaner + * re-number patches taken from debian starting at 3xx + * tag patches with upstream links + * remove manual desktop hooks (rely on rpm triggers) + +------------------------------------------------------------------- Old: ---- create-config.patch find_cairo.patch higan_v103-source.7z sharedpath.patch New: ---- create_config.patch higan-0.106.7z use_sharedpath.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ higan.spec ++++++ --- /var/tmp/diff_new_pack.P1aoVJ/_old 2017-12-03 10:12:40.732608538 +0100 +++ /var/tmp/diff_new_pack.P1aoVJ/_new 2017-12-03 10:12:40.732608538 +0100 @@ -1,7 +1,7 @@ # # spec file for package higan # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,42 +16,43 @@ # -%global vernumber 103 +%global vernumber 106 +%global debug_package %{nil} +%define debianRepo https://anonscm.debian.org/cgit/pkg-games/higan.git/plain/debian/patches Name: higan Version: 0.%{vernumber} Release: 0 Summary: Nintendo emulator focused on accuracy -License: GPL-3.0 and LGPL-2.0 and Zlib and ISC +License: GPL-3.0 AND LGPL-2.0 AND Zlib AND ISC Group: System/Emulators/Other Url: https://byuu.org/emulation/higan -Source: https://download.byuu.org/higan_v%{vernumber}-source.7z +Source: https://download.byuu.org/higan_v%{vernumber}-source.7z#/%{name}-%{version}.7z # PATCH-FEATURE-DEBIAN Source11: %{name}.6 Source12: icarus.6 # PATCH-FIX-MAGEIA Patch0: desktop.patch +# PATCH-FIX-SUSE Patch1: optflags.patch # PATCH-FIX-UPSTREAM https://board.byuu.org/viewtopic.php?f=4&t=1661 Patch2: icondir.patch -# PATCH-FIX-MAGEIA/DEBIAN -Patch3: create-config.patch -Patch4: ignore_manifests_by_default.patch -Patch5: use-XDG_CONFIG_HOME.patch -Patch6: sharedpath.patch -Patch7: find_cairo.patch -%if 0%{?suse_version} > 1320 -BuildRequires: gcc-c++ -%else -BuildRequires: gcc5-c++ -%endif +# PATCH-FIX-DEBIAN +Patch300: %{debianRepo}/create_config.patch +# PATCH-FIX-DEBIAN +Patch302: %{debianRepo}/ignore_manifests_by_default.patch +# PATCH-FIX-DEBIAN +Patch303: %{debianRepo}/use-XDG_CONFIG_HOME.patch +# PATCH-FIX-DEBIAN +Patch304: %{debianRepo}/use_sharedpath.patch +BuildRequires: hicolor-icon-theme BuildRequires: p7zip BuildRequires: pkgconfig -BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(QtCore) BuildRequires: pkgconfig(QtGui) BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(ao) BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libpulse-simple) BuildRequires: pkgconfig(libudev) @@ -60,9 +61,18 @@ BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xv) -BuildRequires: update-desktop-files -BuildRequires: hicolor-icon-theme +Requires: %{name}-icarus ExcludeArch: aarch64 +# openSUSE Leap 42.x defaults to GCC 4 +%if 0%{?suse_version} == 1315 +%define _cxx g++-6 +BuildRequires: gcc6 +BuildRequires: gcc6-c++ +%else +%define _cxx g++ +BuildRequires: gcc +BuildRequires: gcc-c++ +%endif %description Higan is an emulator for a handful of Nintendo, SEGA, NEC and Bandai @@ -71,16 +81,27 @@ compatibility. As a result, the minimum system requirements for Higan are quite high. +%package icarus +Summary: A file picker built for ROM launching (from higan) +Group: Productivity/File utilities + +%description icarus +Icarus is the file picker that appears when you use +"Import ROM Files..." in higan. + +It can also be launched standalone, as it is really just +a file picker that only shows files with typical ROM +extensions. + %prep %setup -q -n %{name}_v%{vernumber}-source %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 +%patch300 -p1 +%patch302 -p1 +%patch303 -p1 +%patch304 -p1 %ifarch x86_64 perl -pi -e 's,march=native,march=k8,g;' higan/GNUmakefile @@ -89,8 +110,8 @@ %endif %build -make %{?_smp_mflags} -C icarus hiro=qt compiler="$(which g++)" platform="linux" -make %{?_smp_mflags} -C higan hiro=qt compiler="$(which g++)" platform="linux" profile="profile_accuracy" +make %{?_smp_mflags} -C icarus hiro=qt compiler="%{_cxx}" platform="linux" +make %{?_smp_mflags} -C higan hiro=qt compiler="%{_cxx}" platform="linux" profile="profile_accuracy" %install mkdir -p %{buildroot}%{_datadir}/applications @@ -98,28 +119,26 @@ make prefix=%{buildroot}%{_prefix} -C icarus install make prefix=%{buildroot}%{_prefix} -C higan install -%suse_update_desktop_file -r %{name} 'System;Emulator;' +# apply the same fix from icondir.patch to icarus +mv %{buildroot}/%{_datadir}/icons/icarus.png \ + %{buildroot}/%{_datadir}/icons/hicolor/256x256/apps/ install -d %{buildroot}%{_mandir}/man6 install -m644 %{_sourcedir}/%{name}.6 %{buildroot}%{_mandir}/man6 install -m644 %{_sourcedir}/icarus.6 %{buildroot}%{_mandir}/man6 -%post -%icon_theme_cache_post -%desktop_database_post - -%postun -%icon_theme_cache_postun -%desktop_database_postun - %files -%defattr(-,root,root,-) %{_bindir}/%{name} -%{_bindir}/icarus %{_datadir}/applications/%{name}.desktop %{_datadir}/%{name} +%{_datadir}/icons/hicolor/256x256/apps/%{name}.png +%{_mandir}/man6/%{name}.* + +%files icarus +%{_bindir}/icarus +%{_datadir}/applications/icarus.desktop %{_datadir}/icarus -%{_datadir}/icons/hicolor/512x512/apps/%{name}.png -%{_mandir}/man6/* +%{_datadir}/icons/hicolor/256x256/apps/icarus.png +%{_mandir}/man6/icarus.* %changelog ++++++ create_config.patch ++++++ Description: Always create new config file in configpath Using locate() can lead to an attempt to write a new config file to a directory without write permission. The correct path is configpath (~/.config/higan). Author: Tobias Hansen <[email protected]> --- a/higan/target-tomoko/configuration/configuration.cpp +++ b/higan/target-tomoko/configuration/configuration.cpp @@ -63,5 +63,6 @@ } auto Settings::save() -> void { - file::write(locate("settings.bml"), BML::serialize(*this)); + directory::create({Path::config(), "higan/"}); + file::write({Path::config(), "higan/", "settings.bml"}, BML::serialize(*this)); } ++++++ icondir.patch ++++++ --- /var/tmp/diff_new_pack.P1aoVJ/_old 2017-12-03 10:12:40.808605775 +0100 +++ /var/tmp/diff_new_pack.P1aoVJ/_new 2017-12-03 10:12:40.808605775 +0100 @@ -11,17 +11,18 @@ index 59fd294..7514143 100644 --- a/higan/target-tomoko/GNUmakefile +++ b/higan/target-tomoko/GNUmakefile -@@ -90,11 +90,11 @@ else ifneq ($(filter $(platform),linux bsd),) +@@ -89,12 +89,12 @@ + else ifneq ($(filter $(platform),linux bsd),) mkdir -p $(prefix)/bin/ - mkdir -p $(prefix)/share/$(name)/ mkdir -p $(prefix)/share/applications/ - mkdir -p $(prefix)/share/icons/ -+ mkdir -p $(prefix)/share/icons/hicolor/512x512/apps/ ++ mkdir -p $(prefix)/share/icons/hicolor/256x256/apps/ + mkdir -p $(prefix)/share/$(name)/ cp out/$(name) $(prefix)/bin/$(name) cp -R systems/* $(prefix)/share/$(name)/ cp data/$(name).desktop $(prefix)/share/applications/$(name).desktop - cp data/$(name).png $(prefix)/share/icons/$(name).png -+ cp data/$(name).png $(prefix)/share/icons/hicolor/512x512/apps/$(name).png ++ cp data/$(name).png $(prefix)/share/icons/hicolor/256x256/apps/$(name).png endif uninstall: @@ -30,7 +31,7 @@ if [ -f $(prefix)/bin/$(name) ]; then rm $(prefix)/bin/$(name); fi if [ -f $(prefix)/share/applications/$(name).desktop ]; then rm $(prefix)/share/applications/$(name).desktop; fi - if [ -f $(prefix)/share/icons/$(name).png ]; then rm $(prefix)/share/icons/$(name).png; fi -+ if [ -f $(prefix)/share/icons/hicolor/512x512/apps/$(name).png ]; then rm $(prefix)/share/icons/hicolor/512x512/apps/$(name).png; fi ++ if [ -f $(prefix)/share/icons/hicolor/256x256/apps/$(name).png ]; then rm $(prefix)/share/icons/hicolor/256x256/apps/$(name).png; fi endif -- libgit2 0.25.0 ++++++ ignore_manifests_by_default.patch ++++++ --- /var/tmp/diff_new_pack.P1aoVJ/_old 2017-12-03 10:12:40.816605484 +0100 +++ /var/tmp/diff_new_pack.P1aoVJ/_new 2017-12-03 10:12:40.820605339 +0100 @@ -3,7 +3,6 @@ higan contain files named manifest.bml. Without this option enabled these games do not work anymore as long as the manifests are present. Author: Tobias Hansen <[email protected]> -Rediffed by: Rémi Verschelde <[email protected]> --- a/higan/target-tomoko/configuration/configuration.cpp +++ b/higan/target-tomoko/configuration/configuration.cpp @@ -14,6 +13,5 @@ - set("Library/IgnoreManifests", false); + set("Library/IgnoreManifests", true); - set("Video/Driver", ruby::Video::optimalDriver()); + set("Video/Driver", ruby::Video::safestDriver()); set("Video/Synchronize", false); - ++++++ optflags.patch ++++++ --- /var/tmp/diff_new_pack.P1aoVJ/_old 2017-12-03 10:12:40.828605048 +0100 +++ /var/tmp/diff_new_pack.P1aoVJ/_new 2017-12-03 10:12:40.828605048 +0100 @@ -1,7 +1,7 @@ -Index: higan_v102-source/nall/GNUmakefile +Index: a/nall/GNUmakefile =================================================================== ---- higan_v102-source/nall/GNUmakefile -+++ higan_v102-source/nall/GNUmakefile 2017-01-21 00:19:00.808009001 +0100 +--- a/nall/GNUmakefile ++++ b/nall/GNUmakefile 2017-01-21 00:19:00.808009001 +0100 @@ -36,12 +36,12 @@ endif endif @@ -18,12 +18,3 @@ # compiler detection ifeq ($(compiler),) -@@ -51,7 +51,7 @@ - else ifeq ($(platform),macosx) - compiler := clang++ - else ifeq ($(platform),linux) -- compiler := g++-4.9 -+ compiler := g++ - else ifeq ($(platform),bsd) - compiler := g++49 - else ++++++ use-XDG_CONFIG_HOME.patch ++++++ --- /var/tmp/diff_new_pack.P1aoVJ/_old 2017-12-03 10:12:40.836604758 +0100 +++ /var/tmp/diff_new_pack.P1aoVJ/_new 2017-12-03 10:12:40.836604758 +0100 @@ -3,14 +3,11 @@ XDG_CONFIG_HOME instead, if set. Author: Michael Gold <[email protected]> Bug-Debian: http://bugs.debian.org/738270 -Rediffed by: Rémi Verschelde <[email protected]> -Index: higan_v101-source/nall/path.hpp -=================================================================== ---- higan_v101-source/nall/path.hpp -+++ higan_v101-source/nall/path.hpp 2016-08-08 19:27:42.527003526 +0200 +--- a/nall/path.hpp ++++ b/nall/path.hpp @@ -80,7 +80,13 @@ - #elif defined(PLATFORM_MACOSX) + #elif defined(PLATFORM_MACOS) string result = {Path::user(), "Library/Application Support/"}; #else - string result = {Path::user(), ".config/"}; @@ -24,4 +21,3 @@ #endif if(!result) result = "."; if(!result.endsWith("/")) result.append("/"); - ++++++ use_sharedpath.patch ++++++ Description: Use sharedpath() when locating files To find files that are in /usr/share/higan. Author: Tobias Hansen <[email protected]> --- a/higan/target-tomoko/tomoko.cpp +++ b/higan/target-tomoko/tomoko.cpp @@ -11,6 +11,9 @@ location = {Path::config(), "higan/", name}; if(inode::exists(location)) return location; + location = {Path::shared(), "higan/", name}; + if(inode::exists(location)) return location; + directory::create({Path::local(), "higan/"}); return {Path::local(), "higan/", name}; }
