summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO44
-rw-r--r--.gitignore17
-rw-r--r--010-fix-format-safety.patch15
-rw-r--r--020-fix-no-copy-dt-needed.patch22
-rw-r--r--035-remove-unused-ui-network-server-StatusJob-struct.patch19
-rw-r--r--040-desktop-fixes.patch (renamed from desktop-fixes.patch)9
-rw-r--r--050-only-include-glib.h.patch38
-rw-r--r--060-fix-libm-linking.patch14
-rw-r--r--PKGBUILD127
-rw-r--r--fix-xml.patch57
10 files changed, 259 insertions, 103 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 676d019479dd..1169ef1de0a3 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,23 +1,37 @@
pkgbase = monkey-bubble
pkgdesc = A Puzzle Bobble clone for one or two players
- pkgver = 0.4.0
- pkgrel = 3
- url = http://www.happypenguin.org/show?Monkey%20Bubble
+ pkgver = 0.4.0.r989.g3f15c50
+ pkgrel = 1
+ url = https://screenshots.debian.net/package/monkey-bubble
arch = i686
arch = x86_64
license = GPL
- makedepends = gnome-doc-utils
- makedepends = perl-xml-parser
- depends = esound
- depends = gstreamer0.10
- depends = libgnomeui
+ makedepends = git
+ makedepends = gnome-common
+ depends = gconf
+ depends = gdk-pixbuf2
+ depends = glib2
+ depends = glibc
+ depends = gtk2
+ depends = hicolor-icon-theme
+ depends = libcanberra
depends = librsvg
- source = http://archive.ubuntu.com/ubuntu/pool/universe/m/monkey-bubble/monkey-bubble_0.4.0.orig.tar.gz
- source = desktop-fixes.patch
- source = fix-xml.patch
- sha256sums = eb96293a0fadbbfc3cd3ae0bbb557d9bf8a4dd8edccdd8ce1b913e8ba49a1c89
- sha256sums = 039a57e7b70f457e80cb8084e8b1c972c491b02d47ab68ab5477ee01ef8ca482
- sha256sums = 5c133152fda6446d7fd1d8b6b530056226c72b81c4aa72fe69e43939b622dd20
+ depends = libxml2
+ depends = pango
+ backup = var/games/monkey-bubble.scores
+ source = monkey-bubble::git+https://github.com/sudheesh001/monkey-bubble.git#commit=3f15c50cce35567f00d7335467ad318411eb4cfe
+ source = 010-fix-format-safety.patch
+ source = 020-fix-no-copy-dt-needed.patch
+ source = 035-remove-unused-ui-network-server-StatusJob-struct.patch
+ source = 040-desktop-fixes.patch
+ source = 050-only-include-glib.h.patch
+ source = 060-fix-libm-linking.patch
+ b2sums = SKIP
+ b2sums = f88c93e5de249eb0723d35d034e4e4b6cbe09ff5c31616504bc3855b830ce7a0f15d3f1d633b7b17b35d66bb7e22368e53452f1ef3f4791394bf70c438d65cf2
+ b2sums = bd458b7af175c555d5ff44e530575c71ee1fa6b9238665802fa50fe1bf3cdfe2079f33e923cc22d2a967858f280524f7174caf940b9b8a7940c64a84928d8f92
+ b2sums = b944ff1ee1826285f56cf50f30fad442f59debfc9e957c4bf9a4691d3559a5ce58ce9accb452e798201787186058c1920054aa2cae0b6f60d442a3b4494f2bae
+ b2sums = ecf40be671aab0db73100f72aa30ed0a54658e03588ddb5572d5115eeaea2c6fdf0a966ce011f0e866e95bcb6f9dc82311cae280b847e300f6d2a01cb1a5f98f
+ b2sums = 67764f9b3f859587b7284a56d3ee71fe4cb71a0b63e22786a0081edb2520aaa7c20061e7ba61cbb3c196a403c2429cec00618fe90c51c0273ab335dd7faf96af
+ b2sums = c5fd916fa6c362b613ba12b1f92e2774ca1b6a33e302b7a57c8bba8dc07b9b0f94ce36a8dae84485de70daa3fad0f2ceddf301e3ab008f2a492c4f425e014e6e
pkgname = monkey-bubble
-
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..e1cc0116832e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,17 @@
+# based on https://github.com/github/gitignore/blob/master/ArchLinuxPackages.gitignore
+*.tar
+*.tar.*
+*.rpm
+*.jar
+*.exe
+*.msi
+*.zip
+*.tgz
+*.log
+*.log.*
+
+*/
+*.orig
+*.bak
+*.backup
+*.kate-swp
diff --git a/010-fix-format-safety.patch b/010-fix-format-safety.patch
new file mode 100644
index 000000000000..6b36f4dd0ebe
--- /dev/null
+++ b/010-fix-format-safety.patch
@@ -0,0 +1,15 @@
+Description: Changed the code to be compilable
+Author: Sven Herzberg <herzi@gnome-de.org>
+Bug-Ubuntu: https://launchpad.net/bugs/303464
+--- monkey-bubble.orig/src/ui/ui-main.c
++++ monkey-bubble/src/ui/ui-main.c
+@@ -668,7 +668,7 @@ static void show_error_dialog (GtkWindow
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_ERROR,
+ GTK_BUTTONS_CLOSE,
+- message);
++ "%s", message ? message : "");
+
+ g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (gtk_widget_destroy), NULL);
+
+
diff --git a/020-fix-no-copy-dt-needed.patch b/020-fix-no-copy-dt-needed.patch
new file mode 100644
index 000000000000..1659b4a158a9
--- /dev/null
+++ b/020-fix-no-copy-dt-needed.patch
@@ -0,0 +1,22 @@
+Description: fix build with ld --as-needed
+ the libraries where placed before object files on the compile commandline
+ this leads to the references not being registered as needed and dropped.
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/monkey-bubble/+bug/771130
+Author: Julian Taylor <jtaylor.debian@googlemail.com>
+Index: monkey-bubble/src/net/Makefile.am
+===================================================================
+--- monkey-bubble.orig/src/net/Makefile.am 2011-07-02 19:06:24.189604281 +0200
++++ monkey-bubble/src/net/Makefile.am 2011-07-02 19:06:46.849604295 +0200
+@@ -28,10 +28,10 @@
+ monkey_srv_LDFLAGS =
+
+ monkey_srv_LDADD = \
+- $(MONKEY_SRV_LIBS) \
+ libmonkeynet.a \
+ ../monkey/libmonkey.a \
+- ../util/libmonkeyutil.a
++ ../util/libmonkeyutil.a \
++ $(MONKEY_SRV_LIBS)
+
+ $(libmonkeynet_a_OBJECTS): $(marshal_sources)
+
diff --git a/035-remove-unused-ui-network-server-StatusJob-struct.patch b/035-remove-unused-ui-network-server-StatusJob-struct.patch
new file mode 100644
index 000000000000..a99ebb06ffe9
--- /dev/null
+++ b/035-remove-unused-ui-network-server-StatusJob-struct.patch
@@ -0,0 +1,19 @@
+diff --git monkey-bubble.orig/src/ui/ui-network-server.c monkey-bubble/src/ui/ui-network-server.c
+index b5e1f18..5b11939 100644
+--- monkey-bubble.orig/src/ui/ui-network-server.c
++++ monkey-bubble/src/ui/ui-network-server.c
+@@ -204,14 +204,6 @@ ui_network_server_new (NetworkSimpleServer* server)
+ return ngl;
+ }
+
+-
+-struct StatusJob {
+- UiNetworkServer * self;
+- gchar * message;
+-} StatusJob;
+-
+-
+-
+ static void
+ number_of_players_changed(UiNetworkServer * self,
+ GtkWidget *widget)
diff --git a/desktop-fixes.patch b/040-desktop-fixes.patch
index 3ad384e30e26..f50194c8e2f2 100644
--- a/desktop-fixes.patch
+++ b/040-desktop-fixes.patch
@@ -1,16 +1,15 @@
Description: Changes needed to make .desktop file pass validation.
Author: Ilya Barygin <barygin@gmail.com>
---- monkey-bubble-0.4.0.orig/monkey-bubble.desktop.in
-+++ monkey-bubble-0.4.0/monkey-bubble.desktop.in
+--- monkey-bubble.orig/monkey-bubble.desktop.in.in
++++ monkey-bubble/monkey-bubble.desktop.in.in
@@ -1,10 +1,9 @@
[Desktop Entry]
-Encoding=UTF-8
_Name=Monkey Bubble
_Comment=Monkey Bubble Arcade Game
- Exec=monkey-bubble
--Icon=monkey-bubble-icon.png
-+Icon=monkey-bubble-icon
+ Exec=@BINDIR@monkey-bubble
+ Icon=monkey-bubble
Terminal=false
Type=Application
-Categories=GNOME;Application;Game;
diff --git a/050-only-include-glib.h.patch b/050-only-include-glib.h.patch
new file mode 100644
index 000000000000..8953b4c0932c
--- /dev/null
+++ b/050-only-include-glib.h.patch
@@ -0,0 +1,38 @@
+Index: monkey-bubble/src/net/message-handler.c
+===================================================================
+--- monkey-bubble.orig/src/net/message-handler.c 2004-12-24 12:35:30.000000000 +0100
++++ monkey-bubble/src/net/message-handler.c 2012-09-30 13:19:18.000000000 +0200
+@@ -28,7 +28,7 @@
+ #include <unistd.h>
+ #include <string.h>
+ #include <arpa/inet.h>
+-#include <glib/gthread.h>
++#include <glib.h>
+ #include <sys/time.h>
+ #include <time.h>
+
+Index: monkey-bubble/src/net/simple-server.c
+===================================================================
+--- monkey-bubble.orig/src/net/simple-server.c 2006-03-21 21:17:40.000000000 +0100
++++ monkey-bubble/src/net/simple-server.c 2012-09-30 13:19:35.000000000 +0200
+@@ -31,7 +31,6 @@
+ #include <unistd.h>
+ #include <string.h>
+ #include <arpa/inet.h>
+-#include <glib/gthread.h>
+ #include <sys/time.h>
+ #include <time.h>
+
+Index: monkey-bubble/src/ui/main.c
+===================================================================
+--- monkey-bubble.orig/src/ui/main.c 2004-12-03 08:05:59.000000000 +0100
++++ monkey-bubble/src/ui/main.c 2012-09-30 13:19:06.000000000 +0200
+@@ -14,7 +14,7 @@
+ #include <gtk/gtk.h>
+ #include <glib/gi18n.h>
+ #include <libgnome/gnome-score.h>
+-#include <glib/gthread.h>
++#include <glib.h>
+
+ #include <math.h>
+ #include <stdio.h>
diff --git a/060-fix-libm-linking.patch b/060-fix-libm-linking.patch
new file mode 100644
index 000000000000..1da9b80b6cdc
--- /dev/null
+++ b/060-fix-libm-linking.patch
@@ -0,0 +1,14 @@
+Index: monkey-bubble/src/net/Makefile.am
+===================================================================
+--- monkey-bubble.orig/src/net/Makefile.am 2013-04-07 00:15:52.798001549 -0400
++++ monkey-bubble/src/net/Makefile.am 2013-04-07 00:16:16.554000555 -0400
+@@ -31,7 +31,8 @@
+ libmonkeynet.a \
+ ../monkey/libmonkey.a \
+ ../util/libmonkeyutil.a \
+- $(MONKEY_SRV_LIBS)
++ $(MONKEY_SRV_LIBS) \
++ -lm
+
+ $(libmonkeynet_a_OBJECTS): $(marshal_sources)
+
diff --git a/PKGBUILD b/PKGBUILD
index 3d4268dcf161..14cdf87f60a1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,44 +1,119 @@
-
+# Maintainer: Marcell Meszaros < marcell.meszaros AT runbox.eu >
# Contributor: Anton Bazhenov <anton.bazhenov at gmail>
# Contributor: John McKnight <jmcknight@gmail.com>
pkgname=monkey-bubble
-pkgver=0.4.0
-pkgrel=3
+pkgver=0.4.0.r989.g3f15c50
+pkgrel=1
+_commit=3f15c50cce35567f00d7335467ad318411eb4cfe
+_repourl='https://github.com/sudheesh001/monkey-bubble'
pkgdesc="A Puzzle Bobble clone for one or two players"
arch=('i686' 'x86_64')
-url="http://www.happypenguin.org/show?Monkey%20Bubble"
+url='https://screenshots.debian.net/package/monkey-bubble'
license=('GPL')
-depends=('esound' 'gstreamer0.10' 'libgnomeui' 'librsvg')
-makedepends=('gnome-doc-utils' 'perl-xml-parser')
-source=("http://archive.ubuntu.com/ubuntu/pool/universe/m/$pkgname/${pkgname}_$pkgver.orig.tar.gz"
- "desktop-fixes.patch"
- "fix-xml.patch")
-sha256sums=('eb96293a0fadbbfc3cd3ae0bbb557d9bf8a4dd8edccdd8ce1b913e8ba49a1c89'
- '039a57e7b70f457e80cb8084e8b1c972c491b02d47ab68ab5477ee01ef8ca482'
- '5c133152fda6446d7fd1d8b6b530056226c72b81c4aa72fe69e43939b622dd20')
+depends=(
+ 'gconf'
+ 'gdk-pixbuf2'
+ 'glib2'
+ 'glibc'
+ 'gtk2'
+ 'hicolor-icon-theme'
+ 'libcanberra'
+ 'librsvg'
+ 'libxml2'
+ 'pango'
+# 'yelp' # Only needed if makedepends=gnome-doc-utils was used to build the help files.
+)
+makedepends=(
+ 'git'
+ 'gnome-common'
+# 'gnome-doc-utils' # Only needed to build the help files; this tool has been broken for years on AUR.
+)
+backup=('var/games/monkey-bubble.scores')
+# Patches forked from Ubuntu's redistribution of Debian packaging addons:
+# http://archive.ubuntu.com/ubuntu/pool/universe/m/monkey-bubble/
+# http://archive.ubuntu.com/ubuntu/pool/universe/m/monkey-bubble/monkey-bubble_0.4.0-0ubuntu12.debian.tar.gz
+source=(
+ "${pkgname}::git+${_repourl}.git#commit=${_commit}"
+ '010-fix-format-safety.patch'
+ '020-fix-no-copy-dt-needed.patch'
+# '030-unused-variables.patch' # Debian's patch doesn't fully apply to github/sudheesh001/monkey-bubble master
+ '035-remove-unused-ui-network-server-StatusJob-struct.patch'
+ '040-desktop-fixes.patch'
+ '050-only-include-glib.h.patch'
+ '060-fix-libm-linking.patch'
+)
+b2sums=('SKIP'
+ 'f88c93e5de249eb0723d35d034e4e4b6cbe09ff5c31616504bc3855b830ce7a0f15d3f1d633b7b17b35d66bb7e22368e53452f1ef3f4791394bf70c438d65cf2'
+ 'bd458b7af175c555d5ff44e530575c71ee1fa6b9238665802fa50fe1bf3cdfe2079f33e923cc22d2a967858f280524f7174caf940b9b8a7940c64a84928d8f92'
+ 'b944ff1ee1826285f56cf50f30fad442f59debfc9e957c4bf9a4691d3559a5ce58ce9accb452e798201787186058c1920054aa2cae0b6f60d442a3b4494f2bae'
+ 'ecf40be671aab0db73100f72aa30ed0a54658e03588ddb5572d5115eeaea2c6fdf0a966ce011f0e866e95bcb6f9dc82311cae280b847e300f6d2a01cb1a5f98f'
+ '67764f9b3f859587b7284a56d3ee71fe4cb71a0b63e22786a0081edb2520aaa7c20061e7ba61cbb3c196a403c2429cec00618fe90c51c0273ab335dd7faf96af'
+ 'c5fd916fa6c362b613ba12b1f92e2774ca1b6a33e302b7a57c8bba8dc07b9b0f94ce36a8dae84485de70daa3fad0f2ceddf301e3ab008f2a492c4f425e014e6e')
prepare() {
- cd $pkgname-$pkgver
+ cd "${pkgname}"
+
+ echo 'Reverting commit: "76be7756854e57fcfccdb2c9bc81cb41930b9ce4"...'
+ echo '(The Gtk3 port is broken with curren Gtk3 version.)'
+ (
+ cd "${_pkgbase}"
+ git revert --no-commit 76be7756854e57fcfccdb2c9bc81cb41930b9ce4
+ )
+
+ for _patchfile in ../*.patch
+ do
+ echo "[patch] Applying ${_patchfile}..."
+ patch --force --forward --strip=1 --input="../${_patchfile}"
+ done
+
+ echo "Disabling Werror: don't treat warnings as errors."
+ export CFLAGS+=" -Wno-error"
+
+ echo "Adding LDFLAGS vaues to CLFLAGS to respect LTO, relro, as-needed etc. configs."
+ export CFLAGS+=" ${LDFLAGS}"
+
+ echo 'Executing autogen.sh...'
+ ./autogen.sh
+ echo 'Finished executing autogen.sh.'
- # Apply Ubuntu patches
- patch -Np1 -i ../desktop-fixes.patch
- patch -Np1 -i ../fix-xml.patch
+ echo 'Executing autoreconf...'
+ autoreconf -vfi
+ echo 'Finished executing autoreconf.'
- # Fix compilation error
- sed "s|glib/gthread.h|glib.h|" \
- -i src/net/message-handler.c src/net/simple-server.c src/ui/main.c
+ echo 'Executing configure...'
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --sharedstatedir=/var \
+ --localstatedir=/var \
+ --disable-schemas-install
+ echo 'Finished executing configure.'
}
-build() {
- cd $pkgname-$pkgver
+pkgver() {
+ cd "${pkgname}"
+
+ # Generate git tag based version. Count only proper (v)#.#* [#=number] tags.
+ local _gitversion=$(git describe --long --tags | sed -e 's|^v||' | tr '[:upper:]' '[:lower:]')
- ./configure --prefix=/usr --sysconfdir=/etc \
- --disable-schemas-install --disable-scrollkeeper
- make LDFLAGS="-lm" \
- CFLAGS="-Wno-error=deprecated-declarations -Wno-error=unused-but-set-variable"
+ # Format git-based version for pkgver
+ # Expected pkgver format: e.g. 4.6.2.10.r2.gebcb91e08
+ echo "${_gitversion}" | sed \
+ -e 's;^\([0-9][0-9.]*\)[-_.]\([a-zA-Z]\+\);\1\2;' \
+ -e 's;\([0-9]\+-g\);r\1;' \
+ -e 's;-;.;g'
+}
+
+build() {
+ cd "${pkgname}"
+ make
}
package() {
- make -C $pkgname-$pkgver DESTDIR="$pkgdir/" install
+ make -C "${pkgname}" DESTDIR="${pkgdir}/" install
+ echo "Adjusting permissions of '/var/games/' dir to match those set by 'filesystem' package..."
+ chmod -v 775 "${pkgdir}/var/games/"
+ echo "Adjusting permissions of '/var/games/monkey-bubble.scores' file to make it writable by non-root game process..."
+ chmod -v 666 "${pkgdir}/var/games/monkey-bubble.scores"
}
diff --git a/fix-xml.patch b/fix-xml.patch
deleted file mode 100644
index 9e69f2abf01f..000000000000
--- a/fix-xml.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-Description: Add role="maintiner" attribute to <author> node - Fixes FTBFS.
- Add <abstract role="description>" node.
-Author: Barry deFreese <bddebian@comcast.net>
---- monkey-bubble-0.4.0.orig/help/fr/monkey-bubble.xml
-+++ monkey-bubble-0.4.0/help/fr/monkey-bubble.xml
-@@ -22,7 +22,7 @@
- <publishername>Projet de documentation GNOME</publishername>
- </publisher>
- <authorgroup>
-- <author>
-+ <author role="maintainer">
- <firstname>Thomas</firstname>
- <surname>Cataldo</surname>
- <affiliation>
-@@ -47,6 +47,9 @@
- <title>Votre avis</title>
- <para>Pour signaler un probl&egrave;me ou faire une suggestion concernant l'application Monkey Bubble ou le pr&eacute;sent manuel, proc&eacute;dez comme indiqu&eacute;&agrave; la <ulink url="ghelp:gnome-feedback" type="help">GNOME Feedback Page</ulink>.</para>
- </legalnotice>
-+ <abstract role="description">
-+ <para>A user manual describing the use of monkey-bubble.</para>
-+ </abstract>
- </articleinfo>
-
- <indexterm>
---- monkey-bubble-0.4.0.orig/help/C/monkey-bubble.xml
-+++ monkey-bubble-0.4.0/help/C/monkey-bubble.xml
-@@ -23,7 +23,7 @@
- <publishername>GNOME Documentation Project</publishername>
- </publisher>
- <authorgroup>
-- <author>
-+ <author role="maintainer">
- <firstname>Thomas</firstname>
- <surname>Cataldo</surname>
- <affiliation>
-@@ -40,6 +40,9 @@
- <para role="author">
- Thomas Cataldo
- </para>
-+ <para role="maintainer">
-+ Thomas Cataldo
-+ </para>
- <para role="publisher">
- GNOME Documentation Project
- </para>
-@@ -54,7 +57,10 @@
- <para> To report a bug or make a suggestion regarding the &app; application or this
- manual, follow the directions in the
- <ulink url="ghelp:gnome-feedback" type="help">GNOME Feedback Page</ulink>. </para>
-- </legalnotice>
-+ </legalnotice>
-+ <abstract role="description">
-+ <para>A user manual describing the use of monkey-bubble.</para>
-+ </abstract>
- </articleinfo>
-
- <indexterm>