unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#41816] [PATCH 0/4] Fix busybox.
@ 2020-06-11 21:05 Danny Milosavljevic
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-11 21:05 UTC (permalink / raw)
  To: 41816; +Cc: Danny Milosavljevic

Danny Milosavljevic (4):
  gnu: busybox: Make build reproducible.
  gnu: busybox: Update to 1.31.1.
  gnu: busybox: Fix build with new glibc.
  gnu: busybox: Fix test.

 gnu/local.mk                                  |  1 +
 gnu/packages/busybox.scm                      | 14 +++-
 ...box-1.31.1-fix-build-with-glibc-2.31.patch | 68 +++++++++++++++++++
 3 files changed, 81 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible.
  2020-06-11 21:05 [bug#41816] [PATCH 0/4] Fix busybox Danny Milosavljevic
@ 2020-06-11 21:08 ` Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 2/4] gnu: busybox: Update to 1.31.1 Danny Milosavljevic
                     ` (3 more replies)
  2020-06-14 10:31 ` [bug#41816] " Efraim Flashner
  2020-06-14 10:37 ` Mathieu Othacehe
  2 siblings, 4 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-11 21:08 UTC (permalink / raw)
  To: 41816; +Cc: Danny Milosavljevic

* gnu/packages/busybox.scm (busybox)[arguments]<#:phases>[disable-timestamps]:
New phase.
---
 gnu/packages/busybox.scm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm
index e3431aa31b..0d692c6586 100644
--- a/gnu/packages/busybox.scm
+++ b/gnu/packages/busybox.scm
@@ -45,6 +45,10 @@
     (arguments
      '(#:phases
        (modify-phases %standard-phases
+         (add-before 'configure 'disable-timestamps
+           (lambda _
+             (setenv "KCONFIG_NOTIMESTAMP" "1")
+             #t))
          (add-before 'configure 'disable-taskset
            ;; This feature fails its tests in the build environment,
            ;; was default 'n' until after 1.26.2.




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 2/4] gnu: busybox: Update to 1.31.1.
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
@ 2020-06-11 21:08   ` Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 3/4] gnu: busybox: Fix build with new glibc Danny Milosavljevic
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-11 21:08 UTC (permalink / raw)
  To: 41816; +Cc: Danny Milosavljevic

* gnu/packages/busybox.scm (busybox): Update to 1.31.1.
---
 gnu/packages/busybox.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm
index 0d692c6586..61a382e854 100644
--- a/gnu/packages/busybox.scm
+++ b/gnu/packages/busybox.scm
@@ -32,7 +32,7 @@
 (define-public busybox
   (package
     (name "busybox")
-    (version "1.29.3")
+    (version "1.31.1")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -40,7 +40,7 @@
                     version ".tar.bz2"))
               (sha256
                (base32
-                "1dzg45vgy2w1xcd3p6h8d76ykhabbvk1h0lf8yb24ikrwlv8cr4p"))))
+                "1659aabzp8w4hayr4z8kcpbk2z1q2wqhw7i1yb0l72b45ykl1yfh"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 3/4] gnu: busybox: Fix build with new glibc.
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 2/4] gnu: busybox: Update to 1.31.1 Danny Milosavljevic
@ 2020-06-11 21:08   ` Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 4/4] gnu: busybox: Fix test Danny Milosavljevic
  2020-06-14 11:06   ` bug#41816: [PATCH 0/4] Fix busybox Danny Milosavljevic
  3 siblings, 0 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-11 21:08 UTC (permalink / raw)
  To: 41816; +Cc: Danny Milosavljevic

* gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/busybox.scm (busybox)[source]: Use it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/busybox.scm                      |  5 +-
 ...box-1.31.1-fix-build-with-glibc-2.31.patch | 68 +++++++++++++++++++
 3 files changed, 73 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 76d6b5deba..221e3b12e4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -805,6 +805,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/blender-2.79-newer-ffmpeg.patch		\
   %D%/packages/patches/blender-2.79-python-3.7-fix.patch	\
   %D%/packages/patches/bluez-CVE-2020-0556.patch		\
+  %D%/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch \
   %D%/packages/patches/byobu-writable-status.patch		\
   %D%/packages/patches/calibre-msgpack-compat.patch		\
   %D%/packages/patches/calibre-no-updates-dialog.patch		\
diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm
index 61a382e854..dce5ccf766 100644
--- a/gnu/packages/busybox.scm
+++ b/gnu/packages/busybox.scm
@@ -40,7 +40,10 @@
                     version ".tar.bz2"))
               (sha256
                (base32
-                "1659aabzp8w4hayr4z8kcpbk2z1q2wqhw7i1yb0l72b45ykl1yfh"))))
+                "1659aabzp8w4hayr4z8kcpbk2z1q2wqhw7i1yb0l72b45ykl1yfh"))
+              (patches
+               (search-patches
+                "busybox-1.31.1-fix-build-with-glibc-2.31.patch"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
diff --git a/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch b/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch
new file mode 100644
index 0000000000..1518df067f
--- /dev/null
+++ b/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch
@@ -0,0 +1,68 @@
+See: https://bugs.gentoo.org/708350
+Author: Patrick McLean <patrick.mclean@sony.com>
+Date: 2020-02-06 23:06:22 +0000
+diff --git a/coreutils/date.c b/coreutils/date.c
+index 3414d38ae..4ade6abb4 100644
+--- a/coreutils/date.c
++++ b/coreutils/date.c
+@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, char **argv)
+ 		time(&ts.tv_sec);
+ #endif
+ 	}
++#if !ENABLE_FEATURE_DATE_NANO
++	ts.tv_nsec = 0;
++#endif
+ 	localtime_r(&ts.tv_sec, &tm_time);
+ 
+ 	/* If date string is given, update tm_time, and maybe set date */
+@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, char **argv)
+ 		if (date_str[0] != '@')
+ 			tm_time.tm_isdst = -1;
+ 		ts.tv_sec = validate_tm_time(date_str, &tm_time);
++		ts.tv_nsec = 0;
+ 
+ 		/* if setting time, set it */
+-		if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) {
++		if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) {
+ 			bb_perror_msg("can't set date");
+ 		}
+ 	}
+diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c
+index 87cf59b3d..dc40d9155 100644
+--- a/libbb/missing_syscalls.c
++++ b/libbb/missing_syscalls.c
+@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid)
+ 	return syscall(__NR_getsid, pid);
+ }
+ 
+-int stime(const time_t *t)
+-{
+-	struct timeval tv;
+-	tv.tv_sec = *t;
+-	tv.tv_usec = 0;
+-	return settimeofday(&tv, NULL);
+-}
+-
+ int sethostname(const char *name, size_t len)
+ {
+ 	return syscall(__NR_sethostname, name, len);
+diff --git a/util-linux/rdate.c b/util-linux/rdate.c
+index 70f829e7f..878375d78 100644
+--- a/util-linux/rdate.c
++++ b/util-linux/rdate.c
+@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, char **argv)
+ 	if (!(flags & 2)) { /* no -p (-s may be present) */
+ 		if (time(NULL) == remote_time)
+ 			bb_error_msg("current time matches remote time");
+-		else
+-			if (stime(&remote_time) < 0)
++		else {
++			struct timespec ts;
++			ts.tv_sec = remote_time;
++			ts.tv_nsec = 0;
++			if (clock_settime(CLOCK_REALTIME, &ts) < 0)
+ 				bb_perror_msg_and_die("can't set time of day");
++		}
+ 	}
+ 
+ 	if (flags != 1) /* not lone -s */




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 4/4] gnu: busybox: Fix test.
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 2/4] gnu: busybox: Update to 1.31.1 Danny Milosavljevic
  2020-06-11 21:08   ` [bug#41816] [PATCH 3/4] gnu: busybox: Fix build with new glibc Danny Milosavljevic
@ 2020-06-11 21:08   ` Danny Milosavljevic
  2020-06-14 11:06   ` bug#41816: [PATCH 0/4] Fix busybox Danny Milosavljevic
  3 siblings, 0 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-11 21:08 UTC (permalink / raw)
  To: 41816; +Cc: Danny Milosavljevic

* gnu/packages/busybox.scm (busybox)[arguments]<#:phases>[check]: Fix test.
---
 gnu/packages/busybox.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm
index dce5ccf766..305a61f40b 100644
--- a/gnu/packages/busybox.scm
+++ b/gnu/packages/busybox.scm
@@ -82,6 +82,9 @@
              (substitute* "testsuite/date/date-works-1"
                (("/bin/date") (which "date")))
 
+             (substitute* "testsuite/start-stop-daemon.tests"
+              (("/bin/false") (which "false")))
+
              ;; The pidof tests assume that pid 1 is called "init" but that is not
              ;; true in guix build environment
              (substitute* "testsuite/pidof.tests"




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 0/4] Fix busybox.
  2020-06-11 21:05 [bug#41816] [PATCH 0/4] Fix busybox Danny Milosavljevic
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
@ 2020-06-14 10:31 ` Efraim Flashner
  2020-06-14 10:37 ` Mathieu Othacehe
  2 siblings, 0 replies; 8+ messages in thread
From: Efraim Flashner @ 2020-06-14 10:31 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 41816

[-- Attachment #1: Type: text/plain, Size: 955 bytes --]

On Thu, Jun 11, 2020 at 11:05:40PM +0200, Danny Milosavljevic wrote:
> Danny Milosavljevic (4):
>   gnu: busybox: Make build reproducible.
>   gnu: busybox: Update to 1.31.1.
>   gnu: busybox: Fix build with new glibc.
>   gnu: busybox: Fix test.
> 
>  gnu/local.mk                                  |  1 +
>  gnu/packages/busybox.scm                      | 14 +++-
>  ...box-1.31.1-fix-build-with-glibc-2.31.patch | 68 +++++++++++++++++++
>  3 files changed, 81 insertions(+), 2 deletions(-)
>  create mode 100644 gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch

It looks like patches 2-4 should all be combined, since without patch 3
or 4 the update to 1.31.1 doesn't produce a working package at the end.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [bug#41816] [PATCH 0/4] Fix busybox.
  2020-06-11 21:05 [bug#41816] [PATCH 0/4] Fix busybox Danny Milosavljevic
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
  2020-06-14 10:31 ` [bug#41816] " Efraim Flashner
@ 2020-06-14 10:37 ` Mathieu Othacehe
  2 siblings, 0 replies; 8+ messages in thread
From: Mathieu Othacehe @ 2020-06-14 10:37 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 41816


Hello Danny,

>  gnu/local.mk                                  |  1 +
>  gnu/packages/busybox.scm                      | 14 +++-
>  ...box-1.31.1-fix-build-with-glibc-2.31.patch | 68 +++++++++++++++++++
>  3 files changed, 81 insertions(+), 2 deletions(-)
>  create mode 100644 gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch

You may want to merge patches 2-4 as Efraim noted, otherwise this looks
fine to me :)

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#41816: [PATCH 0/4] Fix busybox.
  2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
                     ` (2 preceding siblings ...)
  2020-06-11 21:08   ` [bug#41816] [PATCH 4/4] gnu: busybox: Fix test Danny Milosavljevic
@ 2020-06-14 11:06   ` Danny Milosavljevic
  3 siblings, 0 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2020-06-14 11:06 UTC (permalink / raw)
  To: 41816-done

[-- Attachment #1: Type: text/plain, Size: 129 bytes --]

Patchset squashed and merged as commits c37dc30e61c56de1815750e52186c6de5be38ee9
and 4fdf3a2e6ef0d635e79aaf912c6997d2cd978835.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-06-14 11:07 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-11 21:05 [bug#41816] [PATCH 0/4] Fix busybox Danny Milosavljevic
2020-06-11 21:08 ` [bug#41816] [PATCH 1/4] gnu: busybox: Make build reproducible Danny Milosavljevic
2020-06-11 21:08   ` [bug#41816] [PATCH 2/4] gnu: busybox: Update to 1.31.1 Danny Milosavljevic
2020-06-11 21:08   ` [bug#41816] [PATCH 3/4] gnu: busybox: Fix build with new glibc Danny Milosavljevic
2020-06-11 21:08   ` [bug#41816] [PATCH 4/4] gnu: busybox: Fix test Danny Milosavljevic
2020-06-14 11:06   ` bug#41816: [PATCH 0/4] Fix busybox Danny Milosavljevic
2020-06-14 10:31 ` [bug#41816] " Efraim Flashner
2020-06-14 10:37 ` Mathieu Othacehe

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).