mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-08 23:18:10 -05:00
AutoBuild: glibc_standalone_rebuild started at 2025-04-28-01UTC (#11839)
* Update gawk, modify glibc_standalone Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Update build for glibc... Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Disable upx. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Update binaries Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust builder to do an upgrade before a build. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Do not let the crew upgrade during build kill the build. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Add i686 binary Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Add built packages for linux/amd64 to glibc_standalone_rebuild * Add built packages for linux/arm/v7 to glibc_standalone_rebuild --------- Signed-off-by: Satadru Pramanik <satadru@gmail.com> Co-authored-by: Satadru Pramanik <satadru@gmail.com> Co-authored-by: satmandu <satmandu@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
ba6714c8c2
commit
e7bf7baf67
2
bin/crew
2
bin/crew
@@ -885,7 +885,7 @@ def prepare_package(destdir)
|
||||
strip_dir destdir
|
||||
|
||||
# use upx on executables
|
||||
shrink_dir destdir
|
||||
# shrink_dir destdir
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/usr/local/bin/gawk
|
||||
/usr/local/bin/gawk-5.3.1
|
||||
/usr/local/bin/gawk-5.3.2
|
||||
/usr/local/bin/gawkbug
|
||||
/usr/local/etc/profile.d/gawk.csh
|
||||
/usr/local/etc/profile.d/gawk.sh
|
||||
@@ -78,6 +78,7 @@
|
||||
/usr/local/share/locale/ro/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/sr/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/sv/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/tr/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/uk/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/vi/LC_MESSAGES/gawk.mo
|
||||
/usr/local/share/locale/zh_CN/LC_MESSAGES/gawk.mo
|
||||
|
||||
@@ -801,6 +801,7 @@
|
||||
/usr/local/opt/glibc-libs/libthread_db.so.1
|
||||
/usr/local/opt/glibc-libs/libutil.a
|
||||
/usr/local/opt/glibc-libs/libutil.so.1
|
||||
/usr/local/opt/glibc-libs/locale/locale-archive
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.110-1983.gz
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.4-1968.gz
|
||||
/usr/local/share/i18n/charmaps/ARMSCII-8.gz
|
||||
|
||||
@@ -810,6 +810,7 @@
|
||||
/usr/local/opt/glibc-libs/libthread_db.so.1
|
||||
/usr/local/opt/glibc-libs/libutil.a
|
||||
/usr/local/opt/glibc-libs/libutil.so.1
|
||||
/usr/local/opt/glibc-libs/locale/locale-archive
|
||||
/usr/local/opt/glibc-libs/rcrt1.o
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.110-1983.gz
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.4-1968.gz
|
||||
|
||||
@@ -811,6 +811,7 @@
|
||||
/usr/local/opt/glibc-libs/libthread_db.so.1
|
||||
/usr/local/opt/glibc-libs/libutil.a
|
||||
/usr/local/opt/glibc-libs/libutil.so.1
|
||||
/usr/local/opt/glibc-libs/locale/locale-archive
|
||||
/usr/local/opt/glibc-libs/rcrt1.o
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.110-1983.gz
|
||||
/usr/local/share/i18n/charmaps/ANSI_X3.4-1968.gz
|
||||
|
||||
@@ -3,18 +3,18 @@ require 'buildsystems/autotools'
|
||||
class Gawk < Autotools
|
||||
description 'The gawk utility interprets a special-purpose programming language that makes it possible to handle simple data-reformatting jobs with just a few lines of code.'
|
||||
homepage 'https://www.gnu.org/software/gawk/'
|
||||
version '5.3.1'
|
||||
version '5.3.2'
|
||||
license 'GPL-2'
|
||||
compatibility 'all'
|
||||
source_url "https://ftpmirror.gnu.org/gawk/gawk-#{version}.tar.xz"
|
||||
source_sha256 '694db764812a6236423d4ff40ceb7b6c4c441301b72ad502bb5c27e00cd56f78'
|
||||
source_sha256 'f8c3486509de705192138b00ef2c00bbbdd0e84c30d5c07d23fc73a9dc4cc9cc'
|
||||
binary_compression 'tar.zst'
|
||||
|
||||
binary_sha256({
|
||||
aarch64: '2fd73496950cf2482815e4fb21a0e652f0b726be8fc5f7f16009d7dd3df2faa0',
|
||||
armv7l: '2fd73496950cf2482815e4fb21a0e652f0b726be8fc5f7f16009d7dd3df2faa0',
|
||||
i686: '71d84a28ad6d27b6a8c394592130fceaab5c7d4d62643daad9963aad6a129c58',
|
||||
x86_64: '177e43ad886fca0a2701f42564d5ff084ee0efa3a3fb85319405a869641335bf'
|
||||
aarch64: '154f49e5a9b9851c0301a98d16b94d962cb1f664c59e3f7d1750539c221efc6d',
|
||||
armv7l: '154f49e5a9b9851c0301a98d16b94d962cb1f664c59e3f7d1750539c221efc6d',
|
||||
i686: 'c1e0bce5e9d858e5d16107037a031e8e6b10d26f7e5eeb45ce2c8e0873a3f72a',
|
||||
x86_64: '637fa0913219b0072b6992176489c937784de2a9a95db29f20c9807d54d18f50'
|
||||
})
|
||||
|
||||
depends_on 'glibc' # R
|
||||
@@ -24,8 +24,11 @@ class Gawk < Autotools
|
||||
depends_on 'ncurses' => :build
|
||||
depends_on 'readline' # R
|
||||
|
||||
no_shrink
|
||||
|
||||
# Tests on i686 run out of memory.
|
||||
run_tests unless ARCH == 'i686'
|
||||
# Tests appear to have container issues on other platforms.
|
||||
# run_tests unless ARCH == 'i686'
|
||||
|
||||
configure_options '--without-libsigsegv-prefix'
|
||||
|
||||
|
||||
@@ -3,18 +3,18 @@ require 'package'
|
||||
class Glibc_standalone < Package
|
||||
description 'The GNU C Library project provides the core libraries for GNU/Linux systems.'
|
||||
homepage 'https://www.gnu.org/software/libc/'
|
||||
version '2.41'
|
||||
version '2.41-1'
|
||||
license 'LGPL-2.1+, BSD, HPND, ISC, inner-net, rc, and PCRE'
|
||||
compatibility 'all'
|
||||
source_url "https://ftpmirror.gnu.org/glibc/glibc-#{version}.tar.xz"
|
||||
source_url "https://ftpmirror.gnu.org/glibc/glibc-#{version.split('-').first}.tar.xz"
|
||||
source_sha256 'a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901'
|
||||
binary_compression 'tar.zst'
|
||||
|
||||
binary_sha256({
|
||||
aarch64: '4d34f1aea3003156670485deecf5da4ff3f377de5260082edd1e27e3e8aa907e',
|
||||
armv7l: '4d34f1aea3003156670485deecf5da4ff3f377de5260082edd1e27e3e8aa907e',
|
||||
i686: '77a95bfa9bdf58c02e9534645eb45886a8bc0a0043d4ba0bbf39bd862bd63aeb',
|
||||
x86_64: '595548c1f923322526925698a4b2fec064112f78878375388fb5889583619f2f'
|
||||
aarch64: 'e19d852da8d4ead346d62003f9e5f15076ed5fae5bcd12dc9bd8f7f2602bc1b2',
|
||||
armv7l: 'e19d852da8d4ead346d62003f9e5f15076ed5fae5bcd12dc9bd8f7f2602bc1b2',
|
||||
i686: '5b3a5e7256520a0435604b53f93a743d58ea07bea950fe3ee5f371c296f640f1',
|
||||
x86_64: '44220b48699ab3fb677d16c0b5172fac151c47edfa48015f170633a5a1dd18ed'
|
||||
})
|
||||
|
||||
depends_on 'gawk' => :build
|
||||
@@ -60,6 +60,110 @@ class Glibc_standalone < Package
|
||||
|
||||
system 'filefix'
|
||||
system 'patch', '-p1', '-i', 'hardcode-library-path.patch'
|
||||
|
||||
# See https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/refs/heads/release-R136-16238.B/sys-libs/glibc/files/local/glibc-2.39/0009-Revert-Add-GLIBC_ABI_DT_RELR-for-DT_RELR-support.patch?pli=1%2F
|
||||
File.write '0009-Revert-Add-GLIBC_ABI_DT_RELR-for-DT_RELR-support.patch', <<~GLIBC_ABI_DT_RELR_PATCH_EOF
|
||||
diff --git a/elf/dl-version.c b/elf/dl-version.c
|
||||
index 8966d612cc79..7fb5cb16d47b 100644
|
||||
--- a/elf/dl-version.c
|
||||
+++ b/elf/dl-version.c
|
||||
@@ -359,30 +359,6 @@ _dl_check_map_versions (struct link_map *map, int verbose, int trace_mode)
|
||||
\t}
|
||||
}
|
||||
|
||||
- /* When there is a DT_VERNEED entry with libc.so on DT_NEEDED, issue
|
||||
- an error if there is a DT_RELR entry without GLIBC_ABI_DT_RELR
|
||||
- dependency. */
|
||||
- if (dyn != NULL
|
||||
- && map->l_info[DT_NEEDED] != NULL
|
||||
- && map->l_info[DT_RELR] != NULL
|
||||
- && __glibc_unlikely (!map->l_dt_relr_ref))
|
||||
- {
|
||||
- const char *strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]);
|
||||
- const ElfW(Dyn) *d;
|
||||
- for (d = map->l_ld; d->d_tag != DT_NULL; ++d)
|
||||
-\tif (d->d_tag == DT_NEEDED)
|
||||
-\t {
|
||||
-\t const char *name = strtab + d->d_un.d_val;
|
||||
-\t if (strncmp (name, "libc.so.", 8) == 0)
|
||||
-\t {
|
||||
-\t\t_dl_exception_create
|
||||
-\t\t (&exception, DSO_FILENAME (map->l_name),
|
||||
-\t\t N_("DT_RELR without GLIBC_ABI_DT_RELR dependency"));
|
||||
-\t\tgoto call_error;
|
||||
-\t }
|
||||
-\t }
|
||||
- }
|
||||
-
|
||||
return result;
|
||||
}
|
||||
|
||||
--
|
||||
2.41.0
|
||||
GLIBC_ABI_DT_RELR_PATCH_EOF
|
||||
system 'patch', '-p1', '-i', '0009-Revert-Add-GLIBC_ABI_DT_RELR-for-DT_RELR-support.patch'
|
||||
|
||||
# See https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/refs/heads/release-R136-16238.B/sys-libs/glibc/files/local/glibc-2.39/0002-libc-Speed-up-large-memcpy-on-Cortex-A7-A15.patch
|
||||
File.write '0002-libc-Speed-up-large-memcpy-on-Cortex-A7-A15.patch', <<~LIBC_SPEED_UP_PATCH_EOF
|
||||
From e5b7f5d719e8fd03de363bc5bb5c28f1429e56bd Mon Sep 17 00:00:00 2001
|
||||
From: Yunlian Jiang <yunlian@google.com>
|
||||
Date: Fri, 1 Aug 2014 15:19:34 -0700
|
||||
Subject: [PATCH 2/3] libc: Speed up large memcpy() on Cortex-A7/A15
|
||||
|
||||
Details please see crbug://331427
|
||||
|
||||
Experimentally it's been found that the "unaligned" memcpy() is
|
||||
actually faster for sufficiently large memory copies. It appears that
|
||||
the changeover point is a little different for different processors,
|
||||
though. For A15 there's a lot more run-to-run variance for
|
||||
medium-sized memcpy() but the changeover appears to be at ~16K. For
|
||||
A7 (and maybe A9) the changeover seems to be a little further out.
|
||||
We think the variance in A15 memcpy() is is due to different physical
|
||||
addresses for the chunks of memory given to us by the kernel. It is
|
||||
certain that the "aligned" code works faster at 4K and less and that
|
||||
the "unaligned" code works faster with very large chunks of memory.
|
||||
Since we care most about A15 performance and the A7 performance is not
|
||||
that much worse (and actually better for SDRAM transfers), we'll pick
|
||||
the number that's best for the A15.
|
||||
Tests on snow (A15 only):
|
||||
* Large (12M) aligned copies go from ~2350 MiB/s to ~2900 MiB/s.
|
||||
* Medium (96K) aligned copies go from ~5900 MiB/s to ~6300 MiB/s.
|
||||
* Medium (16K) aligned copies seem to be better but there's a lot of
|
||||
noise (old=8151.8, 8736.6, 8168.7; new=9364.9, 9829.5, 9639.0)
|
||||
* Small (4K, 8K) algined copies are unchanged.
|
||||
For A7-only on pit:
|
||||
* Large (12M) aligned copies go from 440 MiB/s to 930 MiB/s.
|
||||
* Medium (96K) aligned copies regress from ~2650 MiB/s to ~2400 MiB/s.
|
||||
* Medium (16K) aligned copies regress from ~3000 MiB/s to ~2800 MiB/s.
|
||||
* Small (4K, 8K) aligned copies are unchanged.
|
||||
See punybench changes at
|
||||
<https://chromium-review.googlesource.com/#/c/182168/3> for how this
|
||||
was tested. For A15 changes I ran 3 times and averaged (there wasn't
|
||||
lots of variance except for 16K). For A7 changes I ran 2 times.
|
||||
[Adrian: forward-ported to glibc 2.32]
|
||||
---
|
||||
sysdeps/arm/armv7/multiarch/memcpy_impl.S | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/sysdeps/arm/armv7/multiarch/memcpy_impl.S b/sysdeps/arm/armv7/multiarch/memcpy_impl.S
|
||||
index dc701827..ac171cde 100644
|
||||
--- a/sysdeps/arm/armv7/multiarch/memcpy_impl.S
|
||||
+++ b/sysdeps/arm/armv7/multiarch/memcpy_impl.S
|
||||
@@ -327,6 +327,10 @@ ENTRY(memcpy)
|
||||
\tcmp\ttmp1, tmp2
|
||||
\tbne\t.Lcpy_notaligned
|
||||
|
||||
+\t/* Use the non-aligned code for >=16K; faster on A7/A15 (A9 too?) */
|
||||
+\tcmp\tcount, #0x4000
|
||||
+\tbge\t.Lcpy_notaligned
|
||||
+
|
||||
#ifdef USE_VFP
|
||||
\t/* Magic dust alert! Force VFP on Cortex-A9. Experiments show
|
||||
\t that the FP pipeline is much better at streaming loads and
|
||||
--
|
||||
2.49.0
|
||||
LIBC_SPEED_UP_PATCH_EOF
|
||||
system 'patch', '-p1', '-i', '0002-libc-Speed-up-large-memcpy-on-Cortex-A7-A15.patch'
|
||||
end
|
||||
|
||||
def self.build
|
||||
@@ -101,11 +205,12 @@ class Glibc_standalone < Package
|
||||
EOF
|
||||
|
||||
system build_env.transform_keys(&:to_s), '../configure', *config_opts
|
||||
system 'make', "PARALLELMFLAGS='-j #{CREW_NPROC}'"
|
||||
system "make PARALLELMFLAGS='-j #{CREW_NPROC}'"
|
||||
end
|
||||
end
|
||||
|
||||
def self.install
|
||||
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install', chdir: 'builddir'
|
||||
system "make -j1 DESTDIR=#{CREW_DEST_DIR} localedata/install-locales || make -j1 DESTDIR=#{CREW_DEST_DIR} localedata/install-locales", chdir: 'builddir'
|
||||
end
|
||||
end
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# Mapping of /output should be set in the docker run options for the
|
||||
# run-updater step of the generate job in .github/workflows/Updater.yml
|
||||
cd /output/ || exit 1
|
||||
crew update
|
||||
crew update && yes | crew upgrade || true
|
||||
git config --global --add safe.directory /output
|
||||
export CREW_AGREE_TIMEOUT_SECONDS=1
|
||||
set -x
|
||||
|
||||
Reference in New Issue
Block a user