summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Puertas2020-01-01 23:40:37 +0100
committerKevin Puertas2020-01-01 23:40:37 +0100
commitb91dc72938a5170592d97faa84c6c28058c3367e (patch)
tree32b38298f32ac5357049bed8db2b9a5f6720123c
parent199a09e381f85c6de1c6c5ab002c8963efaa057d (diff)
downloadaur-b91dc72.tar.gz
gcc stable with patchs
-rw-r--r--.SRCINFO10
-rw-r--r--0001-GtkModule-Add-harfbuzz-dependency.patch23
-rw-r--r--0002-MessagemanCrashPatch.patch59
-rw-r--r--PKGBUILD28
4 files changed, 105 insertions, 15 deletions
diff --git a/.SRCINFO b/.SRCINFO
index aeadf3f63ea4..170d5864923a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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.
diff --git a/PKGBUILD b/PKGBUILD
index 13aef2109724..16c2b1738d8b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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
}