You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Laszlo Gaal (Code Review)" <ge...@cloudera.org> on 2025/07/06 23:08:47 UTC

[native-toolchain-CR] Bump binutils to 2.42, add its dependencies

Laszlo Gaal has uploaded this change for review. ( http://gerrit.cloudera.org:8080/23130


Change subject: Bump binutils to 2.42, add its dependencies
......................................................................

Bump binutils to 2.42, add its dependencies

Bump binutils to 2.42, which is the version shipping on Ubuntu 24.04.
This also avoids linker warnings when linking to system libraries on
other recent platforms, (e.g. Ubuntu 22.04 orRHEL 9), where system
libraries contain a new property type 0xc0000002 in the .note.gnu.property
section.

Add the texinfo package for Red Hat compatible platforms (Ubuntu images
already install this image). The presence of this package is required
by the new binutils version: absence of the package breaks the binutils
build, although the package will not be used on most platforms.

Texinfo pulls in the Red Hat PowerTools repo as a dependency, so this
also patches the redhat8.df Dockerfile to point the PowerTools repo
on the already used mirror site.

On SLES 15 the default JRE needs to be reset to Java 8 JRE.
Recent package updates caused a Java 17 JRE to be installed and
configured as the default JRE as an implicit dependecy, which breaks the
assert-dependencies() check at the end of the container build, so the
default JRE is reset to Java 8 manually via update-alternatives.

Add '-std=gnu++11' to CXXFLAGS for the binutils build
binutils from 2.42 requires a C++11 compatible compiler for a correct
build because it added char_16t and char32_t types to gold. The system
GCC version for CentOS / Red Hat 7 is v4.8.5, which runs in C++89 mode
by default, so it needs this command-line flag to set the language
level For all other platforms this option is benign.

Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
---
A docker/redhat/CentOS-8.2.2004-PowerTools.repo
M docker/redhat7.df
M docker/redhat8.df
M docker/redhat9.df
M docker/sles12.df
M docker/sles15.df
M init.sh
M source/binutils/build.sh
8 files changed, 26 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/native-toolchain refs/changes/30/23130/1
-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 1
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>

[native-toolchain-CR] IMPALA-14393: Bump binutils to 2.42, add its dependencies

Posted by "Laszlo Gaal (Code Review)" <ge...@cloudera.org>.
Laszlo Gaal has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/23130 )

Change subject: IMPALA-14393: Bump binutils to 2.42, add its dependencies
......................................................................

IMPALA-14393: Bump binutils to 2.42, add its dependencies

Bump binutils to 2.42, which is the version shipping on Ubuntu 24.04.
This avoids linker warnings when linking to system libraries on other
recent platforms, (e.g. Ubuntu 22.04 or RHEL 9), where system libraries
contain a new property type 0xc0000002 in the .note.gnu.property
section.

Add the texinfo package for Red Hat compatible platforms (Ubuntu images
already install this image). The presence of this package is required
by the new binutils version: absence of the package breaks the binutils
build, although the package will not be used on most platforms, even if
it is present.

Texinfo pulls in the Red Hat PowerTools repo as a dependency, so this
also patches the redhat8.df Dockerfile to point the PowerTools repo
to the already used mirror site.

Add '-std=gnu++11' to CXXFLAGS for the binutils build on CentOS 7:
binutils starting with version 2.42 requires a C++11 compatible compiler
for a correct build, because it added char_16t and char32_t types to
the 'gold' linker. The system GCC version for CentOS / Red Hat 7 is
v4.8.5, which runs in C++89 mode by default, so it needs this command-
line flag to set the language level. The added option is benign for all
other platforms.

Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Reviewed-on: http://gerrit.cloudera.org:8080/23130
Reviewed-by: Michael Smith <mi...@cloudera.com>
Tested-by: Laszlo Gaal <la...@cloudera.com>
---
A docker/redhat/CentOS-8.2.2004-PowerTools.repo
M docker/redhat7.df
M docker/redhat8.df
M docker/redhat9.df
M docker/sles12.df
M docker/sles15.df
M init.sh
M source/binutils/build.sh
8 files changed, 22 insertions(+), 2 deletions(-)

Approvals:
  Michael Smith: Looks good to me, approved
  Laszlo Gaal: Verified

-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 5
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>

[native-toolchain-CR] IMPALA-14393: Bump binutils to 2.42, add its dependencies

Posted by "Laszlo Gaal (Code Review)" <ge...@cloudera.org>.
Hello Michael Smith, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/23130

