Skip to content

Upgrade core dependency versions#32

Open
zwass wants to merge 20 commits intomasterfrom
upgrade-toolchain
Open

Upgrade core dependency versions#32
zwass wants to merge 20 commits intomasterfrom
upgrade-toolchain

Conversation

@zwass
Copy link
Member

@zwass zwass commented Feb 18, 2026

  • crosstool-ng 1.24.0 -> 1.28.0
  • LLVM 11.0.0 -> 18.1.8
  • GCC 8.3.0 -> 13.4.0
  • Linux 4.9.156 -> 4.9.335
  • glibc 2.23 -> 2.27 on aarch64, 2.12.2 -> 2.17 on x86_64
  • binutils 2.29.1 -> 2.33.1 on aarch64, 2.30.0 -> 2.33.1 on x86_64
  • zlib 1.2.13 -> 1.3.1

directionless
directionless previously approved these changes Feb 21, 2026
@zwass zwass marked this pull request as draft February 25, 2026 18:37
@zwass
Copy link
Member Author

zwass commented Feb 25, 2026

Will remove libelf, libbpf, and bpftool before re-requesting review.

@zwass zwass requested a review from Smjert March 5, 2026 16:26
Comment on lines +849 to +864
CT_NCURSES_EXTRA_CFLAGS="-std=gnu17"
CT_COMP_LIBS_ZLIB=y
CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB"
CT_ZLIB_DIR_NAME="zlib"
CT_ZLIB_PKG_NAME="zlib"
CT_ZLIB_SRC_RELEASE=y
# CT_ZLIB_SRC_DEVEL is not set
CT_ZLIB_PATCH_ORDER="global"
CT_ZLIB_V_1_3_1=y
# CT_ZLIB_V_1_2_13 is not set
CT_ZLIB_VERSION="1.3.1"
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to enable zlib here?

Afaik we compile zlib separately already. Sorry I don't have more guidance right now, but I'm just wondering if we shouldn't just use one or the other, instead of risking having two different versions being used.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Smjert I dug into this and I think the answer is we should have zlib in both places. Crosstool-ng does seem to require zlib. Maybe in the older version it was implicitly relying on the system zlib?

It seems like we have 2 options for crosstool-ng

  1. Use system zlib
  2. Build zlib (what this configuration sets)

crosstool-ng does not seem to install or make available this zlib beyond linking it into the generated gcc. Because of that, we also want to build zlib which is required by the LLVM linker.

When I tried removing the explicit zlib build in the script, I found that I would get linker errors later in the build process when the linker could not find the zlib library (preventing the linker from executing).

@zwass zwass force-pushed the upgrade-toolchain branch from 392d15d to a6ca620 Compare March 11, 2026 16:55
@zwass zwass requested review from Smjert and directionless March 13, 2026 02:32
@zwass zwass marked this pull request as ready for review March 13, 2026 02:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants