diff options
Diffstat (limited to 'main/geeqie/musl-fixes.patch')
-rw-r--r-- | main/geeqie/musl-fixes.patch | 126 |
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 + |