to look at the new patch set (#4).

Change subject: IMPALA-14393: Bump binutils to 2.42, add its dependencies
......................................................................

IMPALA-14393: Bump binutils to 2.42, add its dependencies

Bump binutils to 2.42, which is the version shipping on Ubuntu 24.04.
This avoids linker warnings when linking to system libraries on other
recent platforms, (e.g. Ubuntu 22.04 or RHEL 9), where system libraries
contain a new property type 0xc0000002 in the .note.gnu.property
section.

Add the texinfo package for Red Hat compatible platforms (Ubuntu images
already install this image). The presence of this package is required
by the new binutils version: absence of the package breaks the binutils
build, although the package will not be used on most platforms, even if
it is present.

Texinfo pulls in the Red Hat PowerTools repo as a dependency, so this
also patches the redhat8.df Dockerfile to point the PowerTools repo
to the already used mirror site.

Add '-std=gnu++11' to CXXFLAGS for the binutils build on CentOS 7:
binutils starting with version 2.42 requires a C++11 compatible compiler
for a correct build, because it added char_16t and char32_t types to
the 'gold' linker. The system GCC version for CentOS / Red Hat 7 is
v4.8.5, which runs in C++89 mode by default, so it needs this command-
line flag to set the language level. The added option is benign for all
other platforms.

Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
---
A docker/redhat/CentOS-8.2.2004-PowerTools.repo
M docker/redhat7.df
M docker/redhat8.df
M docker/redhat9.df
M docker/sles12.df
M docker/sles15.df
M init.sh
M source/binutils/build.sh
8 files changed, 22 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/native-toolchain refs/changes/30/23130/4
-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 4
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>

[native-toolchain-CR] Bump binutils to 2.42, add its dependencies

Posted by "Laszlo Gaal (Code Review)" <ge...@cloudera.org>.
Hello Michael Smith, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/23130

to look at the new patch set (#3).

Change subject: Bump binutils to 2.42, add its dependencies
......................................................................

Bump binutils to 2.42, add its dependencies

Bump binutils to 2.42, which is the version shipping on Ubuntu 24.04.
This also avoids linker warnings when linking to system libraries on
other recent platforms, (e.g. Ubuntu 22.04 orRHEL 9), where system
libraries contain a new property type 0xc0000002 in the .note.gnu.property
section.

Add the texinfo package for Red Hat compatible platforms (Ubuntu images
already install this image). The presence of this package is required
by the new binutils version: absence of the package breaks the binutils
build, although the package will not be used on most platforms.

Texinfo pulls in the Red Hat PowerTools repo as a dependency, so this
also patches the redhat8.df Dockerfile to point the PowerTools repo
on the already used mirror site.

Add '-std=gnu++11' to CXXFLAGS for the binutils build
binutils from 2.42 requires a C++11 compatible compiler for a correct
build because it added char_16t and char32_t types to gold. The system
GCC version for CentOS / Red Hat 7 is v4.8.5, which runs in C++89 mode
by default, so it needs this command-line flag to set the language
level For all other platforms this option is benign.

Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
---
A docker/redhat/CentOS-8.2.2004-PowerTools.repo
M docker/redhat7.df
M docker/redhat8.df
M docker/redhat9.df
M docker/sles12.df
M docker/sles15.df
M init.sh
M source/binutils/build.sh
8 files changed, 22 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/native-toolchain refs/changes/30/23130/3
-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 3
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>

[native-toolchain-CR] IMPALA-14393: Bump binutils to 2.42, add its dependencies

Posted by "Laszlo Gaal (Code Review)" <ge...@cloudera.org>.
Laszlo Gaal has posted comments on this change. ( http://gerrit.cloudera.org:8080/23130 )

Change subject: IMPALA-14393: Bump binutils to 2.42, add its dependencies
......................................................................


Patch Set 4: Verified+1

Both container image builds, and actual toolchain builds have succeeded on private infrastructure


-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 4
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Comment-Date: Thu, 04 Sep 2025 16:36:30 +0000
Gerrit-HasComments: No

[native-toolchain-CR] IMPALA-14393: Bump binutils to 2.42, add its dependencies

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/23130 )

Change subject: IMPALA-14393: Bump binutils to 2.42, add its dependencies
......................................................................


Patch Set 4: Code-Review+2

(2 comments)

http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG@7
PS3, Line 7: IMPALA-14393: Bump binutils to 2.42, add its dependencies
> Please add a JIRA ticket.
Done


http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG@29
PS3, Line 29: v4.8.5, which runs in C++89 mode by default, so it needs this command-
> nit: need a period between "level" and "For".
Done



-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 4
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Comment-Date: Wed, 03 Sep 2025 23:26:54 +0000
Gerrit-HasComments: Yes

[native-toolchain-CR] Bump binutils to 2.42, add its dependencies

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/23130 )

Change subject: Bump binutils to 2.42, add its dependencies
......................................................................


Patch Set 3: Code-Review+1

(2 comments)

http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG@7
PS3, Line 7: Bump binutils to 2.42, add its dependencies
Please add a JIRA ticket.


http://gerrit.cloudera.org:8080/#/c/23130/3//COMMIT_MSG@29
PS3, Line 29: level For all other platforms this option is benign.
nit: need a period between "level" and "For".



-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 3
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Comment-Date: Thu, 28 Aug 2025 16:15:08 +0000
Gerrit-HasComments: Yes

[native-toolchain-CR] Bump binutils to 2.42, add its dependencies

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/23130 )

Change subject: Bump binutils to 2.42, add its dependencies
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/23130/1/source/binutils/build.sh
File source/binutils/build.sh:

http://gerrit.cloudera.org:8080/#/c/23130/1/source/binutils/build.sh@26
PS1, Line 26: export CXXFLAGS="-fPIC -O3 -std=gnu++11"
Could we move to `-std=c++17`? That's what we're using in Impala.



-- 
To view, visit http://gerrit.cloudera.org:8080/23130
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: native-toolchain
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I059a83d9fcbe48ecd48a720951e75b028d879faa
Gerrit-Change-Number: 23130
Gerrit-PatchSet: 1
Gerrit-Owner: Laszlo Gaal <la...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Comment-Date: Tue, 22 Jul 2025 18:08:25 +0000
Gerrit-HasComments: Yes