From: Florian Weimer Date: Thu, 2 Jan 2020 09:18:42 +0000 (+0100) Subject: build-many-glibcs.py: Fix “glibcs i686-gnu --strip” X-Git-Tag: glibc-2.31~73 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cc47d5c5f53f6d845ac54698ae8929af15662c44;p=thirdparty%2Fglibc.git build-many-glibcs.py: Fix “glibcs i686-gnu --strip” Hurd uses an empty prefix, so the linker scripts end up in /lib, the find command picked them up, and stripping them failed because they are not ELF files. --- diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py index 398de4528a1..1bd7f24d7d0 100755 --- a/scripts/build-many-glibcs.py +++ b/scripts/build-many-glibcs.py @@ -1483,10 +1483,15 @@ class GlibcPolicyForBuild(GlibcPolicyDefault): def extra_commands(self, cmdlist): if self.strip: - cmdlist.add_command('strip', - ['sh', '-c', - ('%s $(find %s/lib* -name "*.so")' % - (self.strip, self.installdir))]) + # Avoid picking up libc.so and libpthread.so, which are + # linker scripts stored in /lib on Hurd. libc and + # libpthread are still stripped via their libc-X.YY.so + # implementation files. + find_command = (('find %s/lib* -name "*.so"' + + r' \! -name libc.so \! -name libpthread.so') + % self.installdir) + cmdlist.add_command('strip', ['sh', '-c', ('%s $(%s)' % + (self.strip, find_command))]) cmdlist.add_command('check', ['make', 'check']) cmdlist.add_command('save-logs', [self.save_logs], always_run=True)