aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2012-11-23 20:01:58 +0000
committerFlorian Fainelli <florian@openwrt.org>2012-11-23 20:01:58 +0000
commit77ef6865215b1e595b4b0debae1e77848cf029f7 (patch)
treeeca8a952b667536f182843f756e0f4c5e72532ff
parent3d41c1d1268d59038e747a01411b6d60c10028aa (diff)
downloadupstream-77ef6865215b1e595b4b0debae1e77848cf029f7.tar.gz
upstream-77ef6865215b1e595b4b0debae1e77848cf029f7.tar.bz2
upstream-77ef6865215b1e595b4b0debae1e77848cf029f7.zip
[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
-rw-r--r--package/busybox/patches/911-date-k-flag.patch17
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 c4f6db4db4..71f2af5c9b 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))
+ {