diff options
author | Kevin Puertas | 2020-01-01 23:40:37 +0100 |
---|---|---|
committer | Kevin Puertas | 2020-01-01 23:40:37 +0100 |
commit | b91dc72938a5170592d97faa84c6c28058c3367e (patch) | |
tree | 32b38298f32ac5357049bed8db2b9a5f6720123c | |
parent | 199a09e381f85c6de1c6c5ab002c8963efaa057d (diff) | |
download | aur-b91dc72.tar.gz |
gcc stable with patchs
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | 0001-GtkModule-Add-harfbuzz-dependency.patch | 23 | ||||
-rw-r--r-- | 0002-MessagemanCrashPatch.patch | 59 | ||||
-rw-r--r-- | PKGBUILD | 28 |
4 files changed, 105 insertions, 15 deletions
@@ -1,9 +1,7 @@ -# Generated by mksrcinfo v8 -# Sat Jun 23 01:58:24 UTC 2018 pkgbase = stepmania pkgdesc = A free dance and rhythm game (was previously sm-ssc) pkgver = 5.0.12 - pkgrel = 2 + pkgrel = 3 url = http://www.stepmania.com/ install = stepmania.install arch = i686 @@ -12,7 +10,6 @@ pkgbase = stepmania makedepends = pkgconfig makedepends = yasm makedepends = cmake - makedepends = gcc5 makedepends = git depends = gtk2 depends = libmad @@ -20,13 +17,18 @@ pkgbase = stepmania depends = glew depends = libpng depends = libvorbis + depends = harfbuzz replaces = sm-ssc source = stepmania.sh source = stepmania.install source = stepmania-5.0.12.tar.gz::https://github.com/stepmania/stepmania/archive/v5.0.12.tar.gz + source = 0001-GtkModule-Add-harfbuzz-dependency.patch + source = 0002-MessagemanCrashPatch.patch sha256sums = addfbc088b9b700330ab633d1b2786fc723d00357e4ad738dd5f92ceab33e29e sha256sums = 52badaf74204e3fe0ff626b08510a2a0cdf82fa58e7afd2f1a5149a5d26ace25 sha256sums = df79bcadd69d4ed60cf560d45386ec275181343495ffd744c3ff8f73c83d4755 + sha256sums = b383574c0c7ecabdf75aabd0bd794191aa8f981e0189748d7d58422dbdbe8dfc + sha256sums = c5a6aaae04040b67acd54876c5bc4a6f42529b8f4b41062a92e391f0d7ffa54e pkgname = stepmania diff --git a/0001-GtkModule-Add-harfbuzz-dependency.patch b/0001-GtkModule-Add-harfbuzz-dependency.patch new file mode 100644 index 000000000000..f0dcc2564ec9 --- /dev/null +++ b/0001-GtkModule-Add-harfbuzz-dependency.patch @@ -0,0 +1,23 @@ +From b12edf7121364bade0c9e0f43e99fec71ba34dc9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Martin=20Kr=C3=B6ning?= <m.kroening@hotmail.de> +Date: Fri, 13 Sep 2019 23:14:52 +0200 +Subject: [PATCH 1/1] GtkModule: Add harfbuzz dependency See + https://github.com/stepmania/stepmania/issues/1850 + +--- + src/CMakeData-gtk.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/CMakeData-gtk.cmake b/src/CMakeData-gtk.cmake +index 87946873de..a26c27e864 100644 +--- a/src/CMakeData-gtk.cmake ++++ b/src/CMakeData-gtk.cmake +@@ -43,3 +43,6 @@ list(APPEND SM_GTK_INCLUDE_DIRS + sm_add_compile_definition("GtkModule" CMAKE_POWERED) + + target_include_directories("GtkModule" PUBLIC ${SM_GTK_INCLUDE_DIRS}) ++ ++find_package(harfbuzz REQUIRED) ++target_link_libraries(GtkModule harfbuzz::harfbuzz) +-- +2.23.0 diff --git a/0002-MessagemanCrashPatch.patch b/0002-MessagemanCrashPatch.patch new file mode 100644 index 000000000000..1ea4e11d5344 --- /dev/null +++ b/0002-MessagemanCrashPatch.patch @@ -0,0 +1,59 @@ +From 3f64564dd7c62a2f3d9557c1bdb8475fd953abea Mon Sep 17 00:00:00 2001 +From: Matt McCutchen <matt@mattmccutchen.net> +Date: Fri, 10 Feb 2017 08:00:52 -0500 +Subject: [PATCH] Instantiate MESSAGEMAN first. (#1384) + +This fixes a well-formed warning, but does it break anything? + +It's not clear off hand. Having this up for discussion. + +(Matt McCutchen <matt@mattmccutchen.net>: Cherry picked from commit +a565a27da8c5278846c06585cb6e218ff8f0f1b7 with a conflict resolution. +This commit fixes a crash on startup in MessageManager::Broadcast when I +build StepMania with -DCMAKE_BUILD_TYPE=Release and g++ 6.3.1 on Fedora +25. Apparently g++ is optimizing out the "this != NULL" on the grounds +that calling a method on a null pointer has undefined behavior, so the +"m_Logging" is a null dereference.) +--- + src/MessageManager.cpp | 3 +-- + src/StepMania.cpp | 5 +++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/MessageManager.cpp b/src/MessageManager.cpp +index 671871fba2..c487973d27 100644 +--- a/src/MessageManager.cpp ++++ b/src/MessageManager.cpp +@@ -207,8 +207,7 @@ void MessageManager::Unsubscribe( IMessageSubscriber* pSubscriber, MessageID m ) + + void MessageManager::Broadcast( Message &msg ) const + { +- // GAMESTATE is created before MESSAGEMAN, and has several BroadcastOnChangePtr members, so they all broadcast when they're initialized. +- if(this != NULL && m_Logging) ++ if(m_Logging) + { + LOG->Trace("MESSAGEMAN:Broadcast: %s", msg.GetName().c_str()); + } +diff --git a/src/StepMania.cpp b/src/StepMania.cpp +index 14f3824e2f..808c808a7e 100644 +--- a/src/StepMania.cpp ++++ b/src/StepMania.cpp +@@ -1041,8 +1041,10 @@ int sm_main(int argc, char* argv[]) + // This needs PREFSMAN. + Dialog::Init(); + +- // Create game objects ++ // Set up the messaging system early to have well defined code. ++ MESSAGEMAN = new MessageManager; + ++ // Create game objects + GAMESTATE = new GameState; + + // This requires PREFSMAN, for PREFSMAN->m_bShowLoadingWindow. +@@ -1162,7 +1164,6 @@ int sm_main(int argc, char* argv[]) + SONGMAN->UpdatePopular(); + SONGMAN->UpdatePreferredSort(); + NSMAN = new NetworkSyncManager( pLoadingWindow ); +- MESSAGEMAN = new MessageManager; + STATSMAN = new StatsManager; + + // Initialize which courses are ranking courses here. @@ -1,5 +1,6 @@ # Maintainer: Hugo Osvaldo Barrera <hugo@barrera.io> -# Contributor: Nascher <kevin@nascher.org> +# Contributor: Kevin Puertas <kevinpr@jkanetwork.com> +# Contributor: Nascher <kevin@nascher.org> # Contributor: Artefact2 <artefact2@gmail.com> # Contributor: Philip Sequeira <phsequei@gmail.com> # Contributor: Lauri Niskanen <ape@ape3000.com> @@ -10,29 +11,34 @@ pkgname=stepmania pkgver=5.0.12 -pkgrel=2 +pkgrel=3 pkgdesc='A free dance and rhythm game (was previously sm-ssc)' url='http://www.stepmania.com/' license=('MIT') arch=(i686 x86_64) -depends=('gtk2' 'libmad' 'mesa' 'glew' 'libpng' 'libvorbis') +depends=('gtk2' 'libmad' 'mesa' 'glew' 'libpng' 'libvorbis' 'harfbuzz') replaces=('sm-ssc') -makedepends=('pkgconfig' 'yasm' 'cmake' 'gcc5' 'git') +makedepends=('pkgconfig' 'yasm' 'cmake' 'git') install='stepmania.install' source=(stepmania.sh stepmania.install - $pkgname-$pkgver.tar.gz::https://github.com/stepmania/stepmania/archive/v$pkgver.tar.gz) + $pkgname-$pkgver.tar.gz::https://github.com/stepmania/stepmania/archive/v$pkgver.tar.gz + 0001-GtkModule-Add-harfbuzz-dependency.patch + 0002-MessagemanCrashPatch.patch) sha256sums=('addfbc088b9b700330ab633d1b2786fc723d00357e4ad738dd5f92ceab33e29e' '52badaf74204e3fe0ff626b08510a2a0cdf82fa58e7afd2f1a5149a5d26ace25' - 'df79bcadd69d4ed60cf560d45386ec275181343495ffd744c3ff8f73c83d4755') + 'df79bcadd69d4ed60cf560d45386ec275181343495ffd744c3ff8f73c83d4755' + 'b383574c0c7ecabdf75aabd0bd794191aa8f981e0189748d7d58422dbdbe8dfc' + 'c5a6aaae04040b67acd54876c5bc4a6f42529b8f4b41062a92e391f0d7ffa54e') + +prepare() { + cd "$srcdir/$pkgname-$pkgver/" + patch --forward -p1 --input="${srcdir}/0001-GtkModule-Add-harfbuzz-dependency.patch" + patch --forward -p1 --input="${srcdir}/0002-MessagemanCrashPatch.patch" +} build() { cd "$srcdir/$pkgname-$pkgver/Build" - export CC=/usr/bin/gcc-5 - export CXX=/usr/bin/g++-5 - export CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong" - export CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong" - cmake -D WITH_SYSTEM_FFMPEG=Off -DWITH_MINIMAID=OFF .. make } |