Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] ncurses_6.0: Improve reproducibility
@ 2017-03-31 21:28 Juro Bystricky
  2017-03-31 22:27 ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Juro Bystricky @ 2017-03-31 21:28 UTC (permalink / raw)
  To: openembedded-core; +Cc: richard.purdie

Build static libraries without the binutils "ar" -U option.
This option deliberately breaks deterministic mode.
The option seems to be a relic from 2015, intended as a workaround
for some unspecified build problems.

[YOCTO#11247]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
---
 .../ncurses/files/configure-reproducible.patch       | 20 ++++++++++++++++++++
 meta/recipes-core/ncurses/ncurses_6.0+20161126.bb    |  1 +
 2 files changed, 21 insertions(+)
 create mode 100644 meta/recipes-core/ncurses/files/configure-reproducible.patch

diff --git a/meta/recipes-core/ncurses/files/configure-reproducible.patch b/meta/recipes-core/ncurses/files/configure-reproducible.patch
new file mode 100644
index 0000000..54a8bdc
--- /dev/null
+++ b/meta/recipes-core/ncurses/files/configure-reproducible.patch
@@ -0,0 +1,20 @@
+"configure" enforces -U for ar flags, breaking deterministic builds.
+The flag was added to fix some vaguely specified "recent POSIX binutil
+build problems" in 2015. 
+
+Upstream-Status: Pending
+Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
+
+diff --git a/configure b/configure
+index 7f31208..aa80911 100755
+--- a/configure
++++ b/configure
+@@ -4428,7 +4428,7 @@ if test "${cf_cv_ar_flags+set}" = set; then
+ else
+ 
+ 	cf_cv_ar_flags=unknown
+-	for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
++	for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
+ 	do
+ 
+ 		# check if $ARFLAGS already contains this choice
diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
index e95741f..ace3108 100644
--- a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
@@ -3,6 +3,7 @@ require ncurses.inc
 SRC_URI += "file://tic-hang.patch \
             file://fix-cflags-mangle.patch \
             file://config.cache \
+            file://configure-reproducible.patch \
 "
 # commit id corresponds to the revision in package version
 SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
-- 
2.7.4



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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-03-31 21:28 [PATCH] ncurses_6.0: Improve reproducibility Juro Bystricky
@ 2017-03-31 22:27 ` Khem Raj
  2017-03-31 22:49   ` Richard Purdie
  2017-03-31 23:26   ` Andre McCurdy
  0 siblings, 2 replies; 7+ messages in thread
From: Khem Raj @ 2017-03-31 22:27 UTC (permalink / raw)
  To: Juro Bystricky, openembedded-core; +Cc: richard.purdie

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

On Fri, Mar 31, 2017 at 2:29 PM Juro Bystricky <juro.bystricky@intel.com>
wrote:

> Build static libraries without the binutils "ar" -U option.
> This option deliberately breaks deterministic mode.


While this patch is ok it would be better if we configured binutils with
enable-deterministic-archives option please file a ticket for it

>
> The option seems to be a relic from 2015, intended as a workaround
> for some unspecified build problems.
>
> [YOCTO#11247]
>
> Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
> ---
>  .../ncurses/files/configure-reproducible.patch       | 20
> ++++++++++++++++++++
>  meta/recipes-core/ncurses/ncurses_6.0+20161126.bb    |  1 +
>  2 files changed, 21 insertions(+)
>  create mode 100644
> meta/recipes-core/ncurses/files/configure-reproducible.patch
>
> diff --git a/meta/recipes-core/ncurses/files/configure-reproducible.patch
> b/meta/recipes-core/ncurses/files/configure-reproducible.patch
> new file mode 100644
> index 0000000..54a8bdc
> --- /dev/null
> +++ b/meta/recipes-core/ncurses/files/configure-reproducible.patch
> @@ -0,0 +1,20 @@
> +"configure" enforces -U for ar flags, breaking deterministic builds.
> +The flag was added to fix some vaguely specified "recent POSIX binutil
> +build problems" in 2015.
> +
> +Upstream-Status: Pending
> +Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
> +
> +diff --git a/configure b/configure
> +index 7f31208..aa80911 100755
> +--- a/configure
> ++++ b/configure
> +@@ -4428,7 +4428,7 @@ if test "${cf_cv_ar_flags+set}" = set; then
> + else
> +
> +       cf_cv_ar_flags=unknown
> +-      for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
> ++      for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
> +       do
> +
> +               # check if $ARFLAGS already contains this choice
> diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
> b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
> index e95741f..ace3108 100644
> --- a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
> +++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
> @@ -3,6 +3,7 @@ require ncurses.inc
>  SRC_URI += "file://tic-hang.patch \
>              file://fix-cflags-mangle.patch \
>              file://config.cache \
> +            file://configure-reproducible.patch \
>  "
>  # commit id corresponds to the revision in package version
>  SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 5186 bytes --]

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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-03-31 22:27 ` Khem Raj
@ 2017-03-31 22:49   ` Richard Purdie
  2017-04-01  0:42     ` Khem Raj
  2017-03-31 23:26   ` Andre McCurdy
  1 sibling, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2017-03-31 22:49 UTC (permalink / raw)
  To: Khem Raj, Juro Bystricky, openembedded-core

On Fri, 2017-03-31 at 22:27 +0000, Khem Raj wrote:
> 
> On Fri, Mar 31, 2017 at 2:29 PM Juro Bystricky <juro.bystricky@intel.
> com> wrote:
> > Build static libraries without the binutils "ar" -U option.
> > This option deliberately breaks deterministic mode.
> While this patch is ok it would be better if we configured binutils
> with enable-deterministic-archives option please file a ticket for
> it 

ncurses is specifically asking binutils to make a non-deterministic
archive here so I'm not sure that would help in this specific case.

Cheers,

Richard


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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-03-31 22:27 ` Khem Raj
  2017-03-31 22:49   ` Richard Purdie
@ 2017-03-31 23:26   ` Andre McCurdy
  1 sibling, 0 replies; 7+ messages in thread
From: Andre McCurdy @ 2017-03-31 23:26 UTC (permalink / raw)
  To: Khem Raj; +Cc: richard.purdie, OE Core mailing list

On Fri, Mar 31, 2017 at 3:27 PM, Khem Raj <raj.khem@gmail.com> wrote:
>
> On Fri, Mar 31, 2017 at 2:29 PM Juro Bystricky <juro.bystricky@intel.com>
> wrote:
>>
>> Build static libraries without the binutils "ar" -U option.
>> This option deliberately breaks deterministic mode.
>
> While this patch is ok it would be better if we configured binutils with
> enable-deterministic-archives option please file a ticket for it

We already do that:

  http://git.openembedded.org/openembedded-core/commit/?id=df0d525c02780b5a0bd7a177a249c55f41797476

>>
>> The option seems to be a relic from 2015, intended as a workaround
>> for some unspecified build problems.
>>
>> [YOCTO#11247]
>>
>> Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
>> ---
>>  .../ncurses/files/configure-reproducible.patch       | 20
>> ++++++++++++++++++++
>>  meta/recipes-core/ncurses/ncurses_6.0+20161126.bb    |  1 +
>>  2 files changed, 21 insertions(+)
>>  create mode 100644
>> meta/recipes-core/ncurses/files/configure-reproducible.patch
>>
>> diff --git a/meta/recipes-core/ncurses/files/configure-reproducible.patch
>> b/meta/recipes-core/ncurses/files/configure-reproducible.patch
>> new file mode 100644
>> index 0000000..54a8bdc
>> --- /dev/null
>> +++ b/meta/recipes-core/ncurses/files/configure-reproducible.patch
>> @@ -0,0 +1,20 @@
>> +"configure" enforces -U for ar flags, breaking deterministic builds.
>> +The flag was added to fix some vaguely specified "recent POSIX binutil
>> +build problems" in 2015.
>> +
>> +Upstream-Status: Pending
>> +Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
>> +
>> +diff --git a/configure b/configure
>> +index 7f31208..aa80911 100755
>> +--- a/configure
>> ++++ b/configure
>> +@@ -4428,7 +4428,7 @@ if test "${cf_cv_ar_flags+set}" = set; then
>> + else
>> +
>> +       cf_cv_ar_flags=unknown
>> +-      for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
>> ++      for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
>> +       do
>> +
>> +               # check if $ARFLAGS already contains this choice
>> diff --git a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
>> b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
>> index e95741f..ace3108 100644
>> --- a/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
>> +++ b/meta/recipes-core/ncurses/ncurses_6.0+20161126.bb
>> @@ -3,6 +3,7 @@ require ncurses.inc
>>  SRC_URI += "file://tic-hang.patch \
>>              file://fix-cflags-mangle.patch \
>>              file://config.cache \
>> +            file://configure-reproducible.patch \
>>  "
>>  # commit id corresponds to the revision in package version
>>  SRCREV = "3db0bd19cb50e3d9b4f2cf15b7a102fe11302068"
>> --
>> 2.7.4
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>


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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-03-31 22:49   ` Richard Purdie
@ 2017-04-01  0:42     ` Khem Raj
  2017-04-01  9:14       ` Burton, Ross
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2017-04-01  0:42 UTC (permalink / raw)
  To: Juro Bystricky, Richard Purdie, openembedded-core

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

On Fri, Mar 31, 2017 at 3:50 PM Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Fri, 2017-03-31 at 22:27 +0000, Khem Raj wrote:
> >
> > On Fri, Mar 31, 2017 at 2:29 PM Juro Bystricky <juro.bystricky@intel.
> > com> wrote:
> > > Build static libraries without the binutils "ar" -U option.
> > > This option deliberately breaks deterministic mode.
> > While this patch is ok it would be better if we configured binutils
> > with enable-deterministic-archives option please file a ticket for
> > it
>
> ncurses is specifically asking binutils to make a non-deterministic
> archive here so I'm not sure that would help in this specific case
> Cheers,


Not this case obviously but I was reminded that this should be default
option from tool gain if not specified

>
>
> Richard
>

[-- Attachment #2: Type: text/html, Size: 1535 bytes --]

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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-04-01  0:42     ` Khem Raj
@ 2017-04-01  9:14       ` Burton, Ross
  2017-04-01 15:21         ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Burton, Ross @ 2017-04-01  9:14 UTC (permalink / raw)
  To: Khem Raj; +Cc: OE-core

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

On 1 April 2017 at 01:42, Khem Raj <raj.khem@gmail.com> wrote:

> Not this case obviously but I was reminded that this should be default
> option from tool gain if not specified
>
>>
Yes, and it already is.

Ross

[-- Attachment #2: Type: text/html, Size: 689 bytes --]

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

* Re: [PATCH] ncurses_6.0: Improve reproducibility
  2017-04-01  9:14       ` Burton, Ross
@ 2017-04-01 15:21         ` Khem Raj
  0 siblings, 0 replies; 7+ messages in thread
From: Khem Raj @ 2017-04-01 15:21 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Sat, Apr 1, 2017 at 2:14 AM, Burton, Ross <ross.burton@intel.com> wrote:
>
> On 1 April 2017 at 01:42, Khem Raj <raj.khem@gmail.com> wrote:
>>
>> Not this case obviously but I was reminded that this should be default
>> option from tool gain if not specified
>
>
> Yes, and it already is.

right. Andre confirmed that yesterday so settled.


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

end of thread, other threads:[~2017-04-01 15:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-31 21:28 [PATCH] ncurses_6.0: Improve reproducibility Juro Bystricky
2017-03-31 22:27 ` Khem Raj
2017-03-31 22:49   ` Richard Purdie
2017-04-01  0:42     ` Khem Raj
2017-04-01  9:14       ` Burton, Ross
2017-04-01 15:21         ` Khem Raj
2017-03-31 23:26   ` Andre McCurdy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox