diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-11-23 20:01:58 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-11-23 20:01:58 +0000 |
commit | 1edb432c06d0c865c328e1106ac24deade4c2ebd (patch) | |
tree | eca8a952b667536f182843f756e0f4c5e72532ff /package/busybox | |
parent | 50d34355fdffb7476892b9a60debe0c53946886d (diff) |
[package] 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 <florian@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34307 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/busybox')
-rw-r--r-- | package/busybox/patches/911-date-k-flag.patch | 17 |
1 files 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 c4f6db4db..71f2af5c9 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 <sys/syscall.h> #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)) + { |