giggle: fix cross, crash
This commit is contained in:
parent
14d60df169
commit
e5e0627338
7 changed files with 254 additions and 39 deletions
|
@ -0,0 +1,31 @@
|
|||
From c4963107ee97b6bf045b805ed3b8f9f824c62ccb Mon Sep 17 00:00:00 2001
|
||||
From: Guilhem Bonnefille <guilhem.bonnefille@gmail.com>
|
||||
Date: Thu, 4 Apr 2013 14:47:19 +0100
|
||||
Subject: [PATCH] Fix #628184 - Giggle does not display diff for files that
|
||||
have spaces in names
|
||||
|
||||
Git diff is compliant to GNU patch expected format:
|
||||
when a filename contains a SP a TAB is added.
|
||||
See Git's commit 1a9eb3b9d50367bee8fe85022684d812816fe531
|
||||
|
||||
Signed-off-by: Guilhem Bonnefille <guilhem.bonnefille@gmail.com>
|
||||
---
|
||||
src/giggle-diff-view.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git src/giggle-diff-view.c src/giggle-diff-view.c
|
||||
index ff6bbe3..2fbb8eb 100644
|
||||
--- src/giggle-diff-view.c
|
||||
+++ src/giggle-diff-view.c
|
||||
@@ -665,6 +665,11 @@ diff_view_parse_patch (GiggleDiffView *view)
|
||||
}
|
||||
} else if (g_str_has_prefix (line, "--- a/") || g_str_has_prefix (line, "+++ b/")) {
|
||||
g_free (filename); filename = g_strdup (line + 6);
|
||||
+ if (strchr(filename, ' ')) {
|
||||
+ /* Remove trailing TAB added by git for GNU patch compatibility */
|
||||
+ size_t len = strlen (filename);
|
||||
+ filename[len-1] = '\0';
|
||||
+ }
|
||||
}
|
||||
|
||||
g_free (line);
|
|
@ -0,0 +1,55 @@
|
|||
From 44490f7f78c3281c8fc4f38aa7226fc5955720a9 Mon Sep 17 00:00:00 2001
|
||||
From: Dominique Leuenberger <dimstar@opensuse.org>
|
||||
Date: Wed, 3 Apr 2013 22:26:17 +0200
|
||||
Subject: [PATCH] include gtksource.h instead of gtksourceview.h
|
||||
|
||||
The main header of gtksourceview is now called gtksource.h
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=697220
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
src/giggle-diff-view.h | 3 +--
|
||||
src/giggle-view-file.c | 3 +--
|
||||
3 files changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git configure.ac configure.ac
|
||||
index a7011f8..3e47b48 100644
|
||||
--- configure.ac
|
||||
+++ configure.ac
|
||||
@@ -54,7 +54,7 @@ dnl ------------------
|
||||
GLIB_REQUIRED_VERSION=2.30
|
||||
GDK_PIXBUF_REQUIRED_VERSION=2.22
|
||||
GTK_REQUIRED_VERSION=3.3.12
|
||||
-GTKSOURCE_REQUIRED_VERSION=3.0
|
||||
+GTKSOURCE_REQUIRED_VERSION=3.8
|
||||
EDS_REQUIRED_VERSION=3.2
|
||||
VTE_REQUIRED_VERSION=0.28
|
||||
|
||||
diff --git src/giggle-diff-view.h src/giggle-diff-view.h
|
||||
index 74fb983..28266e3 100644
|
||||
--- src/giggle-diff-view.h
|
||||
+++ src/giggle-diff-view.h
|
||||
@@ -21,8 +21,7 @@
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <gtk/gtk.h>
|
||||
-#include <gtksourceview/gtksourceview.h>
|
||||
-#include <gtksourceview/gtksourcelanguagemanager.h>
|
||||
+#include <gtksourceview/gtksource.h>
|
||||
|
||||
#include "libgiggle/giggle-revision.h"
|
||||
|
||||
diff --git src/giggle-view-file.c src/giggle-view-file.c
|
||||
index 130af4a..94c6c76 100644
|
||||
--- src/giggle-view-file.c
|
||||
+++ src/giggle-view-file.c
|
||||
@@ -38,8 +38,7 @@
|
||||
#include <gio/gio.h>
|
||||
#include <glib/gi18n.h>
|
||||
|
||||
-#include <gtksourceview/gtksourcelanguagemanager.h>
|
||||
-#include <gtksourceview/gtksourceview.h>
|
||||
+#include <gtksourceview/gtksource.h>
|
||||
|
||||
#define GIGGLE_TYPE_VIEW_FILE_SNAPSHOT (giggle_view_file_snapshot_get_type ())
|
||||
#define GIGGLE_VIEW_FILE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIGGLE_TYPE_VIEW_FILE_SNAPSHOT, GiggleViewFileSnapshot))
|
54
srcpkgs/giggle/patches/0004-Port-to-vte-2.91-API.patch
Normal file
54
srcpkgs/giggle/patches/0004-Port-to-vte-2.91-API.patch
Normal file
|
@ -0,0 +1,54 @@
|
|||
From b9e260840d03e33ac55142719f3d54129b54cc70 Mon Sep 17 00:00:00 2001
|
||||
From: Debarshi Ray <debarshir@gnome.org>
|
||||
Date: Mon, 26 Jan 2015 15:38:24 +0100
|
||||
Subject: [PATCH] Port to vte-2.91 API
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=743537
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
plugins/giggle-view-terminal.c | 19 ++++++++++---------
|
||||
2 files changed, 11 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git configure.ac configure.ac
|
||||
index 6e27733..72e7bd1 100644
|
||||
--- configure.ac
|
||||
+++ configure.ac
|
||||
@@ -106,7 +106,7 @@ AC_ARG_ENABLE([terminal],
|
||||
AS_IF([test "x$enable_terminal" = "xyes"],
|
||||
[
|
||||
PKG_CHECK_MODULES([VTE],
|
||||
- [vte-2.90 >= $VTE_REQUIRED_VERSION],
|
||||
+ [vte-2.91 >= $VTE_REQUIRED_VERSION],
|
||||
[have_vte=yes
|
||||
AC_DEFINE([HAVE_VTE], [1],
|
||||
[Use features from vte])
|
||||
diff --git plugins/giggle-view-terminal.c plugins/giggle-view-terminal.c
|
||||
index 06a9a50..cd107f2 100644
|
||||
--- plugins/giggle-view-terminal.c
|
||||
+++ plugins/giggle-view-terminal.c
|
||||
@@ -186,15 +186,16 @@ giggle_view_terminal_append_tab (GiggleViewTerminal *view,
|
||||
real_argv[1] = NULL;
|
||||
spawn_flags = G_SPAWN_CHILD_INHERITS_STDIN | G_SPAWN_SEARCH_PATH | G_SPAWN_FILE_AND_ARGV_ZERO;
|
||||
|
||||
- succes = vte_terminal_fork_command_full (VTE_TERMINAL (terminal),
|
||||
- pty_flags,
|
||||
- directory,
|
||||
- real_argv,
|
||||
- NULL,
|
||||
- spawn_flags,
|
||||
- NULL, NULL,
|
||||
- NULL,
|
||||
- &error);
|
||||
+ succes = vte_terminal_spawn_sync (VTE_TERMINAL (terminal),
|
||||
+ pty_flags,
|
||||
+ directory,
|
||||
+ real_argv,
|
||||
+ NULL,
|
||||
+ spawn_flags,
|
||||
+ NULL, NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ &error);
|
||||
g_strfreev (real_argv);
|
||||
|
||||
if (succes == FALSE) {
|
|
@ -0,0 +1,45 @@
|
|||
From 18c9fafc9437ee62ecf2572d93a63817ab05b9df Mon Sep 17 00:00:00 2001
|
||||
From: Georgios Floros <gfloros@openmailbox.org>
|
||||
Date: Thu, 12 Nov 2015 22:24:48 +0200
|
||||
Subject: [PATCH] Fixed bug of GUI not remembering settings
|
||||
|
||||
Actually the command "git repo-config" is obsolete.
|
||||
This patch replaces "git repo-config" with "git config".
|
||||
---
|
||||
libgiggle-git/giggle-git-config-read.c | 2 +-
|
||||
libgiggle-git/giggle-git-config-write.c | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git libgiggle-git/giggle-git-config-read.c libgiggle-git/giggle-git-config-read.c
|
||||
index 7b4fdb9..7f24e1d 100644
|
||||
--- libgiggle-git/giggle-git-config-read.c
|
||||
+++ libgiggle-git/giggle-git-config-read.c
|
||||
@@ -120,7 +120,7 @@ static gboolean
|
||||
git_config_read_get_command_line (GiggleJob *job,
|
||||
gchar **command_line)
|
||||
{
|
||||
- *command_line = g_strdup_printf (GIT_COMMAND " repo-config --list");
|
||||
+ *command_line = g_strdup_printf (GIT_COMMAND " config --list");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
diff --git libgiggle-git/giggle-git-config-write.c libgiggle-git/giggle-git-config-write.c
|
||||
index e026e4f..7fd2b07 100644
|
||||
--- libgiggle-git/giggle-git-config-write.c
|
||||
+++ libgiggle-git/giggle-git-config-write.c
|
||||
@@ -184,13 +184,13 @@ git_config_write_get_command_line (GiggleJob *job,
|
||||
if (priv->value) {
|
||||
value = g_shell_quote (priv->value);
|
||||
|
||||
- *command_line = g_strdup_printf (GIT_COMMAND " repo-config %s %s %s",
|
||||
+ *command_line = g_strdup_printf (GIT_COMMAND " config %s %s %s",
|
||||
priv->global ? "--global" : "",
|
||||
priv->field, value);
|
||||
|
||||
g_free (value);
|
||||
} else {
|
||||
- *command_line = g_strdup_printf (GIT_COMMAND " repo-config %s --unset %s",
|
||||
+ *command_line = g_strdup_printf (GIT_COMMAND " config %s --unset %s",
|
||||
priv->global ? "--global" : "", priv->field);
|
||||
}
|
||||
|
60
srcpkgs/giggle/patches/cross.patch
Normal file
60
srcpkgs/giggle/patches/cross.patch
Normal file
|
@ -0,0 +1,60 @@
|
|||
diff --git configure.ac configure.ac
|
||||
index a7011f8..1ab7a52 100644
|
||||
--- configure.ac
|
||||
+++ configure.ac
|
||||
@@ -125,30 +125,6 @@ dnl ----------------------
|
||||
|
||||
AC_DEFINE(_GNU_SOURCE, 1, [Enable GNU Extensions])
|
||||
|
||||
-dnl Make sure that strptime can be used (read: has gnu extensions)
|
||||
-AC_MSG_CHECKING([for GNU extensions of strptime()])
|
||||
-AC_RUN_IFELSE(
|
||||
- [AC_LANG_PROGRAM(
|
||||
- [[#include <time.h>]],
|
||||
- [[const char* date = "1168635922 +0100"; struct tm tm;
|
||||
- char const* returned = strptime(date, "%s %z", &tm);
|
||||
- return (!returned || *returned ? 1 : 0);]])],
|
||||
- [AC_MSG_RESULT(available)
|
||||
- AC_DEFINE([STRPTIME_HAS_GNU], [1],
|
||||
- [strptime() has GNU extensions %s and %z])],
|
||||
- [AC_MSG_RESULT(not available)])
|
||||
-
|
||||
-dnl Figure out which format string to use for time_t
|
||||
-AC_MSG_CHECKING([size of time_t type])
|
||||
-AC_RUN_IFELSE(
|
||||
- [AC_LANG_PROGRAM(
|
||||
- [[#include <time.h>]],
|
||||
- [[return (sizeof (time_t) == sizeof (long) ? 0 : 1);]])],
|
||||
- [AC_MSG_RESULT(long)
|
||||
- AC_DEFINE([GIGGLE_FORMAT_TIME_T], ["ld"], [format string for time_t])],
|
||||
- [AC_MSG_RESULT(int)
|
||||
- AC_DEFINE([GIGGLE_FORMAT_TIME_T], ["d"], [format string for time_t])])
|
||||
-
|
||||
dnl ------------------
|
||||
dnl | Language Support |---------------------------------------
|
||||
dnl ------------------
|
||||
diff --git libgiggle-git/giggle-git-revisions.c libgiggle-git/giggle-git-revisions.c
|
||||
--- libgiggle-git/giggle-git-revisions.c
|
||||
+++ libgiggle-git/giggle-git-revisions.c
|
||||
@@ -130,7 +130,7 @@ git_revisions_get_command_line (GiggleJob *job,
|
||||
static struct tm *
|
||||
git_revisions_get_time (const gchar *date)
|
||||
{
|
||||
-#if STRPTIME_HAS_GNU
|
||||
+#ifdef __GLIBC__
|
||||
const gchar *returned;
|
||||
struct tm *tm;
|
||||
|
||||
@@ -145,9 +145,11 @@ git_revisions_get_time (const gchar *date)
|
||||
return tm;
|
||||
#else
|
||||
struct tm *tm = g_new0 (struct tm, 1);
|
||||
+ gint64 ltime;
|
||||
time_t time;
|
||||
|
||||
- sscanf (date, "%" GIGGLE_FORMAT_TIME_T, &time);
|
||||
+ ltime = g_ascii_strtoull(date, NULL, 10);
|
||||
+ time = ltime;
|
||||
localtime_r (&time, tm);
|
||||
|
||||
return tm;
|
|
@ -1,36 +0,0 @@
|
|||
From 9999a7ff573b7f3320c2065e8d0eaf0fea32a41b Mon Sep 17 00:00:00 2001
|
||||
From: Dominique Leuenberger <dimstar@opensuse.org>
|
||||
Date: Wed, 03 Apr 2013 20:26:17 +0000
|
||||
Subject: Directly include gtksourcebuffer.h
|
||||
|
||||
Until gtksourceview 3.7, it was included indirectly by gtksourceview.h.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=697220
|
||||
---
|
||||
diff --git a/src/giggle-diff-view.c b/src/giggle-diff-view.c
|
||||
index 3ded28d..ff6bbe3 100644
|
||||
--- src/giggle-diff-view.c
|
||||
+++ src/giggle-diff-view.c
|
||||
@@ -29,6 +29,8 @@
|
||||
#include <glib/gi18n.h>
|
||||
#include <string.h>
|
||||
|
||||
+#include <gtksourceview/gtksourcebuffer.h>
|
||||
+
|
||||
typedef struct GiggleDiffViewPriv GiggleDiffViewPriv;
|
||||
typedef struct GiggleDiffViewFile GiggleDiffViewFile;
|
||||
typedef struct GiggleDiffViewHunk GiggleDiffViewHunk;
|
||||
diff --git a/src/giggle-view-file.c b/src/giggle-view-file.c
|
||||
index 130af4a..517858d 100644
|
||||
--- src/giggle-view-file.c
|
||||
+++ src/giggle-view-file.c
|
||||
@@ -40,6 +40,7 @@
|
||||
|
||||
#include <gtksourceview/gtksourcelanguagemanager.h>
|
||||
#include <gtksourceview/gtksourceview.h>
|
||||
+#include <gtksourceview/gtksourcebuffer.h>
|
||||
|
||||
#define GIGGLE_TYPE_VIEW_FILE_SNAPSHOT (giggle_view_file_snapshot_get_type ())
|
||||
#define GIGGLE_VIEW_FILE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIGGLE_TYPE_VIEW_FILE_SNAPSHOT, GiggleViewFileSnapshot))
|
||||
--
|
||||
cgit v0.9.1
|
|
@ -1,9 +1,10 @@
|
|||
# Template file for 'giggle'
|
||||
pkgname=giggle
|
||||
version=0.7
|
||||
revision=1
|
||||
revision=2
|
||||
build_style=gnu-configure
|
||||
hostmakedepends="pkg-config itstool intltool glib-devel git"
|
||||
hostmakedepends="pkg-config itstool intltool glib-devel git
|
||||
automake gettext-devel libtool tar yelp-tools"
|
||||
makedepends="gtksourceview-devel vte290-devel"
|
||||
depends="desktop-file-utils hicolor-icon-theme"
|
||||
short_desc="Git repository viewer"
|
||||
|
@ -13,10 +14,15 @@ homepage="https://wiki.gnome.org/Apps/giggle"
|
|||
distfiles="${GNOME_SITE}/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
|
||||
checksum=ae2e2237fa0d0999d99d0a0ee9b7ec147e80bd2472d59a045b2b01eb02261f59
|
||||
lib32disabled=yes
|
||||
nocross=yes
|
||||
|
||||
CFLAGS="-fcommon"
|
||||
|
||||
pre_configure() {
|
||||
autoreconf -fi
|
||||
intltoolize --force
|
||||
autoreconf
|
||||
}
|
||||
|
||||
libgiggle_package() {
|
||||
short_desc+=" - runtime libraries"
|
||||
pkg_install() {
|
||||
|
|
Loading…
Reference in a new issue