This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v3 19/19] Add RISC-V to build-many-glibcs.py
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Palmer Dabbelt <palmer at dabbelt dot com>
- Cc: <libc-alpha at sourceware dot org>, <patches at groups dot riscv dot org>
- Date: Mon, 1 Jan 2018 01:55:23 +0000
- Subject: Re: [PATCH v3 19/19] Add RISC-V to build-many-glibcs.py
- Authentication-results: sourceware.org; auth=none
- References: <20171227060534.3998-1-palmer@dabbelt.com> <20171227060534.3998-20-palmer@dabbelt.com>
On Tue, 26 Dec 2017, Palmer Dabbelt wrote:
> + self.add_config(arch='riscv64',
> + os_name='linux-gnu',
> + glibcs=[{'variant': 'rv64imafdc-lp64d',
> + 'ccopts': '-march=rv64imafdc -mabi=lp64d',
> + 'cfg': ['--libdir=/usr/lib64/lp64d',
> + 'libc_cv_slibdir=/lib64/lp64d',
> + 'libc_cv_rtlddir=/lib']},
You shouldn't need any of those --libdir libc_cv_slibdir libc_cv_rtlddir
settings in build-many-glibcs.py - they indicate something is missing in
the port itself. Specifically, you should have a LIBC_SLIBDIR_RTLDDIR
call in an appropriate sysdeps configure.ac file or files.
Also, the use of lib<something>/<something> subdirectories will break the
handling of --strip, which expects to be able to strip lib*/*.so and catch
all the shared libraries that way. Probably that code should change to
something like '%s $(find %s/lib* -name "*.so")' in place of the present
'%s %s/lib*/*.so', supposing that does work.
(Most RISC-V build-many-glibcs.py testing of course only needs to test
building compilers and glibc for the configurations you're adding. But
for the --strip fix you should test at least one other configuration as
well to make sure --strip continues to work in existing configurations
with e.g. lib and lib64 directories. There should be no need for any of
your build-many-glibcs.py testing to use the full set of configurations
for all architectures.)
--
Joseph S. Myers
joseph@codesourcery.com