From a1ed5b580b8912fc666ffc7e63b98f748448b2515dfff5a2cd72f7c871772163 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Wed, 7 Feb 2018 19:31:04 +0000 Subject: [PATCH] - Update to new upstream release 20170910 OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/schismtracker?expand=0&rev=26 --- 20170910.tar.gz | 3 +++ schism-alsa.diff | 38 +++++++++++++------------- schism-deptrack.diff | 28 +++++++++++++------- schism-nodate.diff | 50 ++++++++++++++++++----------------- schismtracker-20150409.tar.xz | 3 --- schismtracker.changes | 14 ++++++++++ schismtracker.spec | 24 ++++++++--------- 7 files changed, 91 insertions(+), 69 deletions(-) create mode 100644 20170910.tar.gz delete mode 100644 schismtracker-20150409.tar.xz diff --git a/20170910.tar.gz b/20170910.tar.gz new file mode 100644 index 0000000..e4a78fa --- /dev/null +++ b/20170910.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f32fa71878237267c83279816d6bcccc311c64496cac2933f68dff5ac64ee05 +size 1050995 diff --git a/schism-alsa.diff b/schism-alsa.diff index c1f8b40..5d6ef85 100644 --- a/schism-alsa.diff +++ b/schism-alsa.diff @@ -7,7 +7,7 @@ IMHO, especially so with sound chips that lack hardware mixing on any of the three levels: (1) concurrent access to the hw device, (2) lack of volume control, (3) lack of rate conversion. -"default" is the sane choice to have schism output to the converters +"default" is the better choice to have schism output to the converters that handle any or all of these three points. Developer Storlek claims problems with fake devices. Upon furhter @@ -38,24 +38,24 @@ option. schism/audio_playback.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) -Index: schismtracker/schism/audio_playback.c +Index: schismtracker-20170910/schism/audio_playback.c =================================================================== ---- schismtracker.orig/schism/audio_playback.c -+++ schismtracker/schism/audio_playback.c -@@ -1274,15 +1274,10 @@ static int _audio_open(const char *drive - if (SDL_InitSubSystem(SDL_INIT_AUDIO) < 0) - return 0; +--- schismtracker-20170910.orig/schism/audio_playback.c ++++ schismtracker-20170910/schism/audio_playback.c +@@ -1281,15 +1281,10 @@ static int _audio_open(const char *drive + if (SDL_InitSubSystem(SDL_INIT_AUDIO) < 0) + return 0; -- /* This is needed in order to coax alsa into actually respecting the buffer size, since it's evidently -- ignored entirely for "fake" devices such as "default" -- which SDL happens to use if no device name -- is set. (see SDL_alsa_audio.c: http://tinyurl.com/ybf398f) -- If hw doesn't exist, so be it -- let this fail, we'll fall back to the dummy device, and the -- user can pick a more reasonable device later. */ - if (SDL_AudioDriverName(driver_name, sizeof(driver_name)) != NULL && !strcmp(driver_name, "alsa")) { - char *dev = getenv("AUDIODEV"); - if (!dev || !*dev) -- put_env_var("AUDIODEV", "hw"); -+ put_env_var("AUDIODEV", "default"); - } +- /* This is needed in order to coax alsa into actually respecting the buffer size, since it's evidently +- ignored entirely for "fake" devices such as "default" -- which SDL happens to use if no device name +- is set. (see SDL_alsa_audio.c: http://tinyurl.com/ybf398f) +- If hw doesn't exist, so be it -- let this fail, we'll fall back to the dummy device, and the +- user can pick a more reasonable device later. */ + if (SDL_AudioDriverName(driver_name, sizeof(driver_name)) != NULL && !strcmp(driver_name, "alsa")) { + char *dev = getenv("AUDIODEV"); + if (!dev || !*dev) +- put_env_var("AUDIODEV", "hw"); ++ put_env_var("AUDIODEV", "default"); + } - /* ... THIS is needed because, if the buffer size isn't a power of two, the dsp driver will punt since + /* ... THIS is needed because, if the buffer size isn't a power of two, the dsp driver will punt since diff --git a/schism-deptrack.diff b/schism-deptrack.diff index b324c31..acc41ae 100644 --- a/schism-deptrack.diff +++ b/schism-deptrack.diff @@ -1,13 +1,21 @@ +From: Jan Engelhardt + +There are some manual commands which create dependency files, and +they do fail if they concurrently try to create the directory +(because it does something like test -e auto || mkdir auto, rather +than checking just the return value of mkdir for EISDIR.) + +Anyway, create the directory beforehand. --- Makefile.am | 1 + configure.ac | 1 + 2 files changed, 2 insertions(+) -Index: schismtracker-20120105/Makefile.am +Index: schismtracker-20170910/Makefile.am =================================================================== ---- schismtracker-20120105.orig/Makefile.am -+++ schismtracker-20120105/Makefile.am -@@ -158,6 +158,7 @@ CLEANFILES = \ +--- schismtracker-20170910.orig/Makefile.am ++++ schismtracker-20170910/Makefile.am +@@ -141,6 +141,7 @@ CLEANFILES = \ auto/helptext.c auto/default-font.c: Makefile.am scripts/bin2h.sh scripts/build-font.sh $(fonts) @@ -15,15 +23,15 @@ Index: schismtracker-20120105/Makefile.am sh $(srcdir)/scripts/build-font.sh $(srcdir) $(fonts) >$@ auto/helptext.c: Makefile.am scripts/genhelp.py $(helptexts) $(PYTHON) $(srcdir)/scripts/genhelp.py $(srcdir) $(helptexts) >$@ -Index: schismtracker-20120105/configure.ac +Index: schismtracker-20170910/configure.ac =================================================================== ---- schismtracker-20120105.orig/configure.ac -+++ schismtracker-20120105/configure.ac -@@ -42,6 +42,7 @@ AC_PROG_CPP +--- schismtracker-20170910.orig/configure.ac ++++ schismtracker-20170910/configure.ac +@@ -39,6 +39,7 @@ AC_PROG_CPP AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_CC_C99 +AC_PROG_MKDIR_P - dnl Windows poop - AC_CHECK_TOOL([WINDRES], [windres]) + dnl do we have Git + AC_CHECK_TOOL([GIT], [git]) diff --git a/schism-nodate.diff b/schism-nodate.diff index a6f49c5..553bc56 100644 --- a/schism-nodate.diff +++ b/schism-nodate.diff @@ -8,15 +8,15 @@ encoded happens to be the current day. That is ok, since rpmlint uses just a heuristic - excessive rebuilds should not actually be happening. --- - schism/version.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) + schism/version.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) -Index: schismtracker/schism/version.c +Index: schismtracker-20170910/schism/version.c =================================================================== ---- schismtracker.orig/schism/version.c -+++ schismtracker/schism/version.c -@@ -100,6 +100,10 @@ Note: this is a hack, it'd be great to h - Fortunately, most of this should be able to be optimized down to static assignment. +--- schismtracker-20170910.orig/schism/version.c ++++ schismtracker-20170910/schism/version.c +@@ -90,6 +90,10 @@ Information at our disposal: + */ +/* update whenever you checkout */ @@ -25,22 +25,24 @@ Index: schismtracker/schism/version.c + static int get_version_tm(struct tm *version) { - char *ret; -@@ -119,7 +123,7 @@ static int get_version_tm(struct tm *ver - return 1; - /* Argh. */ - memset(version, 0, sizeof(*version)); -- ret = strptime(__DATE__, "%b %e %Y", version); -+ ret = strptime(__HG_DATE__, "%b %e %Y", version); - if (ret && !*ret) - return 1; - /* Give up; we don't know anything. */ -@@ -152,7 +156,7 @@ void ver_init(void) - #endif - snprintf(top_banner_normal, sizeof(top_banner_normal) - 1, - "Schism Tracker %s built %s %s", -- ver, __DATE__, __TIME__); -+ ver, __HG_DATE__, __HG_TIME__); - top_banner_normal[sizeof(top_banner_normal) - 1] = '\0'; /* to be sure */ + char *ret; +@@ -99,10 +103,6 @@ static int get_version_tm(struct tm *ver + if (ret && !*ret) + return 1; + /* Argh. */ +- memset(version, 0, sizeof(*version)); +- ret = strptime(__DATE__, "%b %e %Y", version); +- if (ret && !*ret) +- return 1; + /* Give up; we don't know anything. */ + return 0; } +@@ -131,7 +131,7 @@ void ver_init(void) + "Schism Tracker %s", ver); + } else { + snprintf(top_banner_normal, sizeof(top_banner_normal) - 1, +- "Schism Tracker built %s %s", __DATE__, __TIME__); ++ "Schism Tracker"); + } + top_banner_normal[sizeof(top_banner_normal) - 1] = '\0'; /* to be sure */ diff --git a/schismtracker-20150409.tar.xz b/schismtracker-20150409.tar.xz deleted file mode 100644 index f5d0a77..0000000 --- a/schismtracker-20150409.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:efed838263fc8ba584512691b0bedcd8c1df345c5a4833581e2650580c793adf -size 798776 diff --git a/schismtracker.changes b/schismtracker.changes index 25817ea..4013c3d 100644 --- a/schismtracker.changes +++ b/schismtracker.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Wed Feb 7 19:06:51 UTC 2018 - jengelh@inai.de + +- Update to new upstream release 20170910 + * Make MIDI note entry reliable + * Stop restricting instrument in MIDI note entry based on MIDI + channel (this was nonsense) + * Fix note off events in MIDI output + * Improve S3M AdLib emulation + * Allow navigating the Load Instrument screen by holding up or + down, just like on the Load Sample and Load Module screens + * Support ADPCM samples in MOD files + * Detect Cheesetracker and old OpenMPT modules + ------------------------------------------------------------------- Thu Apr 9 19:01:35 UTC 2015 - jengelh@inai.de diff --git a/schismtracker.spec b/schismtracker.spec index 49b7d4a..9fcae04 100644 --- a/schismtracker.spec +++ b/schismtracker.spec @@ -1,7 +1,7 @@ # # spec file for package schismtracker # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 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 @@ -17,16 +17,15 @@ Name: schismtracker -Version: 20150409 +Version: 20170910 Release: 0 Url: http://schismtracker.org/ -Summary: Music editor that aims to match the look and feel of Impulse Tracker +Summary: Music editor that matches the look and feel of Impulse Tracker License: GPL-2.0+ Group: Productivity/Multimedia/Sound/Editors and Convertors -#Hg-Clone: http://schismtracker.org/hg/ -#Snapshot: 2914:3fa3836ff27c -Source: %name-%version.tar.xz +#Git-Clone: https://github.com/schismtracker/schismtracker +Source: https://github.com/schismtracker/schismtracker/archive/20170910.tar.gz Source2: %name.desktop Patch1: schism-alsa.diff Patch2: schism-nodate.diff @@ -36,24 +35,23 @@ BuildRequires: SDL-devel >= 1.2.10 BuildRequires: alsa-devel BuildRequires: autoconf BuildRequires: automake -BuildRequires: freeglut-devel BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: python >= 2.4 BuildRequires: update-desktop-files BuildRequires: xorg-x11-devel -BuildRequires: xz +BuildRequires: pkgconfig(freeglut) %description -Schism Tracker is a free reimplementation of Impulse Tracker, a -program used to create high quality music without the requirements of +Schism Tracker is a reimplementation of Impulse Tracker, a +program used to create music without the requirements of specialized, expensive equipment, and with a unique "finger feel" that is difficult to replicate in-part. The player is based on a -highly modified version of the Modplug engine, with a number of +modified version of the Modplug engine, with a number of bugfixes and changes to improve IT playback. %prep -%setup -qn hg +%setup -q %patch -P 1 -P 2 -P 3 -p1 %build @@ -75,7 +73,7 @@ install -Dm 0644 icons/schism-icon.svg \ %files %defattr(-,root,root) -%doc AUTHORS COPYING NEWS README +%doc AUTHORS COPYING NEWS README.md %_bindir/schismtracker %_datadir/icons/hicolor %_datadir/applications/%name.desktop