Re: [PATCH v4 1/4] pylibfdt: fix build-lib location

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Hi

On Sat, Oct 10, 2020 at 10:33 AM David Gibson
<david@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> On Fri, Oct 09, 2020 at 11:18:36AM +0400, Marc-André Lureau wrote:
> > Hi
> >
> > On Fri, Oct 9, 2020 at 5:01 AM David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> wrote:
> > >
> > > On Tue, Oct 06, 2020 at 12:27:09PM +0400, marcandre.lureau@xxxxxxxxxx wrote:
> > > > From: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx>
> > > >
> > > > setup.py build_ext is run from top_srcdir with the Makefile
> > > > build-system, due to Makefile.pylibfdt inclusion in top_srcdir/Makefile.
> > > >
> > > > --build-lib=../pylibfdt will produce output files in the parent
> > > > directory of the current directory. Ex:
> > > >
> > > > ~/src/dtc$ make && ls ../pylibfdt
> > > > _libfdt.cpython-38-x86_64-linux-gnu.so
> > >
> > > So... this doesn't happen for me
> > >
> > > $ git rev-parse HEAD
> > > cbca977ea121d7483b0c2351b17dca08a21cb1ca
> > > $ make
> > > [...]
> > > $ ls ../pylibfdt
> > > ls: cannot access '../pylibfdt': No such file or directory
> > > $ ls pylibfdt/
> > > build/  _libfdt.cpython-38-x86_64-linux-gnu.so*  libfdt.i  libfdt.py  libfdt_wrap.c  Makefile.pylibfdt  pylibfdt/  setup.py*
> > >
> > > If I apply your patch, then the module ends up in
> > > $topdir/pylibfdt/pylibfdt instead, and make check no longer runs the
> > > python tests.
> > >
> > > So.. why it's behaving incorrectly for you but not me, I don't know :/
> >
> > This is interesting, I upgraded to f33 and I no longer have the
> > issue. No idea.
>
> Oh dear, that's worrying.  It suggests it depends on the version of
> setuptools installed, and I have no idea what we'd need to do to
> ensure consistent behaviour given that.

fwiw, the rest of the patches are independent of this issue, please have a look.
thanks

>
> >
> > >
> > > > Fix it by changing the build-lib directory to $(cwd)/pylibfdt instead.
> > > >
> > > > (note that setup.py install will rebuild it with the default 'build'
> > > > directory, there doesn't seem to be a way to override that)
> > > >
> > > > Fixes: 1e4a0928f3b3b827824222572e551a60935607e3 ("pylibfdt: Don't have
> > > > setup.py depend on where it's invoked from")
> > > > Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx>
> > > > ---
> > > >  pylibfdt/Makefile.pylibfdt | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/pylibfdt/Makefile.pylibfdt b/pylibfdt/Makefile.pylibfdt
> > > > index 6866a0b..0c07224 100644
> > > > --- a/pylibfdt/Makefile.pylibfdt
> > > > +++ b/pylibfdt/Makefile.pylibfdt
> > > > @@ -18,7 +18,7 @@ endif
> > > >
> > > >  $(PYMODULE): $(PYLIBFDT_srcs) $(LIBFDT_archive) $(SETUP) $(VERSION_FILE)
> > > >       @$(VECHO) PYMOD $@
> > > > -     $(PYTHON) $(SETUP) $(SETUPFLAGS) build_ext --build-lib=../$(PYLIBFDT_dir)
> > > > +     $(PYTHON) $(SETUP) $(SETUPFLAGS) build_ext --build-lib=$(PYLIBFDT_dir)
> > > >
> > > >  install_pylibfdt: $(PYMODULE)
> > > >       @$(VECHO) INSTALL-PYLIB
> > >
> >
>
> --
> David Gibson                    | I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
>                                 | _way_ _around_!
> http://www.ozlabs.org/~dgibson





[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux