aboutsummaryrefslogtreecommitdiffstats
path: root/main/geeqie/musl-fixes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/geeqie/musl-fixes.patch')
-rw-r--r--main/geeqie/musl-fixes.patch126
1 files changed, 126 insertions, 0 deletions
diff --git a/main/geeqie/musl-fixes.patch b/main/geeqie/musl-fixes.patch
new file mode 100644
index 0000000000..2293069e34
--- /dev/null
+++ b/main/geeqie/musl-fixes.patch
@@ -0,0 +1,126 @@
+From d09b06c05c61cc675726a440f9cc787807024bb8 Mon Sep 17 00:00:00 2001
+From: Dmitry Marakasov <>
+Date: Sat, 3 Aug 2019 12:34:42 +0100
+Subject: [PATCH] Fix #703: Fix build on non-glibc platforms
+
+https://github.com/BestImageViewer/geeqie/pull/703
+---
+ src/pan-view/pan-util.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/pan-view/pan-util.c b/src/pan-view/pan-util.c
+index 3fd5cc89..317660bb 100644
+--- a/src/pan-view/pan-util.c
++++ b/src/pan-view/pan-util.c
+@@ -82,6 +82,12 @@ gint pan_date_value(time_t d, PanDateLengthType length)
+ return -1;
+ }
+
++#if defined(__GLIBC_PREREQ)
++# if __GLIBC_PREREQ(2, 27)
++# define HAS_GLIBC_STRFTIME_EXTENSIONS
++# endif
++#endif
++
+ gchar *pan_date_value_string(time_t d, PanDateLengthType length)
+ {
+ struct tm td;
+@@ -99,7 +105,7 @@ gchar *pan_date_value_string(time_t d, PanDateLengthType length)
+ format = "%A %e";
+ break;
+ case PAN_DATE_LENGTH_MONTH:
+-#if __GLIBC_PREREQ(2, 27)
++#if defined(HAS_GLIBC_STRFTIME_EXTENSIONS) || defined(__FreeBSD__)
+ format = "%OB %Y";
+ #else
+ format = "%B %Y";
+--
+2.11.0
+
+From 7176df818593263a57996c729f933f21b7228afc Mon Sep 17 00:00:00 2001
+From: Colin Clark <colin.clark@cclark.uk>
+Date: Sat, 3 Aug 2019 12:25:16 +0100
+Subject: [PATCH] Fix #683: Build fails on macOS due to use of
+ _NL_TIME_FIRST_WEEKDAY
+
+https://github.com/BestImageViewer/geeqie/issues/683
+---
+ configure.ac | 15 +++++++++++++++
+ src/misc.c | 22 +++++++++++++++++++++-
+ 2 files changed, 36 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index f376d074..65df946c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -656,6 +656,21 @@ AC_SUBST(DJVU_LIBS)
+
+ AM_CONDITIONAL(HAVE_MARKDOWN, [ "$(command -v markdown)" ])
+
++# _NL_TIME_FIRST_WEEKDAY support
++# note that it is an enum and not a define
++# ----------------------------------------------------------------------
++
++AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
++AC_TRY_LINK([#include <langinfo.h>], [
++char c;
++c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
++], nl_ok=yes, nl_ok=no)
++AC_MSG_RESULT($nl_ok)
++if test "$nl_ok" = "yes"; then
++ AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
++ [Define if _NL_TIME_FIRST_WEEKDAY is available])
++fi
++
+ # ----------------------------------------------------------------------
+
+ AH_TOP([
+diff --git a/src/misc.c b/src/misc.c
+index d780795d..85c87658 100644
+--- a/src/misc.c
++++ b/src/misc.c
+@@ -23,6 +23,7 @@
+ #include "ui_fileops.h"
+
+ #include <langinfo.h>
++#include <locale.h>
+
+ gdouble get_zoom_increment(void)
+ {
+@@ -243,13 +244,32 @@ int runcmd(gchar *cmd)
+ * @brief Returns integer representing first_day_of_week
+ * @returns Integer in range 1 to 7
+ *
+- * Uses current locale to get first day of week
++ * Uses current locale to get first day of week.
++ * If _NL_TIME_FIRST_WEEKDAY is not available, ISO 8601
++ * states first day of week is Monday.
++ * USA, Mexico and Canada (and others) use Sunday as first day of week.
+ *
+ * Sunday == 1
+ */
+ gint date_get_first_day_of_week()
+ {
++ gchar *dot;
++ gchar *current_locale;
++
++#ifdef HAVE__NL_TIME_FIRST_WEEKDAY
+ return nl_langinfo(_NL_TIME_FIRST_WEEKDAY)[0];
++#else
++ current_locale = setlocale(LC_ALL, NULL);
++ dot = strstr(current_locale, ".");
++ if ((strncmp(dot - 2, "US", 2) == 0) || (strncmp(dot - 2, "MX", 2) == 0) || (strncmp(dot - 2, "CA", 2) == 0))
++ {
++ return 1;
++ }
++ else
++ {
++ return 2;
++ }
++#endif
+ }
+
+ /**
+--
+2.11.0
+