This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Use gen-libm-test.py to generate ulps table for manual
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Andreas Schwab <schwab at suse dot de>
- Cc: Zack Weinberg <zackw at panix dot com>, GNU C Library <libc-alpha at sourceware dot org>, <eggert at cs dot ucla dot edu>
- Date: Tue, 4 Sep 2018 14:30:37 +0000
- Subject: Re: Use gen-libm-test.py to generate ulps table for manual
- References: <alpine.DEB.2.20.1808092025590.28500@digraph.polyomino.org.uk> <alpine.DEB.2.21.1808211719240.1581@digraph.polyomino.org.uk> <mvmbm9dgzd6.fsf@suse.de> <CAKCAbMgo=+vv_cX5edqEHAf-Uo41zzaJZJpPZFwb9MuGcNbZrw@mail.gmail.com> <mvm36upgy4m.fsf@suse.de>
On Tue, 4 Sep 2018, Andreas Schwab wrote:
> On Sep 04 2018, Zack Weinberg <zackw@panix.com> wrote:
>
> > On Tue, Sep 4, 2018 at 9:34 AM Andreas Schwab <schwab@suse.de> wrote:
> >>
> >> I withdraw my objection, under the condition that the use of python is
> >> restricted to the base python language.
> >
> > Can you define "base python language" more precisely, please?
>
> Basically what is part of the openSUSE python3-base package.
Based on the description at
<https://software.opensuse.org/package/python3-base> I've updated
<https://sourceware.org/glibc/wiki/Style_and_Conventions> to say:
* Scripts used in the build of glibc (a standard {{{make}}}, possibly
regenerating files in the source tree if timestamps are out of order and
the dependencies are present in the normal makefiles) need to avoid
modules outside the Python standard library, and standard library modules
depending on external libraries (such as XML, database and UI libraries).
If a script used in the testsuite has other dependencies (e.g., the pretty
printer tests using PExpect), the relevant tests should return UNSUPPORTED
if those dependencies are not present.
* Scripts used only by glibc developers may have other dependencies (e.g.
requiring Python 3), where justified in a particular case.
Are there other cases to add of standard library modules depending on
external libraries that should be avoided? (There are external library
dependencies for data compression modules and hashlib, for example; do we
wish to exclude those, or say they are allowed?)
Paul, Carlos asked for your input. Do you wish to comment on the use of
Python in the glibc build (whether just for the manual, or more
generally)?
Do we wish to make Python a requirement for the build process, not just
for the manual (require it in configure, remove PYTHON conditionals in the
makefiles), so that we can use it to replace awk scripts required for the
build?
(My expectation is that on 1 January 2020 - or rather 1 Feburary 2020,
since 1 January is the start of a release freeze - we can cease supporting
Python 2 - that we can use the table at <https://devguide.python.org/> as
the basis of what Python versions should be supported for building glibc.
But we don't need to decide that now.)
--
Joseph S. Myers
joseph@codesourcery.com