Mailing List Archive

Problem with build process - python metadata files
Hi David

Since you are more familiar with this, perhaps you can look into it. I
think it may be related to the "obj" directory changes you made some
time back.

When I make mythtv and install, tmdb3.py is installed in
usr/share/mythtv/metadata/Movie/tmdb3.py

If I make some changes to tmdb3.py, make and install again, I get this

usr/share/mythtv/metadata/Movie/tmdb3.py [out of date file]
usr/share/mythtv/metadata/Movie/Movie/tmdb3.py [new file]

The system will run the out of date file since that is where it expects
to find tmdb3.py.

In the source directory structure is a similar thing after the make

/home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/metadata/Movie/tmdb3.py
[source file I am changing]
/home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj/metadata/Movie/Movie/tmdb3.py
[more recent copy of file]
/home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj/metadata/Movie/tmdb3.py
[out of date file]

The same problem may exist with other files.

Peter

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Problem with build process - python metadata files [ In reply to ]
On Thu, 2021-01-21 at 11:31 -0500, Peter Bennett wrote:
> Hi David
>
> Since you are more familiar with this, perhaps you can look into it.
> I think it may be related to the "obj" directory changes you made
> some time back.

This was introduced last January with the changes to rewrite python
files to explicitly use the currently installed python executable.

> When I make mythtv and install, tmdb3.py is installed in
> usr/share/mythtv/metadata/Movie/tmdb3.py
>
> If I make some changes to tmdb3.py, make and install again, I get
> this
>
> usr/share/mythtv/metadata/Movie/tmdb3.py [out of date file]
> usr/share/mythtv/metadata/Movie/Movie/tmdb3.py [new file]

The problem is with the way these rewrite rules are using a recursive
copy command. The command "cp -r foo obj/foo" works every time if the
destination doesn't exist or if "foo" is a file. However, if "foo" is a
directory the first time you run the command you create the directory
"obj/foo" and all subsequent times you create "obj/foo/foo". Exactly
what you're seeing.

I should have a fix committed soon.

David

> The system will run the out of date file since that is where it
> expects
> to find tmdb3.py.
>
> In the source directory structure is a similar thing after the make
>
> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/met
> adata/Movie/tmdb3.py
> [source file I am changing]
> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj
> /metadata/Movie/Movie/tmdb3.py
> [more recent copy of file]
> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj
> /metadata/Movie/tmdb3.py
> [out of date file]
>
> The same problem may exist with other files.
>
> Peter
>


_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Problem with build process - python metadata files [ In reply to ]
On 1/25/21 2:24 PM, David Hampton wrote:
> On Thu, 2021-01-21 at 11:31 -0500, Peter Bennett wrote:
>> Hi David
>>
>> Since you are more familiar with this, perhaps you can look into it.
>> I think it may be related to the "obj" directory changes you made
>> some time back.
> This was introduced last January with the changes to rewrite python
> files to explicitly use the currently installed python executable.
>
>> When I make mythtv and install, tmdb3.py is installed in
>> usr/share/mythtv/metadata/Movie/tmdb3.py
>>
>> If I make some changes to tmdb3.py, make and install again, I get
>> this
>>
>> usr/share/mythtv/metadata/Movie/tmdb3.py [out of date file]
>> usr/share/mythtv/metadata/Movie/Movie/tmdb3.py [new file]
> The problem is with the way these rewrite rules are using a recursive
> copy command. The command "cp -r foo obj/foo" works every time if the
> destination doesn't exist or if "foo" is a file. However, if "foo" is a
> directory the first time you run the command you create the directory
> "obj/foo" and all subsequent times you create "obj/foo/foo". Exactly
> what you're seeing.
>
> I should have a fix committed soon.
>
> David
>
>> The system will run the out of date file since that is where it
>> expects
>> to find tmdb3.py.
>>
>> In the source directory structure is a similar thing after the make
>>
>> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/met
>> adata/Movie/tmdb3.py
>> [source file I am changing]
>> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj
>> /metadata/Movie/Movie/tmdb3.py
>> [more recent copy of file]
>> /home/peter/proj/github.com/MythTV/mythtv/mythtv/programs/scripts/obj
>> /metadata/Movie/tmdb3.py
>> [out of date file]
>>
>> The same problem may exist with other files.
>>
>> Peter
>>
Thank you.

I noticed the same problem with
mythtv/programs/scripts/metadata/Television. Hopefully the fix will
address both, and any others there may be.

Peter


_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org