From bc8fe9b40fdd0817bad2b7ec7664e8eeaa97e1f5 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Fri, 23 Nov 2012 20:01:58 +0000 Subject: [PATCH] busybox: change the date -k patch to be more portable Not all libcs have support for tm_gmtoff which is only available for BSD compatibility, and guarded with __USE_BSD defines, use __tm_gmtoff otherwise. Signed-off-by: Florian Fainelli SVN-Revision: 34307 --- package/busybox/patches/911-date-k-flag.patch | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/package/busybox/patches/911-date-k-flag.patch b/package/busybox/patches/911-date-k-flag.patch index c4f6db4db41a..71f2af5c9b25 100644 --- a/package/busybox/patches/911-date-k-flag.patch +++ b/package/busybox/patches/911-date-k-flag.patch @@ -1,5 +1,6 @@ ---- a/coreutils/date.c -+++ b/coreutils/date.c +diff -urN busybox-1.19.4/coreutils/date.c busybox-1.19.4.new/coreutils/date.c +--- busybox-1.19.4/coreutils/date.c 2012-02-04 20:24:55.000000000 +0100 ++++ busybox-1.19.4.new/coreutils/date.c 2012-11-23 16:48:21.945200539 +0100 @@ -123,6 +123,7 @@ //usage: IF_FEATURE_DATE_ISOFMT( //usage: "\n -D FMT Use FMT for -d TIME conversion" @@ -16,7 +17,7 @@ #if ENABLE_FEATURE_DATE_NANO # include #endif -@@ -145,8 +147,9 @@ enum { +@@ -145,8 +147,9 @@ OPT_UTC = (1 << 2), /* u */ OPT_DATE = (1 << 3), /* d */ OPT_REFERENCE = (1 << 4), /* r */ @@ -28,7 +29,7 @@ }; static void maybe_set_utc(int opt) -@@ -164,12 +167,15 @@ static const char date_longopts[] ALIGN1 +@@ -164,12 +167,15 @@ /* "universal\0" No_argument "u" */ "date\0" Required_argument "d" "reference\0" Required_argument "r" @@ -44,7 +45,7 @@ struct timespec ts; struct tm tm_time; char buf_fmt_dt2str[64]; -@@ -184,7 +190,7 @@ int date_main(int argc UNUSED_PARAM, cha +@@ -184,7 +190,7 @@ opt_complementary = "d--s:s--d" IF_FEATURE_DATE_ISOFMT(":R--I:I--R"); IF_LONG_OPTS(applet_long_options = date_longopts;) @@ -53,7 +54,7 @@ IF_FEATURE_DATE_ISOFMT("I::D:"), &date_str, &date_str, &filename IF_FEATURE_DATE_ISOFMT(, &isofmt_arg, &fmt_str2dt)); -@@ -241,6 +247,27 @@ int date_main(int argc UNUSED_PARAM, cha +@@ -241,6 +247,31 @@ if (*argv) bb_show_usage(); @@ -67,7 +68,11 @@ + settimeofday(NULL, &tz); + + memset(&tz, 0, sizeof(tz)); ++#ifdef __USE_BSD + tz.tz_minuteswest = -(tm_time.tm_gmtoff / 60); ++#else ++ tz.tz_minuteswest = -(tm_time.__tm_gmtoff / 60); ++#endif + + if (settimeofday(NULL, &tz)) + { -- 2.30.2